diff options
author | mingchen | 2007-08-15 19:08:27 +0000 |
---|---|---|
committer | mingchen | 2007-08-15 19:08:27 +0000 |
commit | ae20503dae765b850d6acf6e30220b9688f30cac (patch) | |
tree | e1bb93fc5cc6b85ca7756687a9033c5cb8a7f862 /OpenSim | |
parent | More work on inventory, can now create other inventory types, like Clothes an... (diff) | |
download | opensim-SC-ae20503dae765b850d6acf6e30220b9688f30cac.zip opensim-SC-ae20503dae765b850d6acf6e30220b9688f30cac.tar.gz opensim-SC-ae20503dae765b850d6acf6e30220b9688f30cac.tar.bz2 opensim-SC-ae20503dae765b850d6acf6e30220b9688f30cac.tar.xz |
*Added the ability to run commands after all regions have started up
*By default, it is set to startup_commands.txt. Simply add a list of commands separated by a new line to be run or change the file by changing the path of a startup commands file in OpenSim.ini
Diffstat (limited to 'OpenSim')
-rw-r--r-- | OpenSim/Framework/Console/LogBase.cs | 10 | ||||
-rw-r--r-- | OpenSim/Region/Application/OpenSimMain.cs | 31 |
2 files changed, 39 insertions, 2 deletions
diff --git a/OpenSim/Framework/Console/LogBase.cs b/OpenSim/Framework/Console/LogBase.cs index 2b831fe..5f16303 100644 --- a/OpenSim/Framework/Console/LogBase.cs +++ b/OpenSim/Framework/Console/LogBase.cs | |||
@@ -409,9 +409,15 @@ namespace OpenSim.Framework.Console | |||
409 | 409 | ||
410 | public void MainLogPrompt() | 410 | public void MainLogPrompt() |
411 | { | 411 | { |
412 | string[] tempstrarray; | 412 | |
413 | string tempstr = this.CmdPrompt(this.componentname + "# "); | 413 | string tempstr = this.CmdPrompt(this.componentname + "# "); |
414 | tempstrarray = tempstr.Split(' '); | 414 | MainLogRunCommand(tempstr); |
415 | } | ||
416 | |||
417 | public void MainLogRunCommand(string command) | ||
418 | { | ||
419 | string[] tempstrarray; | ||
420 | tempstrarray = command.Split(' '); | ||
415 | string cmd = tempstrarray[0]; | 421 | string cmd = tempstrarray[0]; |
416 | Array.Reverse(tempstrarray); | 422 | Array.Reverse(tempstrarray); |
417 | Array.Resize<string>(ref tempstrarray, tempstrarray.Length - 1); | 423 | Array.Resize<string>(ref tempstrarray, tempstrarray.Length - 1); |
diff --git a/OpenSim/Region/Application/OpenSimMain.cs b/OpenSim/Region/Application/OpenSimMain.cs index 9f95e01..2ca3f46 100644 --- a/OpenSim/Region/Application/OpenSimMain.cs +++ b/OpenSim/Region/Application/OpenSimMain.cs | |||
@@ -64,6 +64,8 @@ namespace OpenSim | |||
64 | 64 | ||
65 | protected string m_storageDLL = "OpenSim.DataStore.NullStorage.dll"; | 65 | protected string m_storageDLL = "OpenSim.DataStore.NullStorage.dll"; |
66 | 66 | ||
67 | protected string m_startupCommandsFile = ""; | ||
68 | |||
67 | protected List<UDPServer> m_udpServers = new List<UDPServer>(); | 69 | protected List<UDPServer> m_udpServers = new List<UDPServer>(); |
68 | protected List<RegionInfo> m_regionData = new List<RegionInfo>(); | 70 | protected List<RegionInfo> m_regionData = new List<RegionInfo>(); |
69 | protected List<Scene> m_localScenes = new List<Scene>(); | 71 | protected List<Scene> m_localScenes = new List<Scene>(); |
@@ -105,6 +107,8 @@ namespace OpenSim | |||
105 | 107 | ||
106 | m_storageDLL = configSource.Configs["Startup"].GetString("storage_plugin", "OpenSim.DataStore.NullStorage.dll"); | 108 | m_storageDLL = configSource.Configs["Startup"].GetString("storage_plugin", "OpenSim.DataStore.NullStorage.dll"); |
107 | 109 | ||
110 | m_startupCommandsFile = configSource.Configs["Startup"].GetString("startup_console_commands_file", ""); | ||
111 | |||
108 | standaloneAuthenticate = configSource.Configs["Startup"].GetBoolean("standalone_authenticate", false); | 112 | standaloneAuthenticate = configSource.Configs["Startup"].GetBoolean("standalone_authenticate", false); |
109 | welcomeMessage = configSource.Configs["Startup"].GetString("standalone_welcome", "Welcome to OpenSim"); | 113 | welcomeMessage = configSource.Configs["Startup"].GetString("standalone_welcome", "Welcome to OpenSim"); |
110 | } | 114 | } |
@@ -184,6 +188,33 @@ namespace OpenSim | |||
184 | { | 188 | { |
185 | this.m_udpServers[i].ServerListener(); | 189 | this.m_udpServers[i].ServerListener(); |
186 | } | 190 | } |
191 | |||
192 | //Run Startup Commands | ||
193 | if (m_startupCommandsFile != "") | ||
194 | { | ||
195 | MainLog.Instance.Verbose("Running startup command script (" + m_startupCommandsFile + ")"); | ||
196 | if (File.Exists(m_startupCommandsFile)) | ||
197 | { | ||
198 | StreamReader readFile = File.OpenText(m_startupCommandsFile); | ||
199 | string currentCommand = ""; | ||
200 | while ((currentCommand = readFile.ReadLine()) != null) | ||
201 | { | ||
202 | if (currentCommand != "") | ||
203 | { | ||
204 | MainLog.Instance.Verbose("Running '" + currentCommand + "'"); | ||
205 | MainLog.Instance.MainLogRunCommand(currentCommand); | ||
206 | } | ||
207 | } | ||
208 | } | ||
209 | else | ||
210 | { | ||
211 | MainLog.Instance.Error("Startup command script missing. Will not run startup commands"); | ||
212 | } | ||
213 | } | ||
214 | else | ||
215 | { | ||
216 | MainLog.Instance.Verbose("No startup command script specified. Moving on..."); | ||
217 | } | ||
187 | } | 218 | } |
188 | 219 | ||
189 | private static void CreateDefaultRegionInfoXml(string fileName) | 220 | private static void CreateDefaultRegionInfoXml(string fileName) |