aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Services
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Services')
-rw-r--r--OpenSim/Services/Connectors/Asset/AssetServicesConnector.cs11
-rw-r--r--OpenSim/Services/Connectors/GridUser/GridUserServicesConnector.cs9
2 files changed, 15 insertions, 5 deletions
diff --git a/OpenSim/Services/Connectors/Asset/AssetServicesConnector.cs b/OpenSim/Services/Connectors/Asset/AssetServicesConnector.cs
index 086b5ad..2b2f11f 100644
--- a/OpenSim/Services/Connectors/Asset/AssetServicesConnector.cs
+++ b/OpenSim/Services/Connectors/Asset/AssetServicesConnector.cs
@@ -47,7 +47,8 @@ namespace OpenSim.Services.Connectors
47 47
48 private string m_ServerURI = String.Empty; 48 private string m_ServerURI = String.Empty;
49 private IImprovedAssetCache m_Cache = null; 49 private IImprovedAssetCache m_Cache = null;
50 50 private int m_maxAssetRequestConcurrency = 30;
51
51 private delegate void AssetRetrievedEx(AssetBase asset); 52 private delegate void AssetRetrievedEx(AssetBase asset);
52 53
53 // Keeps track of concurrent requests for the same asset, so that it's only loaded once. 54 // Keeps track of concurrent requests for the same asset, so that it's only loaded once.
@@ -71,6 +72,10 @@ namespace OpenSim.Services.Connectors
71 72
72 public virtual void Initialise(IConfigSource source) 73 public virtual void Initialise(IConfigSource source)
73 { 74 {
75 IConfig netconfig = source.Configs["Network"];
76 if (netconfig != null)
77 m_maxAssetRequestConcurrency = netconfig.GetInt("MaxRequestConcurrency",m_maxAssetRequestConcurrency);
78
74 IConfig assetConfig = source.Configs["AssetService"]; 79 IConfig assetConfig = source.Configs["AssetService"];
75 if (assetConfig == null) 80 if (assetConfig == null)
76 { 81 {
@@ -108,7 +113,7 @@ namespace OpenSim.Services.Connectors
108 if (asset == null) 113 if (asset == null)
109 { 114 {
110 asset = SynchronousRestObjectRequester. 115 asset = SynchronousRestObjectRequester.
111 MakeRequest<int, AssetBase>("GET", uri, 0, 30); 116 MakeRequest<int, AssetBase>("GET", uri, 0, m_maxAssetRequestConcurrency);
112 117
113 if (m_Cache != null) 118 if (m_Cache != null)
114 m_Cache.Cache(asset); 119 m_Cache.Cache(asset);
@@ -221,7 +226,7 @@ namespace OpenSim.Services.Connectors
221 m_AssetHandlers.Remove(id); 226 m_AssetHandlers.Remove(id);
222 } 227 }
223 handlers.Invoke(a); 228 handlers.Invoke(a);
224 }, 30); 229 }, m_maxAssetRequestConcurrency);
225 230
226 success = true; 231 success = true;
227 } 232 }
diff --git a/OpenSim/Services/Connectors/GridUser/GridUserServicesConnector.cs b/OpenSim/Services/Connectors/GridUser/GridUserServicesConnector.cs
index 20d7eaf..94bda82 100644
--- a/OpenSim/Services/Connectors/GridUser/GridUserServicesConnector.cs
+++ b/OpenSim/Services/Connectors/GridUser/GridUserServicesConnector.cs
@@ -207,7 +207,7 @@ namespace OpenSim.Services.Connectors
207 if ((replyData != null) && replyData.ContainsKey("result") && (replyData["result"] != null)) 207 if ((replyData != null) && replyData.ContainsKey("result") && (replyData["result"] != null))
208 { 208 {
209 if (replyData["result"] is Dictionary<string, object>) 209 if (replyData["result"] is Dictionary<string, object>)
210 guinfo = new GridUserInfo((Dictionary<string, object>)replyData["result"]); 210 guinfo = Create((Dictionary<string, object>)replyData["result"]);
211 } 211 }
212 212
213 return guinfo; 213 return guinfo;
@@ -273,7 +273,7 @@ namespace OpenSim.Services.Connectors
273 { 273 {
274 if (griduser is Dictionary<string, object>) 274 if (griduser is Dictionary<string, object>)
275 { 275 {
276 GridUserInfo pinfo = new GridUserInfo((Dictionary<string, object>)griduser); 276 GridUserInfo pinfo = Create((Dictionary<string, object>)griduser);
277 rinfos.Add(pinfo); 277 rinfos.Add(pinfo);
278 } 278 }
279 else 279 else
@@ -286,5 +286,10 @@ namespace OpenSim.Services.Connectors
286 286
287 return rinfos.ToArray(); 287 return rinfos.ToArray();
288 } 288 }
289
290 protected virtual GridUserInfo Create(Dictionary<string, object> griduser)
291 {
292 return new GridUserInfo(griduser);
293 }
289 } 294 }
290} 295}