aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Services
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Services')
-rw-r--r--OpenSim/Services/Connectors/Inventory/XInventoryConnector.cs29
1 files changed, 29 insertions, 0 deletions
diff --git a/OpenSim/Services/Connectors/Inventory/XInventoryConnector.cs b/OpenSim/Services/Connectors/Inventory/XInventoryConnector.cs
index 0cc1978..edf224f 100644
--- a/OpenSim/Services/Connectors/Inventory/XInventoryConnector.cs
+++ b/OpenSim/Services/Connectors/Inventory/XInventoryConnector.cs
@@ -455,6 +455,35 @@ namespace OpenSim.Services.Connectors
455 return int.Parse(ret["RESULT"].ToString()); 455 return int.Parse(ret["RESULT"].ToString());
456 } 456 }
457 457
458 public Dictionary<AssetType, InventoryFolderBase> GetSystemFolders(UUID userID)
459 {
460 Dictionary<string, object> ret = MakeRequest("GETSYSTEMFOLDERS",
461 new Dictionary<string, object> {
462 { "PRINCIPAL", userID.ToString() },
463 });
464
465 if (ret == null)
466 return new Dictionary<AssetType,InventoryFolderBase>();
467
468 Dictionary<AssetType, InventoryFolderBase> sfolders = new Dictionary<AssetType, InventoryFolderBase>();
469
470 try
471 {
472 foreach (KeyValuePair<string, object> kvp in ret)
473 {
474 InventoryFolderBase folder = BuildFolder((Dictionary<string, object>)(kvp.Value));
475 short type = 0;
476 if (Int16.TryParse(kvp.Key, out type))
477 sfolders.Add((AssetType)type, folder);
478 }
479 }
480 catch (Exception e)
481 {
482 m_log.DebugFormat("[XINVENTORY CONNECTOR STUB]: exception {0}", e.Message);
483 }
484
485 return sfolders;
486 }
458 487
459 // These are either obsolete or unused 488 // These are either obsolete or unused
460 // 489 //