aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region
diff options
context:
space:
mode:
authorBlueWall2012-09-11 22:58:21 -0400
committerBlueWall2012-09-11 22:58:21 -0400
commite9322b0bf714251719919db8638bf92f19289190 (patch)
tree4eca77cc71f4428e57f0a4c176189e114bfb9397 /OpenSim/Region
parentFix prebuild.xml format for reference (diff)
parentminor: Comment out friends notification log spam for now. (diff)
downloadopensim-SC_OLD-e9322b0bf714251719919db8638bf92f19289190.zip
opensim-SC_OLD-e9322b0bf714251719919db8638bf92f19289190.tar.gz
opensim-SC_OLD-e9322b0bf714251719919db8638bf92f19289190.tar.bz2
opensim-SC_OLD-e9322b0bf714251719919db8638bf92f19289190.tar.xz
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
Diffstat (limited to 'OpenSim/Region')
-rw-r--r--OpenSim/Region/Application/OpenSim.cs31
-rw-r--r--OpenSim/Region/CoreModules/Avatar/Friends/FriendsModule.cs6
-rw-r--r--OpenSim/Region/Framework/Interfaces/IJsonStoreModule.cs2
-rw-r--r--OpenSim/Region/Framework/Scenes/EventManager.cs83
-rw-r--r--OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs15
-rw-r--r--OpenSim/Region/OptionalModules/Scripting/JsonStore/JsonStoreModule.cs14
-rw-r--r--OpenSim/Region/OptionalModules/Scripting/JsonStore/JsonStoreScriptModule.cs2
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Api/Implementation/MOD_Api.cs8
8 files changed, 107 insertions, 54 deletions
diff --git a/OpenSim/Region/Application/OpenSim.cs b/OpenSim/Region/Application/OpenSim.cs
index 769eea8..ed339fd 100644
--- a/OpenSim/Region/Application/OpenSim.cs
+++ b/OpenSim/Region/Application/OpenSim.cs
@@ -332,10 +332,6 @@ namespace OpenSim
332 "show circuits", 332 "show circuits",
333 "Show agent circuit data", HandleShow); 333 "Show agent circuit data", HandleShow);
334 334
335 m_console.Commands.AddCommand("Comms", false, "show http-handlers",
336 "show http-handlers",
337 "Show all registered http handlers", HandleShow);
338
339 m_console.Commands.AddCommand("Comms", false, "show pending-objects", 335 m_console.Commands.AddCommand("Comms", false, "show pending-objects",
340 "show pending-objects", 336 "show pending-objects",
341 "Show # of objects on the pending queues of all scene viewers", HandleShow); 337 "Show # of objects on the pending queues of all scene viewers", HandleShow);
@@ -1013,33 +1009,6 @@ namespace OpenSim
1013 HandleShowCircuits(); 1009 HandleShowCircuits();
1014 break; 1010 break;
1015 1011
1016 case "http-handlers":
1017 System.Text.StringBuilder handlers = new System.Text.StringBuilder("Registered HTTP Handlers:\n");
1018
1019 handlers.AppendFormat("* XMLRPC:\n");
1020 foreach (String s in HttpServer.GetXmlRpcHandlerKeys())
1021 handlers.AppendFormat("\t{0}\n", s);
1022
1023 handlers.AppendFormat("* HTTP:\n");
1024 List<String> poll = HttpServer.GetPollServiceHandlerKeys();
1025 foreach (String s in HttpServer.GetHTTPHandlerKeys())
1026 handlers.AppendFormat("\t{0} {1}\n", s, (poll.Contains(s) ? "(poll service)" : string.Empty));
1027
1028 handlers.AppendFormat("* Agent:\n");
1029 foreach (String s in HttpServer.GetAgentHandlerKeys())
1030 handlers.AppendFormat("\t{0}\n", s);
1031
1032 handlers.AppendFormat("* LLSD:\n");
1033 foreach (String s in HttpServer.GetLLSDHandlerKeys())
1034 handlers.AppendFormat("\t{0}\n", s);
1035
1036 handlers.AppendFormat("* StreamHandlers ({0}):\n", HttpServer.GetStreamHandlerKeys().Count);
1037 foreach (String s in HttpServer.GetStreamHandlerKeys())
1038 handlers.AppendFormat("\t{0}\n", s);
1039
1040 MainConsole.Instance.Output(handlers.ToString());
1041 break;
1042
1043 case "modules": 1012 case "modules":
1044 MainConsole.Instance.Output("The currently loaded shared modules are:"); 1013 MainConsole.Instance.Output("The currently loaded shared modules are:");
1045 foreach (IRegionModule module in m_moduleLoader.GetLoadedSharedModules) 1014 foreach (IRegionModule module in m_moduleLoader.GetLoadedSharedModules)
diff --git a/OpenSim/Region/CoreModules/Avatar/Friends/FriendsModule.cs b/OpenSim/Region/CoreModules/Avatar/Friends/FriendsModule.cs
index 24ec435..11db18a 100644
--- a/OpenSim/Region/CoreModules/Avatar/Friends/FriendsModule.cs
+++ b/OpenSim/Region/CoreModules/Avatar/Friends/FriendsModule.cs
@@ -482,9 +482,9 @@ namespace OpenSim.Region.CoreModules.Avatar.Friends
482 Util.FireAndForget( 482 Util.FireAndForget(
483 delegate 483 delegate
484 { 484 {
485 m_log.DebugFormat( 485// m_log.DebugFormat(
486 "[FRIENDS MODULE]: Notifying {0} friends of {1} of online status {2}", 486// "[FRIENDS MODULE]: Notifying {0} friends of {1} of online status {2}",
487 friendList.Count, agentID, online); 487// friendList.Count, agentID, online);
488 488
489 // Notify about this user status 489 // Notify about this user status
490 StatusNotify(friendList, agentID, online); 490 StatusNotify(friendList, agentID, online);
diff --git a/OpenSim/Region/Framework/Interfaces/IJsonStoreModule.cs b/OpenSim/Region/Framework/Interfaces/IJsonStoreModule.cs
index baac6e8..da39e95 100644
--- a/OpenSim/Region/Framework/Interfaces/IJsonStoreModule.cs
+++ b/OpenSim/Region/Framework/Interfaces/IJsonStoreModule.cs
@@ -35,7 +35,7 @@ namespace OpenSim.Region.Framework.Interfaces
35 35
36 public interface IJsonStoreModule 36 public interface IJsonStoreModule
37 { 37 {
38 bool CreateStore(string value, out UUID result); 38 bool CreateStore(string value, ref UUID result);
39 bool DestroyStore(UUID storeID); 39 bool DestroyStore(UUID storeID);
40 bool TestPath(UUID storeID, string path, bool useJson); 40 bool TestPath(UUID storeID, string path, bool useJson);
41 bool SetValue(UUID storeID, string path, string value, bool useJson); 41 bool SetValue(UUID storeID, string path, string value, bool useJson);
diff --git a/OpenSim/Region/Framework/Scenes/EventManager.cs b/OpenSim/Region/Framework/Scenes/EventManager.cs
index 4d65be9..02c032e 100644
--- a/OpenSim/Region/Framework/Scenes/EventManager.cs
+++ b/OpenSim/Region/Framework/Scenes/EventManager.cs
@@ -47,26 +47,71 @@ namespace OpenSim.Region.Framework.Scenes
47 47
48 public delegate void OnFrameDelegate(); 48 public delegate void OnFrameDelegate();
49 49
50 /// <summary>
51 /// Triggered on each sim frame.
52 /// </summary>
53 /// <remarks>
54 /// This gets triggered in <see cref="OpenSim.Region.Framework.Scenes.Scene.Update"/>
55 /// Core uses it for things like Sun, Wind & Clouds
56 /// The MRM module also uses it.
57 /// </remarks>
50 public event OnFrameDelegate OnFrame; 58 public event OnFrameDelegate OnFrame;
51 59
52 public delegate void ClientMovement(ScenePresence client); 60 public delegate void ClientMovement(ScenePresence client);
53 61
62 /// <summary>
63 /// Trigerred when an agent moves.
64 /// </summary>
65 /// <remarks>
66 /// This gets triggered in <see cref="OpenSim.Region.Framework.Scenes.ScenePresence.HandleAgentUpdate"/>
67 /// prior to <see cref="OpenSim.Region.Framework.Scenes.ScenePresence.TriggerScenePresenceUpdated"/>
68 /// </remarks>
54 public event ClientMovement OnClientMovement; 69 public event ClientMovement OnClientMovement;
55 70
56 public delegate void OnTerrainTaintedDelegate(); 71 public delegate void OnTerrainTaintedDelegate();
57 72
73 /// <summary>
74 /// Triggered if the terrain has been edited
75 /// </summary>
76 /// <remarks>
77 /// This gets triggered in <see cref="OpenSim.Region.CoreModules.World.Terrain.CheckForTerrainUpdates"/>
78 /// after it determines that an update has been made.
79 /// </remarks>
58 public event OnTerrainTaintedDelegate OnTerrainTainted; 80 public event OnTerrainTaintedDelegate OnTerrainTainted;
59 81
60 public delegate void OnTerrainTickDelegate(); 82 public delegate void OnTerrainTickDelegate();
61 83
84 /// <summary>
85 /// Triggered if the terrain has been edited
86 /// </summary>
87 /// <remarks>
88 /// This gets triggered in <see cref="OpenSim.Region.Framework.Scenes.Scene.UpdateTerrain"/>
89 /// but is used by core solely to update the physics engine.
90 /// </remarks>
62 public event OnTerrainTickDelegate OnTerrainTick; 91 public event OnTerrainTickDelegate OnTerrainTick;
63 92
64 public delegate void OnBackupDelegate(ISimulationDataService datastore, bool forceBackup); 93 public delegate void OnBackupDelegate(ISimulationDataService datastore, bool forceBackup);
65 94
95 /// <summary>
96 /// Triggered when a region is backed up/persisted to storage
97 /// </summary>
98 /// <remarks>
99 /// This gets triggered in <see cref="OpenSim.Region.Framework.Scenes.Scene.Backup"/>
100 /// and is fired before the persistence occurs.
101 /// </remarks>
66 public event OnBackupDelegate OnBackup; 102 public event OnBackupDelegate OnBackup;
67 103
68 public delegate void OnClientConnectCoreDelegate(IClientCore client); 104 public delegate void OnClientConnectCoreDelegate(IClientCore client);
69 105
106 /// <summary>
107 /// Triggered when a new client connects to the scene.
108 /// </summary>
109 /// <remarks>
110 /// This gets triggered in <see cref="TriggerOnNewClient"/>,
111 /// which checks if an instance of <see cref="OpenSim.Framework.IClientAPI"/>
112 /// also implements <see cref="OpenSim.Framework.Client.IClientCore"/> and as such,
113 /// is not triggered by <see cref="OpenSim.Region.OptionalModules.World.NPC">NPCs</see>.
114 /// </remarks>
70 public event OnClientConnectCoreDelegate OnClientConnect; 115 public event OnClientConnectCoreDelegate OnClientConnect;
71 116
72 public delegate void OnNewClientDelegate(IClientAPI client); 117 public delegate void OnNewClientDelegate(IClientAPI client);
@@ -87,10 +132,24 @@ namespace OpenSim.Region.Framework.Scenes
87 132
88 public delegate void OnNewPresenceDelegate(ScenePresence presence); 133 public delegate void OnNewPresenceDelegate(ScenePresence presence);
89 134
135 /// <summary>
136 /// Triggered when a new presence is added to the scene
137 /// </summary>
138 /// <remarks>
139 /// Triggered in <see cref="OpenSim.Region.Framework.Scenes.Scene.AddNewClient"/> which is used by both
140 /// <see cref="OpenSim.Framework.PresenceType.User">users</see> and <see cref="OpenSim.Framework.PresenceType.Npc">NPCs</see>
141 /// </remarks>
90 public event OnNewPresenceDelegate OnNewPresence; 142 public event OnNewPresenceDelegate OnNewPresence;
91 143
92 public delegate void OnRemovePresenceDelegate(UUID agentId); 144 public delegate void OnRemovePresenceDelegate(UUID agentId);
93 145
146 /// <summary>
147 /// Triggered when a presence is removed from the scene
148 /// </summary>
149 /// <remarks>
150 /// Triggered in <see cref="OpenSim.Region.Framework.Scenes.Scene.AddNewClient"/> which is used by both
151 /// <see cref="OpenSim.Framework.PresenceType.User">users</see> and <see cref="OpenSim.Framework.PresenceType.Npc">NPCs</see>
152 /// </remarks>
94 public event OnRemovePresenceDelegate OnRemovePresence; 153 public event OnRemovePresenceDelegate OnRemovePresence;
95 154
96 public delegate void OnParcelPrimCountUpdateDelegate(); 155 public delegate void OnParcelPrimCountUpdateDelegate();
@@ -481,6 +540,9 @@ namespace OpenSim.Region.Framework.Scenes
481 /// <param name="copy"></param> 540 /// <param name="copy"></param>
482 /// <param name="original"></param> 541 /// <param name="original"></param>
483 /// <param name="userExposed">True if the duplicate will immediately be in the scene, false otherwise</param> 542 /// <param name="userExposed">True if the duplicate will immediately be in the scene, false otherwise</param>
543 /// <remarks>
544 /// Triggered in <see cref="OpenSim.Region.Framework.Scenes.SceneObjectPart.Copy"/>
545 /// </remarks>
484 public event SceneObjectPartCopyDelegate OnSceneObjectPartCopy; 546 public event SceneObjectPartCopyDelegate OnSceneObjectPartCopy;
485 public delegate void SceneObjectPartCopyDelegate(SceneObjectPart copy, SceneObjectPart original, bool userExposed); 547 public delegate void SceneObjectPartCopyDelegate(SceneObjectPart copy, SceneObjectPart original, bool userExposed);
486 548
@@ -589,8 +651,29 @@ namespace OpenSim.Region.Framework.Scenes
589 651
590 public delegate void LandBuy(Object sender, LandBuyArgs e); 652 public delegate void LandBuy(Object sender, LandBuyArgs e);
591 653
654 /// <summary>
655 /// Triggered when an attempt to transfer grid currency occurs
656 /// </summary>
657 /// <remarks>
658 /// Triggered in <see cref="OpenSim.Region.Framework.Scenes.Scene.ProcessMoneyTransferRequest"/>
659 /// via <see cref="OpenSim.Region.Framework.Scenes.Scene.SubscribeToClientGridEvents"/>
660 /// via <see cref="OpenSim.Region.Framework.Scenes.Scene.SubscribeToClientEvents"/>
661 /// via <see cref="OpenSim.Region.Framework.Scenes.Scene.AddNewClient"/>
662 /// </remarks>
592 public event MoneyTransferEvent OnMoneyTransfer; 663 public event MoneyTransferEvent OnMoneyTransfer;
664
665 /// <summary>
666 /// Triggered after after <see cref="OnValidateLandBuy"/>
667 /// </summary>
593 public event LandBuy OnLandBuy; 668 public event LandBuy OnLandBuy;
669
670 /// <summary>
671 /// Triggered to allow or prevent a real estate transaction
672 /// </summary>
673 /// <remarks>
674 /// Triggered in <see cref="OpenSim.Region.Framework.Scenes.Scene.ProcessParcelBuy"/>
675 /// <seealso cref="OpenSim.Region.OptionalModules.World.MoneyModule.SampleMoneyModule.ValidateLandBuy"/>
676 /// </remarks>
594 public event LandBuy OnValidateLandBuy; 677 public event LandBuy OnValidateLandBuy;
595 678
596 public void TriggerOnAttach(uint localID, UUID itemID, UUID avatarID) 679 public void TriggerOnAttach(uint localID, UUID itemID, UUID avatarID)
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
index e528288..ac26be7 100644
--- a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
+++ b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
@@ -2022,13 +2022,14 @@ namespace OpenSim.Region.Framework.Scenes
2022 m_scene.m_linksetCapacity) 2022 m_scene.m_linksetCapacity)
2023 { 2023 {
2024 m_log.DebugFormat( 2024 m_log.DebugFormat(
2025 "[SCENE OBJECT GROUP]: Cannot link group with root" + 2025 "[SCENE OBJECT GROUP]: Cannot link group with root" +
2026 " part {0}, {1} ({2} prims) to group with root part" + 2026 " part {0}, {1} ({2} prims) to group with root part" +
2027 " {3}, {4} ({5} prims) because the new linkset" + 2027 " {3}, {4} ({5} prims) because the new linkset" +
2028 " would exceed the configured maximum of {6}", 2028 " would exceed the configured maximum of {6}",
2029 objectGroup.RootPart.Name, objectGroup.RootPart.UUID, 2029 objectGroup.RootPart.Name, objectGroup.RootPart.UUID,
2030 objectGroup.PrimCount, RootPart.Name, RootPart.UUID, 2030 objectGroup.PrimCount, RootPart.Name, RootPart.UUID,
2031 PrimCount, m_scene.m_linksetCapacity); 2031 PrimCount, m_scene.m_linksetCapacity);
2032
2032 return; 2033 return;
2033 } 2034 }
2034 2035
diff --git a/OpenSim/Region/OptionalModules/Scripting/JsonStore/JsonStoreModule.cs b/OpenSim/Region/OptionalModules/Scripting/JsonStore/JsonStoreModule.cs
index 311531c..732c28f 100644
--- a/OpenSim/Region/OptionalModules/Scripting/JsonStore/JsonStoreModule.cs
+++ b/OpenSim/Region/OptionalModules/Scripting/JsonStore/JsonStoreModule.cs
@@ -175,14 +175,15 @@ namespace OpenSim.Region.OptionalModules.Scripting.JsonStore
175 /// 175 ///
176 /// </summary> 176 /// </summary>
177 // ----------------------------------------------------------------- 177 // -----------------------------------------------------------------
178 public bool CreateStore(string value, out UUID result) 178 public bool CreateStore(string value, ref UUID result)
179 { 179 {
180 result = UUID.Zero; 180 if (result == UUID.Zero)
181 result = UUID.Random();
182
183 JsonStore map = null;
181 184
182 if (! m_enabled) return false; 185 if (! m_enabled) return false;
183 186
184 UUID uuid = UUID.Random();
185 JsonStore map = null;
186 187
187 try 188 try
188 { 189 {
@@ -195,9 +196,8 @@ namespace OpenSim.Region.OptionalModules.Scripting.JsonStore
195 } 196 }
196 197
197 lock (m_JsonValueStore) 198 lock (m_JsonValueStore)
198 m_JsonValueStore.Add(uuid,map); 199 m_JsonValueStore.Add(result,map);
199 200
200 result = uuid;
201 return true; 201 return true;
202 } 202 }
203 203
@@ -231,7 +231,7 @@ namespace OpenSim.Region.OptionalModules.Scripting.JsonStore
231 if (! m_JsonValueStore.TryGetValue(storeID,out map)) 231 if (! m_JsonValueStore.TryGetValue(storeID,out map))
232 { 232 {
233 m_log.InfoFormat("[JsonStore] Missing store {0}",storeID); 233 m_log.InfoFormat("[JsonStore] Missing store {0}",storeID);
234 return true; 234 return false;
235 } 235 }
236 } 236 }
237 237
diff --git a/OpenSim/Region/OptionalModules/Scripting/JsonStore/JsonStoreScriptModule.cs b/OpenSim/Region/OptionalModules/Scripting/JsonStore/JsonStoreScriptModule.cs
index eaba816..6910d14 100644
--- a/OpenSim/Region/OptionalModules/Scripting/JsonStore/JsonStoreScriptModule.cs
+++ b/OpenSim/Region/OptionalModules/Scripting/JsonStore/JsonStoreScriptModule.cs
@@ -227,7 +227,7 @@ namespace OpenSim.Region.OptionalModules.Scripting.JsonStore
227 protected UUID JsonCreateStore(UUID hostID, UUID scriptID, string value) 227 protected UUID JsonCreateStore(UUID hostID, UUID scriptID, string value)
228 { 228 {
229 UUID uuid = UUID.Zero; 229 UUID uuid = UUID.Zero;
230 if (! m_store.CreateStore(value, out uuid)) 230 if (! m_store.CreateStore(value, ref uuid))
231 GenerateRuntimeError("Failed to create Json store"); 231 GenerateRuntimeError("Failed to create Json store");
232 232
233 return uuid; 233 return uuid;
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/MOD_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/MOD_Api.cs
index cde2d9f..6809c09 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/MOD_Api.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/MOD_Api.cs
@@ -254,7 +254,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
254 254
255 object[] convertedParms = new object[parms.Length]; 255 object[] convertedParms = new object[parms.Length];
256 for (int i = 0; i < parms.Length; i++) 256 for (int i = 0; i < parms.Length; i++)
257 convertedParms[i] = ConvertFromLSL(parms[i],signature[i]); 257 convertedParms[i] = ConvertFromLSL(parms[i],signature[i], fname);
258 258
259 // now call the function, the contract with the function is that it will always return 259 // now call the function, the contract with the function is that it will always return
260 // non-null but don't trust it completely 260 // non-null but don't trust it completely
@@ -294,7 +294,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
294 294
295 /// <summary> 295 /// <summary>
296 /// </summary> 296 /// </summary>
297 protected object ConvertFromLSL(object lslparm, Type type) 297 protected object ConvertFromLSL(object lslparm, Type type, string fname)
298 { 298 {
299 // ---------- String ---------- 299 // ---------- String ----------
300 if (lslparm is LSL_String) 300 if (lslparm is LSL_String)
@@ -374,14 +374,14 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
374 (LSL_Vector)plist[i]); 374 (LSL_Vector)plist[i]);
375 } 375 }
376 else 376 else
377 MODError("unknown LSL list element type"); 377 MODError(String.Format("{0}: unknown LSL list element type", fname));
378 } 378 }
379 379
380 return result; 380 return result;
381 } 381 }
382 } 382 }
383 383
384 MODError(String.Format("parameter type mismatch; expecting {0}",type.Name)); 384 MODError(String.Format("{1}: parameter type mismatch; expecting {0}",type.Name, fname));
385 return null; 385 return null;
386 } 386 }
387 387