aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim
diff options
context:
space:
mode:
authorJustin Clarke Casey2009-04-15 19:12:37 +0000
committerJustin Clarke Casey2009-04-15 19:12:37 +0000
commit63936d442ca7e6bdc0f09a5e974c57b3b5726353 (patch)
treeadd84f90ce716015e93f9dae721e7876992e6b6c /OpenSim
parentConvert both script engines to new region module format. Add proper unload (diff)
downloadopensim-SC_OLD-63936d442ca7e6bdc0f09a5e974c57b3b5726353.zip
opensim-SC_OLD-63936d442ca7e6bdc0f09a5e974c57b3b5726353.tar.gz
opensim-SC_OLD-63936d442ca7e6bdc0f09a5e974c57b3b5726353.tar.bz2
opensim-SC_OLD-63936d442ca7e6bdc0f09a5e974c57b3b5726353.tar.xz
* Make it possible to add a request id to load and save oar requests
* This allows specific requests to be identified.
Diffstat (limited to '')
-rw-r--r--OpenSim/Region/CoreModules/World/Archiver/ArchiveReadRequest.cs14
-rw-r--r--OpenSim/Region/CoreModules/World/Archiver/ArchiveWriteRequestExecution.cs7
-rw-r--r--OpenSim/Region/CoreModules/World/Archiver/ArchiveWriteRequestPreparation.cs13
-rw-r--r--OpenSim/Region/CoreModules/World/Archiver/ArchiverModule.cs27
-rw-r--r--OpenSim/Region/CoreModules/World/Archiver/Tests/ArchiverTests.cs13
-rw-r--r--OpenSim/Region/Framework/Interfaces/IRegionArchiverModule.cs23
-rw-r--r--OpenSim/Region/Framework/Scenes/EventManager.cs14
-rw-r--r--OpenSim/Region/OptionalModules/Scripting/RegionReady/RegionReady.cs10
8 files changed, 83 insertions, 38 deletions
diff --git a/OpenSim/Region/CoreModules/World/Archiver/ArchiveReadRequest.cs b/OpenSim/Region/CoreModules/World/Archiver/ArchiveReadRequest.cs
index 3f6e822..1e57be0 100644
--- a/OpenSim/Region/CoreModules/World/Archiver/ArchiveReadRequest.cs
+++ b/OpenSim/Region/CoreModules/World/Archiver/ArchiveReadRequest.cs
@@ -55,6 +55,7 @@ namespace OpenSim.Region.CoreModules.World.Archiver
55 55
56 private Scene m_scene; 56 private Scene m_scene;
57 private Stream m_loadStream; 57 private Stream m_loadStream;
58 private Guid m_requestId;
58 private string m_errorMessage; 59 private string m_errorMessage;
59 60
60 /// <value> 61 /// <value>
@@ -67,19 +68,21 @@ namespace OpenSim.Region.CoreModules.World.Archiver
67 /// </summary> 68 /// </summary>
68 private IDictionary<UUID, bool> m_validUserUuids = new Dictionary<UUID, bool>(); 69 private IDictionary<UUID, bool> m_validUserUuids = new Dictionary<UUID, bool>();
69 70
70 public ArchiveReadRequest(Scene scene, string loadPath, bool merge) 71 public ArchiveReadRequest(Scene scene, string loadPath, bool merge, Guid requestId)
71 { 72 {
72 m_scene = scene; 73 m_scene = scene;
73 m_loadStream = new GZipStream(GetStream(loadPath), CompressionMode.Decompress); 74 m_loadStream = new GZipStream(GetStream(loadPath), CompressionMode.Decompress);
74 m_errorMessage = String.Empty; 75 m_errorMessage = String.Empty;
75 m_merge = merge; 76 m_merge = merge;
77 m_requestId = requestId;
76 } 78 }
77 79
78 public ArchiveReadRequest(Scene scene, Stream loadStream, bool merge) 80 public ArchiveReadRequest(Scene scene, Stream loadStream, bool merge, Guid requestId)
79 { 81 {
80 m_scene = scene; 82 m_scene = scene;
81 m_loadStream = loadStream; 83 m_loadStream = loadStream;
82 m_merge = merge; 84 m_merge = merge;
85 m_requestId = requestId;
83 } 86 }
84 87
85 /// <summary> 88 /// <summary>
@@ -141,7 +144,7 @@ namespace OpenSim.Region.CoreModules.World.Archiver
141 m_log.ErrorFormat( 144 m_log.ErrorFormat(
142 "[ARCHIVER]: Error loading oar file. Exception was: {0}", e); 145 "[ARCHIVER]: Error loading oar file. Exception was: {0}", e);
143 m_errorMessage += e.ToString(); 146 m_errorMessage += e.ToString();
144 m_scene.EventManager.TriggerOarFileLoaded(m_errorMessage); 147 m_scene.EventManager.TriggerOarFileLoaded(m_requestId, m_errorMessage);
145 return; 148 return;
146 } 149 }
147 150
@@ -163,8 +166,7 @@ namespace OpenSim.Region.CoreModules.World.Archiver
163 m_log.InfoFormat("[ARCHIVER]: Loading {0} scene objects. Please wait.", serialisedSceneObjects.Count); 166 m_log.InfoFormat("[ARCHIVER]: Loading {0} scene objects. Please wait.", serialisedSceneObjects.Count);
164 167
165 IRegionSerialiserModule serialiser = m_scene.RequestModuleInterface<IRegionSerialiserModule>(); 168 IRegionSerialiserModule serialiser = m_scene.RequestModuleInterface<IRegionSerialiserModule>();
166 int sceneObjectsLoadedCount = 0; 169 int sceneObjectsLoadedCount = 0;
167
168 170
169 foreach (string serialisedSceneObject in serialisedSceneObjects) 171 foreach (string serialisedSceneObject in serialisedSceneObjects)
170 { 172 {
@@ -247,7 +249,7 @@ namespace OpenSim.Region.CoreModules.World.Archiver
247 249
248 m_log.InfoFormat("[ARCHIVER]: Successfully loaded archive"); 250 m_log.InfoFormat("[ARCHIVER]: Successfully loaded archive");
249 251
250 m_scene.EventManager.TriggerOarFileLoaded(m_errorMessage); 252 m_scene.EventManager.TriggerOarFileLoaded(m_requestId, m_errorMessage);
251 } 253 }
252 254
253 /// <summary> 255 /// <summary>
diff --git a/OpenSim/Region/CoreModules/World/Archiver/ArchiveWriteRequestExecution.cs b/OpenSim/Region/CoreModules/World/Archiver/ArchiveWriteRequestExecution.cs
index 85391b3..943d9d1 100644
--- a/OpenSim/Region/CoreModules/World/Archiver/ArchiveWriteRequestExecution.cs
+++ b/OpenSim/Region/CoreModules/World/Archiver/ArchiveWriteRequestExecution.cs
@@ -58,19 +58,22 @@ namespace OpenSim.Region.CoreModules.World.Archiver
58 protected List<SceneObjectGroup> m_sceneObjects; 58 protected List<SceneObjectGroup> m_sceneObjects;
59 protected Scene m_scene; 59 protected Scene m_scene;
60 protected Stream m_saveStream; 60 protected Stream m_saveStream;
61 protected Guid m_requestId;
61 62
62 public ArchiveWriteRequestExecution( 63 public ArchiveWriteRequestExecution(
63 List<SceneObjectGroup> sceneObjects, 64 List<SceneObjectGroup> sceneObjects,
64 ITerrainModule terrainModule, 65 ITerrainModule terrainModule,
65 IRegionSerialiserModule serialiser, 66 IRegionSerialiserModule serialiser,
66 Scene scene, 67 Scene scene,
67 Stream saveStream) 68 Stream saveStream,
69 Guid requestId)
68 { 70 {
69 m_sceneObjects = sceneObjects; 71 m_sceneObjects = sceneObjects;
70 m_terrainModule = terrainModule; 72 m_terrainModule = terrainModule;
71 m_serialiser = serialiser; 73 m_serialiser = serialiser;
72 m_scene = scene; 74 m_scene = scene;
73 m_saveStream = saveStream; 75 m_saveStream = saveStream;
76 m_requestId = requestId;
74 } 77 }
75 78
76 protected internal void ReceivedAllAssets( 79 protected internal void ReceivedAllAssets(
@@ -140,7 +143,7 @@ namespace OpenSim.Region.CoreModules.World.Archiver
140 143
141 m_log.InfoFormat("[ARCHIVER]: Wrote out OpenSimulator archive for {0}", m_scene.RegionInfo.RegionName); 144 m_log.InfoFormat("[ARCHIVER]: Wrote out OpenSimulator archive for {0}", m_scene.RegionInfo.RegionName);
142 145
143 m_scene.EventManager.TriggerOarFileSaved(String.Empty); 146 m_scene.EventManager.TriggerOarFileSaved(m_requestId, String.Empty);
144 } 147 }
145 148
146 /// <summary> 149 /// <summary>
diff --git a/OpenSim/Region/CoreModules/World/Archiver/ArchiveWriteRequestPreparation.cs b/OpenSim/Region/CoreModules/World/Archiver/ArchiveWriteRequestPreparation.cs
index accf7e4..a6ad24c 100644
--- a/OpenSim/Region/CoreModules/World/Archiver/ArchiveWriteRequestPreparation.cs
+++ b/OpenSim/Region/CoreModules/World/Archiver/ArchiveWriteRequestPreparation.cs
@@ -50,14 +50,16 @@ namespace OpenSim.Region.CoreModules.World.Archiver
50 50
51 protected Scene m_scene; 51 protected Scene m_scene;
52 protected Stream m_saveStream; 52 protected Stream m_saveStream;
53 protected Guid m_requestId;
53 54
54 /// <summary> 55 /// <summary>
55 /// Constructor 56 /// Constructor
56 /// </summary> 57 /// </summary>
57 public ArchiveWriteRequestPreparation(Scene scene, string savePath) 58 public ArchiveWriteRequestPreparation(Scene scene, string savePath, Guid requestId)
58 { 59 {
59 m_scene = scene; 60 m_scene = scene;
60 m_saveStream = new GZipStream(new FileStream(savePath, FileMode.Create), CompressionMode.Compress); 61 m_saveStream = new GZipStream(new FileStream(savePath, FileMode.Create), CompressionMode.Compress);
62 m_requestId = requestId;
61 } 63 }
62 64
63 /// <summary> 65 /// <summary>
@@ -65,10 +67,12 @@ namespace OpenSim.Region.CoreModules.World.Archiver
65 /// </summary> 67 /// </summary>
66 /// <param name="scene"></param> 68 /// <param name="scene"></param>
67 /// <param name="saveStream">The stream to which to save data.</param> 69 /// <param name="saveStream">The stream to which to save data.</param>
68 public ArchiveWriteRequestPreparation(Scene scene, Stream saveStream) 70 /// <param name="requestId">The id associated with this request</param>
71 public ArchiveWriteRequestPreparation(Scene scene, Stream saveStream, Guid requestId)
69 { 72 {
70 m_scene = scene; 73 m_scene = scene;
71 m_saveStream = saveStream; 74 m_saveStream = saveStream;
75 m_requestId = requestId;
72 } 76 }
73 77
74 /// <summary> 78 /// <summary>
@@ -129,7 +133,8 @@ namespace OpenSim.Region.CoreModules.World.Archiver
129 m_scene.RequestModuleInterface<ITerrainModule>(), 133 m_scene.RequestModuleInterface<ITerrainModule>(),
130 m_scene.RequestModuleInterface<IRegionSerialiserModule>(), 134 m_scene.RequestModuleInterface<IRegionSerialiserModule>(),
131 m_scene, 135 m_scene,
132 m_saveStream); 136 m_saveStream,
137 m_requestId);
133 138
134 new AssetsRequest(assetUuids.Keys, m_scene.CommsManager.AssetCache, awre.ReceivedAllAssets).Execute(); 139 new AssetsRequest(assetUuids.Keys, m_scene.CommsManager.AssetCache, awre.ReceivedAllAssets).Execute();
135 } 140 }
diff --git a/OpenSim/Region/CoreModules/World/Archiver/ArchiverModule.cs b/OpenSim/Region/CoreModules/World/Archiver/ArchiverModule.cs
index dd67027..b6e2d31 100644
--- a/OpenSim/Region/CoreModules/World/Archiver/ArchiverModule.cs
+++ b/OpenSim/Region/CoreModules/World/Archiver/ArchiverModule.cs
@@ -25,6 +25,7 @@
25 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26 */ 26 */
27 27
28using System;
28using System.IO; 29using System.IO;
29using System.Reflection; 30using System.Reflection;
30using log4net; 31using log4net;
@@ -63,38 +64,48 @@ namespace OpenSim.Region.CoreModules.World.Archiver
63 64
64 public void ArchiveRegion(string savePath) 65 public void ArchiveRegion(string savePath)
65 { 66 {
67 ArchiveRegion(savePath, Guid.Empty);
68 }
69
70 public void ArchiveRegion(string savePath, Guid requestId)
71 {
66 m_log.InfoFormat( 72 m_log.InfoFormat(
67 "[ARCHIVER]: Writing archive for region {0} to {1}", m_scene.RegionInfo.RegionName, savePath); 73 "[ARCHIVER]: Writing archive for region {0} to {1}", m_scene.RegionInfo.RegionName, savePath);
68 74
69 new ArchiveWriteRequestPreparation(m_scene, savePath).ArchiveRegion(); 75 new ArchiveWriteRequestPreparation(m_scene, savePath, requestId).ArchiveRegion();
70 } 76 }
71 77
72 public void ArchiveRegion(Stream saveStream) 78 public void ArchiveRegion(Stream saveStream)
73 { 79 {
74 new ArchiveWriteRequestPreparation(m_scene, saveStream).ArchiveRegion(); 80 ArchiveRegion(saveStream, Guid.Empty);
75 } 81 }
82
83 public void ArchiveRegion(Stream saveStream, Guid requestId)
84 {
85 new ArchiveWriteRequestPreparation(m_scene, saveStream, requestId).ArchiveRegion();
86 }
76 87
77 public void DearchiveRegion(string loadPath) 88 public void DearchiveRegion(string loadPath)
78 { 89 {
79 DearchiveRegion(loadPath, false); 90 DearchiveRegion(loadPath, false, Guid.Empty);
80 } 91 }
81 92
82 public void DearchiveRegion(string loadPath, bool merge) 93 public void DearchiveRegion(string loadPath, bool merge, Guid requestId)
83 { 94 {
84 m_log.InfoFormat( 95 m_log.InfoFormat(
85 "[ARCHIVER]: Loading archive to region {0} from {1}", m_scene.RegionInfo.RegionName, loadPath); 96 "[ARCHIVER]: Loading archive to region {0} from {1}", m_scene.RegionInfo.RegionName, loadPath);
86 97
87 new ArchiveReadRequest(m_scene, loadPath, merge).DearchiveRegion(); 98 new ArchiveReadRequest(m_scene, loadPath, merge, requestId).DearchiveRegion();
88 } 99 }
89 100
90 public void DearchiveRegion(Stream loadStream) 101 public void DearchiveRegion(Stream loadStream)
91 { 102 {
92 DearchiveRegion(loadStream, false); 103 DearchiveRegion(loadStream, false, Guid.Empty);
93 } 104 }
94 105
95 public void DearchiveRegion(Stream loadStream, bool merge) 106 public void DearchiveRegion(Stream loadStream, bool merge, Guid requestId)
96 { 107 {
97 new ArchiveReadRequest(m_scene, loadStream, merge).DearchiveRegion(); 108 new ArchiveReadRequest(m_scene, loadStream, merge, requestId).DearchiveRegion();
98 } 109 }
99 } 110 }
100} 111}
diff --git a/OpenSim/Region/CoreModules/World/Archiver/Tests/ArchiverTests.cs b/OpenSim/Region/CoreModules/World/Archiver/Tests/ArchiverTests.cs
index 165a607..3ffabbd 100644
--- a/OpenSim/Region/CoreModules/World/Archiver/Tests/ArchiverTests.cs
+++ b/OpenSim/Region/CoreModules/World/Archiver/Tests/ArchiverTests.cs
@@ -47,10 +47,13 @@ namespace OpenSim.Region.CoreModules.World.Archiver.Tests
47 [TestFixture, LongRunning] 47 [TestFixture, LongRunning]
48 public class ArchiverTests 48 public class ArchiverTests
49 { 49 {
50 private void SaveCompleted(string errorMessage) 50 private Guid m_lastRequestId;
51
52 private void SaveCompleted(Guid requestId, string errorMessage)
51 { 53 {
52 lock (this) 54 lock (this)
53 { 55 {
56 m_lastRequestId = requestId;
54 System.Console.WriteLine("About to pulse ArchiverTests"); 57 System.Console.WriteLine("About to pulse ArchiverTests");
55 Monitor.PulseAll(this); 58 Monitor.PulseAll(this);
56 } 59 }
@@ -112,15 +115,19 @@ namespace OpenSim.Region.CoreModules.World.Archiver.Tests
112 MemoryStream archiveWriteStream = new MemoryStream(); 115 MemoryStream archiveWriteStream = new MemoryStream();
113 scene.EventManager.OnOarFileSaved += SaveCompleted; 116 scene.EventManager.OnOarFileSaved += SaveCompleted;
114 117
118 Guid requestId = new Guid("00000000-0000-0000-0000-808080808080");
119
115 lock (this) 120 lock (this)
116 { 121 {
117 archiverModule.ArchiveRegion(archiveWriteStream); 122 archiverModule.ArchiveRegion(archiveWriteStream, requestId);
118 AssetServerBase assetServer = (AssetServerBase)scene.CommsManager.AssetCache.AssetServer; 123 AssetServerBase assetServer = (AssetServerBase)scene.CommsManager.AssetCache.AssetServer;
119 while (assetServer.HasWaitingRequests()) 124 while (assetServer.HasWaitingRequests())
120 assetServer.ProcessNextRequest(); 125 assetServer.ProcessNextRequest();
121 126
122 Monitor.Wait(this, 60000); 127 Monitor.Wait(this, 60000);
123 } 128 }
129
130 Assert.That(m_lastRequestId, Is.EqualTo(requestId));
124 131
125 byte[] archive = archiveWriteStream.ToArray(); 132 byte[] archive = archiveWriteStream.ToArray();
126 MemoryStream archiveReadStream = new MemoryStream(archive); 133 MemoryStream archiveReadStream = new MemoryStream(archive);
@@ -303,7 +310,7 @@ namespace OpenSim.Region.CoreModules.World.Archiver.Tests
303 byte[] archive = archiveWriteStream.ToArray(); 310 byte[] archive = archiveWriteStream.ToArray();
304 MemoryStream archiveReadStream = new MemoryStream(archive); 311 MemoryStream archiveReadStream = new MemoryStream(archive);
305 312
306 archiverModule.DearchiveRegion(archiveReadStream, true); 313 archiverModule.DearchiveRegion(archiveReadStream, true, Guid.Empty);
307 314
308 SceneObjectPart object1Existing = scene.GetSceneObjectPart(part1Name); 315 SceneObjectPart object1Existing = scene.GetSceneObjectPart(part1Name);
309 Assert.That(object1Existing, Is.Not.Null, "object1 was not present after merge"); 316 Assert.That(object1Existing, Is.Not.Null, "object1 was not present after merge");
diff --git a/OpenSim/Region/Framework/Interfaces/IRegionArchiverModule.cs b/OpenSim/Region/Framework/Interfaces/IRegionArchiverModule.cs
index 601b83e..530fb79 100644
--- a/OpenSim/Region/Framework/Interfaces/IRegionArchiverModule.cs
+++ b/OpenSim/Region/Framework/Interfaces/IRegionArchiverModule.cs
@@ -25,6 +25,7 @@
25 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26 */ 26 */
27 27
28using System;
28using System.IO; 29using System.IO;
29 30
30namespace OpenSim.Region.Framework.Interfaces 31namespace OpenSim.Region.Framework.Interfaces
@@ -43,6 +44,17 @@ namespace OpenSim.Region.Framework.Interfaces
43 /// 44 ///
44 /// <param name="savePath"></param> 45 /// <param name="savePath"></param>
45 void ArchiveRegion(string savePath); 46 void ArchiveRegion(string savePath);
47
48 /// <summary>
49 /// Archive the region to the given path
50 /// </summary>
51 ///
52 /// This method occurs asynchronously. If you want notification of when it has completed then subscribe to
53 /// the EventManager.OnOarFileSaved event.
54 ///
55 /// <param name="savePath"></param>
56 /// <param name="requestId">If supplied, this request Id is later returned in the saved event</param>
57 void ArchiveRegion(string savePath, Guid requestId);
46 58
47 /// <summary> 59 /// <summary>
48 /// Archive the region to a stream. 60 /// Archive the region to a stream.
@@ -52,7 +64,8 @@ namespace OpenSim.Region.Framework.Interfaces
52 /// the EventManager.OnOarFileSaved event. 64 /// the EventManager.OnOarFileSaved event.
53 /// 65 ///
54 /// <param name="saveStream"></param> 66 /// <param name="saveStream"></param>
55 void ArchiveRegion(Stream saveStream); 67 /// <param name="requestId">If supplied, this request Id is later returned in the saved event</param>
68 void ArchiveRegion(Stream saveStream, Guid requestId);
56 69
57 /// <summary> 70 /// <summary>
58 /// Dearchive the given region archive. This replaces the existing scene. 71 /// Dearchive the given region archive. This replaces the existing scene.
@@ -74,7 +87,8 @@ namespace OpenSim.Region.Framework.Interfaces
74 /// If true, the loaded region merges with the existing one rather than replacing it. Any terrain or region 87 /// If true, the loaded region merges with the existing one rather than replacing it. Any terrain or region
75 /// settings in the archive will be ignored. 88 /// settings in the archive will be ignored.
76 /// </param> 89 /// </param>
77 void DearchiveRegion(string loadPath, bool merge); 90 /// <param name="requestId">If supplied, this request Id is later returned in the saved event</param>
91 void DearchiveRegion(string loadPath, bool merge, Guid requestId);
78 92
79 /// <summary> 93 /// <summary>
80 /// Dearchive a region from a stream. This replaces the existing scene. 94 /// Dearchive a region from a stream. This replaces the existing scene.
@@ -95,7 +109,8 @@ namespace OpenSim.Region.Framework.Interfaces
95 /// <param name="merge"> 109 /// <param name="merge">
96 /// If true, the loaded region merges with the existing one rather than replacing it. Any terrain or region 110 /// If true, the loaded region merges with the existing one rather than replacing it. Any terrain or region
97 /// settings in the archive will be ignored. 111 /// settings in the archive will be ignored.
98 /// </param> 112 /// </param>
99 void DearchiveRegion(Stream loadStream, bool merge); 113 /// <param name="requestId">If supplied, this request Id is later returned in the saved event</param>
114 void DearchiveRegion(Stream loadStream, bool merge, Guid requestId);
100 } 115 }
101} 116}
diff --git a/OpenSim/Region/Framework/Scenes/EventManager.cs b/OpenSim/Region/Framework/Scenes/EventManager.cs
index 7496af0..469f139 100644
--- a/OpenSim/Region/Framework/Scenes/EventManager.cs
+++ b/OpenSim/Region/Framework/Scenes/EventManager.cs
@@ -279,14 +279,16 @@ namespace OpenSim.Region.Framework.Scenes
279 /// the scripts may not have started yet 279 /// the scripts may not have started yet
280 /// Message is non empty string if there were problems loading the oar file 280 /// Message is non empty string if there were problems loading the oar file
281 /// </summary> 281 /// </summary>
282 public delegate void OarFileLoaded(string message); 282 public delegate void OarFileLoaded(Guid guid, string message);
283 public event OarFileLoaded OnOarFileLoaded; 283 public event OarFileLoaded OnOarFileLoaded;
284 284
285 /// <summary> 285 /// <summary>
286 /// Called when an oar file has finished saving 286 /// Called when an oar file has finished saving
287 /// Message is non empty string if there were problems saving the oar file 287 /// Message is non empty string if there were problems saving the oar file
288 /// If a guid was supplied on the original call to identify, the request, this is returned. Otherwise
289 /// Guid.Empty is returned.
288 /// </summary> 290 /// </summary>
289 public delegate void OarFileSaved(string message); 291 public delegate void OarFileSaved(Guid guid, string message);
290 public event OarFileSaved OnOarFileSaved; 292 public event OarFileSaved OnOarFileSaved;
291 293
292 /// <summary> 294 /// <summary>
@@ -968,18 +970,18 @@ namespace OpenSim.Region.Framework.Scenes
968 return 6; 970 return 6;
969 } 971 }
970 972
971 public void TriggerOarFileLoaded(string message) 973 public void TriggerOarFileLoaded(Guid requestId, string message)
972 { 974 {
973 handlerOarFileLoaded = OnOarFileLoaded; 975 handlerOarFileLoaded = OnOarFileLoaded;
974 if (handlerOarFileLoaded != null) 976 if (handlerOarFileLoaded != null)
975 handlerOarFileLoaded(message); 977 handlerOarFileLoaded(requestId, message);
976 } 978 }
977 979
978 public void TriggerOarFileSaved(string message) 980 public void TriggerOarFileSaved(Guid requestId, string message)
979 { 981 {
980 handlerOarFileSaved = OnOarFileSaved; 982 handlerOarFileSaved = OnOarFileSaved;
981 if (handlerOarFileSaved != null) 983 if (handlerOarFileSaved != null)
982 handlerOarFileSaved(message); 984 handlerOarFileSaved(requestId, message);
983 } 985 }
984 986
985 public void TriggerEmptyScriptCompileQueue(int numScriptsFailed, string message) 987 public void TriggerEmptyScriptCompileQueue(int numScriptsFailed, string message)
diff --git a/OpenSim/Region/OptionalModules/Scripting/RegionReady/RegionReady.cs b/OpenSim/Region/OptionalModules/Scripting/RegionReady/RegionReady.cs
index 6035712..4f57470 100644
--- a/OpenSim/Region/OptionalModules/Scripting/RegionReady/RegionReady.cs
+++ b/OpenSim/Region/OptionalModules/Scripting/RegionReady/RegionReady.cs
@@ -76,13 +76,13 @@ namespace OpenSim.Region.CoreModules.Scripting.RegionReady
76 { 76 {
77 if (m_enabled) 77 if (m_enabled)
78 { 78 {
79 m_log.Info("[RegionReady] Enabled"); 79 m_log.Info("[RegionReady]: Enabled");
80 m_scene.EventManager.OnEmptyScriptCompileQueue += new EventManager.EmptyScriptCompileQueue(OnEmptyScriptCompileQueue); 80 m_scene.EventManager.OnEmptyScriptCompileQueue += new EventManager.EmptyScriptCompileQueue(OnEmptyScriptCompileQueue);
81 m_scene.EventManager.OnOarFileLoaded += new EventManager.OarFileLoaded(OnOarFileLoaded); 81 m_scene.EventManager.OnOarFileLoaded += new EventManager.OarFileLoaded(OnOarFileLoaded);
82 } 82 }
83 else 83 else
84 { 84 {
85 m_log.Info("[RegionReady] Disabled"); 85 m_log.Info("[RegionReady]: Disabled");
86 } 86 }
87 } 87 }
88 88
@@ -129,20 +129,20 @@ namespace OpenSim.Region.CoreModules.Scripting.RegionReady
129 c.Sender = null; 129 c.Sender = null;
130 c.SenderUUID = UUID.Zero; 130 c.SenderUUID = UUID.Zero;
131 131
132 m_log.InfoFormat("[RegionReady] Region \"{0}\" is ready: \"{1}\" on channel {2}", 132 m_log.InfoFormat("[RegionReady]: Region \"{0}\" is ready: \"{1}\" on channel {2}",
133 m_scene.RegionInfo.RegionName, c.Message, m_channelNotify); 133 m_scene.RegionInfo.RegionName, c.Message, m_channelNotify);
134 m_scene.EventManager.TriggerOnChatBroadcast(this, c); 134 m_scene.EventManager.TriggerOnChatBroadcast(this, c);
135 } 135 }
136 } 136 }
137 137
138 void OnOarFileLoaded(string message) 138 void OnOarFileLoaded(Guid requestId, string message)
139 { 139 {
140 m_oarFileLoading = true; 140 m_oarFileLoading = true;
141 if (message==String.Empty) 141 if (message==String.Empty)
142 { 142 {
143 m_lastOarLoadedOk = true; 143 m_lastOarLoadedOk = true;
144 } else { 144 } else {
145 m_log.InfoFormat("[RegionReady] Oar file load errors: {0}", message); 145 m_log.InfoFormat("[RegionReady]: Oar file load errors: {0}", message);
146 m_lastOarLoadedOk = false; 146 m_lastOarLoadedOk = false;
147 } 147 }
148 } 148 }