aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
-rw-r--r--OpenSim/Region/ClientStack/Linden/Caps/WebFetchInvDescModule.cs29
-rw-r--r--OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs2
2 files changed, 30 insertions, 1 deletions
diff --git a/OpenSim/Region/ClientStack/Linden/Caps/WebFetchInvDescModule.cs b/OpenSim/Region/ClientStack/Linden/Caps/WebFetchInvDescModule.cs
index 9101fc3..d1afff2 100644
--- a/OpenSim/Region/ClientStack/Linden/Caps/WebFetchInvDescModule.cs
+++ b/OpenSim/Region/ClientStack/Linden/Caps/WebFetchInvDescModule.cs
@@ -71,6 +71,11 @@ namespace OpenSim.Region.ClientStack.Linden
71 private IInventoryService m_InventoryService; 71 private IInventoryService m_InventoryService;
72 private ILibraryService m_LibraryService; 72 private ILibraryService m_LibraryService;
73 73
74 private bool m_Enabled;
75
76 private string m_fetchInventoryDescendents2Url;
77 private string m_webFetchInventoryDescendentsUrl;
78
74 private static WebFetchInvDescHandler m_webFetchHandler; 79 private static WebFetchInvDescHandler m_webFetchHandler;
75 80
76 private Dictionary<UUID, string> m_capsDict = new Dictionary<UUID, string>(); 81 private Dictionary<UUID, string> m_capsDict = new Dictionary<UUID, string>();
@@ -83,15 +88,32 @@ namespace OpenSim.Region.ClientStack.Linden
83 88
84 public void Initialise(IConfigSource source) 89 public void Initialise(IConfigSource source)
85 { 90 {
91 IConfig config = source.Configs["ClientStack.LindenCaps"];
92 if (config == null)
93 return;
94
95 m_fetchInventoryDescendents2Url = config.GetString("Cap_FetchInventoryDescendents2", string.Empty);
96 m_webFetchInventoryDescendentsUrl = config.GetString("Cap_WebFetchInventoryDescendents", string.Empty);
97
98 if (m_fetchInventoryDescendents2Url != string.Empty || m_webFetchInventoryDescendentsUrl != string.Empty)
99 {
100 m_Enabled = true;
101 }
86 } 102 }
87 103
88 public void AddRegion(Scene s) 104 public void AddRegion(Scene s)
89 { 105 {
106 if (!m_Enabled)
107 return;
108
90 m_scene = s; 109 m_scene = s;
91 } 110 }
92 111
93 public void RemoveRegion(Scene s) 112 public void RemoveRegion(Scene s)
94 { 113 {
114 if (!m_Enabled)
115 return;
116
95 m_scene.EventManager.OnRegisterCaps -= RegisterCaps; 117 m_scene.EventManager.OnRegisterCaps -= RegisterCaps;
96 m_scene.EventManager.OnDeregisterCaps -= DeregisterCaps; 118 m_scene.EventManager.OnDeregisterCaps -= DeregisterCaps;
97 m_scene = null; 119 m_scene = null;
@@ -99,6 +121,9 @@ namespace OpenSim.Region.ClientStack.Linden
99 121
100 public void RegionLoaded(Scene s) 122 public void RegionLoaded(Scene s)
101 { 123 {
124 if (!m_Enabled)
125 return;
126
102 m_InventoryService = m_scene.InventoryService; 127 m_InventoryService = m_scene.InventoryService;
103 m_LibraryService = m_scene.LibraryService; 128 m_LibraryService = m_scene.LibraryService;
104 129
@@ -283,6 +308,9 @@ namespace OpenSim.Region.ClientStack.Linden
283 308
284 private void RegisterCaps(UUID agentID, Caps caps) 309 private void RegisterCaps(UUID agentID, Caps caps)
285 { 310 {
311 if (m_fetchInventoryDescendents2Url == "")
312 return;
313
286 string capUrl = "/CAPS/" + UUID.Random() + "/"; 314 string capUrl = "/CAPS/" + UUID.Random() + "/";
287 315
288 // Register this as a poll service 316 // Register this as a poll service
@@ -301,6 +329,7 @@ namespace OpenSim.Region.ClientStack.Linden
301 port = MainServer.Instance.SSLPort; 329 port = MainServer.Instance.SSLPort;
302 protocol = "https"; 330 protocol = "https";
303 } 331 }
332
304 caps.RegisterHandler("FetchInventoryDescendents2", String.Format("{0}://{1}:{2}{3}", protocol, hostName, port, capUrl)); 333 caps.RegisterHandler("FetchInventoryDescendents2", String.Format("{0}://{1}:{2}{3}", protocol, hostName, port, capUrl));
305 334
306 m_capsDict[agentID] = capUrl; 335 m_capsDict[agentID] = capUrl;
diff --git a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
index e47397d..9784d15 100644
--- a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
+++ b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
@@ -4828,7 +4828,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
4828 4828
4829 public void SendForceClientSelectObjects(List<uint> ObjectIDs) 4829 public void SendForceClientSelectObjects(List<uint> ObjectIDs)
4830 { 4830 {
4831 m_log.WarnFormat("[LLCLIENTVIEW] sending select with {0} objects", ObjectIDs.Count); 4831// m_log.DebugFormat("[LLCLIENTVIEW] sending select with {0} objects", ObjectIDs.Count);
4832 4832
4833 bool firstCall = true; 4833 bool firstCall = true;
4834 const int MAX_OBJECTS_PER_PACKET = 251; 4834 const int MAX_OBJECTS_PER_PACKET = 251;