From 41839efcc56bd9436f5eb85e68abeba7f606af43 Mon Sep 17 00:00:00 2001 From: Diva Canto Date: Tue, 11 Aug 2009 14:52:17 -0700 Subject: [PATCH] Some more hammering on the head of the obsolete rest inventory handlers, just to make this work. --- .../Inventory/InventoryServerInConnector.cs | 6 ++--- .../Inventory/InventoryServiceConnector.cs | 24 +++++++++++-------- 2 files changed, 17 insertions(+), 13 deletions(-) diff --git a/OpenSim/Server/Handlers/Inventory/InventoryServerInConnector.cs b/OpenSim/Server/Handlers/Inventory/InventoryServerInConnector.cs index ae9546a7ac..8d104ac819 100644 --- a/OpenSim/Server/Handlers/Inventory/InventoryServerInConnector.cs +++ b/OpenSim/Server/Handlers/Inventory/InventoryServerInConnector.cs @@ -85,7 +85,7 @@ namespace OpenSim.Server.Handlers.Inventory "POST", "/GetInventory/", GetUserInventory, CheckAuthSession)); m_httpServer.AddStreamHandler( - new RestDeserialiseSecureHandler>( + new RestDeserialiseSecureHandler>( "POST", "/SystemFolders/", GetSystemFolders, CheckAuthSession)); m_httpServer.AddStreamHandler( @@ -163,10 +163,10 @@ namespace OpenSim.Server.Handlers.Inventory return m_InventoryService.GetUserInventory(userID); } - public Dictionary GetSystemFolders(Guid guid) + public List GetSystemFolders(Guid guid) { UUID userID = new UUID(guid); - return GetSystemFolders(userID); + return new List(GetSystemFolders(userID).Values); } // This shouldn't be here, it should be in the inventory service. diff --git a/OpenSim/Services/Connectors/Inventory/InventoryServiceConnector.cs b/OpenSim/Services/Connectors/Inventory/InventoryServiceConnector.cs index 5fb48156c4..2244a7eba5 100644 --- a/OpenSim/Services/Connectors/Inventory/InventoryServiceConnector.cs +++ b/OpenSim/Services/Connectors/Inventory/InventoryServiceConnector.cs @@ -164,16 +164,20 @@ namespace OpenSim.Services.Connectors public Dictionary GetSystemFolders(string userID, UUID sessionID) { // !!! Not just yet. - //try - //{ - // return SynchronousRestSessionObjectPoster>.BeginPostObject( - // "POST", m_ServerURI + "/SystemFolders/", new Guid(userID), sessionID.ToString(), userID.ToString()); - //} - //catch (Exception e) - //{ - // m_log.ErrorFormat("[INVENTORY CONNECTOR]: GetSystemFolders operation failed, {0} {1}", - // e.Source, e.Message); - //} + try + { + List folders = SynchronousRestSessionObjectPoster>.BeginPostObject( + "POST", m_ServerURI + "/SystemFolders/", new Guid(userID), sessionID.ToString(), userID.ToString()); + Dictionary dFolders = new Dictionary(); + foreach (InventoryFolderBase f in folders) + dFolders[(AssetType)f.Type] = f; + return dFolders; + } + catch (Exception e) + { + m_log.ErrorFormat("[INVENTORY CONNECTOR]: GetSystemFolders operation failed, {0} {1}", + e.Source, e.Message); + } return new Dictionary(); }