From 5c7ffdde0b9642a42e8f5987e06eb01220ff7776 Mon Sep 17 00:00:00 2001 From: Adam Frisby Date: Wed, 11 Jul 2007 08:02:47 +0000 Subject: * Wiping trunk in prep for Sugilite --- OpenGridServices/ServiceManager/ServiceManager.cs | 259 ---------------------- 1 file changed, 259 deletions(-) delete mode 100644 OpenGridServices/ServiceManager/ServiceManager.cs (limited to 'OpenGridServices/ServiceManager/ServiceManager.cs') diff --git a/OpenGridServices/ServiceManager/ServiceManager.cs b/OpenGridServices/ServiceManager/ServiceManager.cs deleted file mode 100644 index 8cb9c80..0000000 --- a/OpenGridServices/ServiceManager/ServiceManager.cs +++ /dev/null @@ -1,259 +0,0 @@ -/* -* Copyright (c) Contributors, http://www.openmetaverse.org/ -* See CONTRIBUTORS.TXT for a full list of copyright holders. -* -* Redistribution and use in source and binary forms, with or without -* modification, are permitted provided that the following conditions are met: -* * Redistributions of source code must retain the above copyright -* notice, this list of conditions and the following disclaimer. -* * Redistributions in binary form must reproduce the above copyright -* notice, this list of conditions and the following disclaimer in the -* documentation and/or other materials provided with the distribution. -* * Neither the name of the OpenSim Project nor the -* names of its contributors may be used to endorse or promote products -* derived from this software without specific prior written permission. -* -* THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS AND ANY -* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -* DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY -* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND -* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -* -*/ -using System; -using System.Diagnostics; -using System.Threading; -using System.ServiceProcess; -using System.Xml; -using System.IO; -using libsecondlife; -using OpenSim.GenericConfig; - -public class OpenGridMasterService : System.ServiceProcess.ServiceBase { - - private Thread ServiceWorkerThread; - private static string GridURL; // URL of grid server - private static string GridSimKey; // key sent from Grid>Sim - private static string SimGridKey; // key sent Sim>Grid - private static string AssetURL; // URL of asset server - private static string UserSendKey; // key sent from user>sim - private static string UserRecvKey; // key sent from sim>user - - public OpenGridMasterService() - { - CanPauseAndContinue = false; - ServiceName = "OpenGridServices-master"; - } - - private void InitializeComponent() - { - this.CanPauseAndContinue = false; - this.CanShutdown = true; - this.ServiceName = "OpenGridServices-master"; - } - - protected override void OnStart(string[] args) - { - ServiceWorkerThread = new Thread(new ThreadStart(MainServiceThread)); - ServiceWorkerThread.Start(); - } - - protected override void OnStop() - { - ServiceWorkerThread.Abort(); - } - - private void MainServiceThread() - { - try { - StreamReader reader=new StreamReader("opengrid-master-cfg.xml"); - - string configxml = reader.ReadToEnd(); - XmlDocument doc = new XmlDocument(); - doc.LoadXml(configxml); - XmlNode rootnode = doc.FirstChild; - if (rootnode.Name != "regions") - { - EventLog.WriteEntry("ERROR! bad XML in opengrid-master-cfg.xml - expected regions tag"); - Console.WriteLine("Sorry, could not startup the service - please check your opengrid-master-cfg.xml file: missing regions tag"); - (new ServiceController("OpenGridServices-master")).Stop(); - } - - for(int i=0; i<=rootnode.ChildNodes.Count; i++) - { - if(rootnode.ChildNodes.Item(i).Name != "region") { - EventLog.WriteEntry("nonfatal error - unexpected tag inside regions block of opengrid-master-cfg.xml"); - (new ServiceController("OpenGridServices-master")).Stop(); - } - } - } catch(Exception e) { - Console.WriteLine(e.ToString()); - (new ServiceController("OpenGridServices-master")).Stop(); - } - - } - - private static string SetupGrid() - { - Console.WriteLine("Running external program (OpenGridServices.GridServer.exe) to configure the grid server"); - try { - Process p = new Process(); - - p.StartInfo.Arguments = "-setuponly"; - p.StartInfo.FileName = "OpenGridServices.GridServer.exe"; - p.Start(); - - p.StartInfo.Arguments = "-dumpxmlconf"; - p.Start(); - - XmlConfig GridConf = new XmlConfig("opengrid-cfg.xml"); - GridConf.LoadData(); - GridURL="http://" + GridConf.GetAttribute("ListenAddr") + ":" + GridConf.GetAttribute("ListenPort") + "/"; - - StreamReader reader=new StreamReader("opengrid-cfg.xml"); - string configxml = reader.ReadToEnd(); - - return configxml; - } catch(Exception e) { - Console.WriteLine("An error occurred while running the grid server, please rectify it and try again"); - Console.WriteLine(e.ToString()); - Environment.Exit(1); - } - return ""; - } - - private static string SetupUser() - { - return ""; - } - - private static string SetupAsset() - { - return ""; - } - - private static string SetupRegion() - { - string regionname; - ulong regionlocx; - ulong regionlocy; - string default_terrain; - uint terrain_multiplier; - uint baseport; - - string listenaddr; - string simconfigxml; - LLUUID SimUUID; - - Console.WriteLine("Setting up region servers"); - Console.Write("Please specify a path to store your region data (e.g /etc/opensim/regions: "); - string regionpath=Console.ReadLine(); - - Console.Write("How many regions would you like to configure now? "); - int numofregions=Convert.ToInt16(Console.ReadLine()); - - Console.Write("What port should the region servers start listening at (first region is normally 9000, then 9001 the second etc, both TCP+UDP): "); - baseport=Convert.ToUInt16(Console.ReadLine()); - - - listenaddr=Console.ReadLine(); - - Console.WriteLine("Now ready to configure regions, please answer the questions about each region in turn"); - for(int i=0; i<=numofregions; i++) { - Console.WriteLine("Configuring region number " + i.ToString()); - - Console.Write("Region name: "); - regionname=Console.ReadLine(); - - Console.Write("Region location X: "); - regionlocx=(ulong)Convert.ToUInt32(Console.ReadLine()); - - Console.Write("Region location Y: "); - regionlocy=(ulong)Convert.ToUInt32(Console.ReadLine()); - - Console.Write("Default terrain file: "); - default_terrain=Console.ReadLine(); - terrain_multiplier=Convert.ToUInt16(Console.ReadLine()); - - SimUUID=LLUUID.Random(); - - simconfigxml=""; - - } - - return ""; - } - - public static void InitSetup() - { - string choice=""; - - string GridInfo; - string UserInfo; - string AssetInfo; - string RegionInfo; - - bool grid=false; - bool user=false; - bool asset=false; - bool region=false; - while(choice!="OK") - { - Console.Clear(); - Console.WriteLine("Please select the components you would like to run on this server:\n"); - - Console.WriteLine("1 - [" + (grid ? "X" : " ") + "] Grid server - this service handles co-ordinates of regions/sims on the grid"); - Console.WriteLine("2 - [" + (user ? "X" : " ") + "] User server - this service handles user login, profiles, inventory and IM"); - Console.WriteLine("3 - [" + (asset ? "X" : " ") + "] Asset server - this service handles storage of assets such as textures, objects, sounds, scripts"); - Console.WriteLine("4 - [" + (region ? "X" : " ") + "] Region server - this is the main opensim server and can run without the above services, it handles physics simulation, terrain, building and other such features"); - - - Console.Write("Type a number to toggle a choice or type OK to accept your current choices: "); - choice = Console.ReadLine(); - switch(choice) - { - case "1": - grid = (!grid); - break; - - case "2": - user = (!user); - break; - - case "3": - asset = (!asset); - break; - - case "4": - region = (!region); - break; - } - } - - if(grid) GridInfo = SetupGrid(); - if(user) UserInfo = SetupUser(); - if(asset) AssetInfo = SetupAsset(); - if(region) RegionInfo = SetupRegion(); - } - - public static void Main() - { - if(!File.Exists("opengrid-master-cfg.xml")) - { - Console.WriteLine("Could not find a config file, running initial setup"); - InitSetup(); - } - Console.WriteLine("Starting up OGS master service"); - try { - ServiceBase.Run(new OpenGridMasterService()); - } catch(Exception e) { - Console.WriteLine("An error occured while initialising OGS master service."); - Console.WriteLine(e.ToString()); - } - } -} -- cgit v1.1