aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region
diff options
context:
space:
mode:
authorDiva Canto2009-08-10 20:31:51 -0700
committerDiva Canto2009-08-10 20:31:51 -0700
commitcdcbc48534f19afe7cbdeb6c690e6b7d9f2ff099 (patch)
tree4d42dff30b4ca8d9f770209c257484c1a2295ddf /OpenSim/Region
parentMerge branch 'master' of ssh://diva@opensimulator.org/var/git/opensim (diff)
downloadopensim-SC-cdcbc48534f19afe7cbdeb6c690e6b7d9f2ff099.zip
opensim-SC-cdcbc48534f19afe7cbdeb6c690e6b7d9f2ff099.tar.gz
opensim-SC-cdcbc48534f19afe7cbdeb6c690e6b7d9f2ff099.tar.bz2
opensim-SC-cdcbc48534f19afe7cbdeb6c690e6b7d9f2ff099.tar.xz
Added two new methods to IIventoryService -- GetFolderForType and GetFolderContent. Some meat to it, but not completed. None of this code is called anywhere yet.
Diffstat (limited to 'OpenSim/Region')
-rw-r--r--OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/HGInventoryBroker.cs26
-rw-r--r--OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/LocalInventoryServiceConnector.cs11
-rw-r--r--OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/RemoteInventoryServiceConnector.cs38
3 files changed, 75 insertions, 0 deletions
diff --git a/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/HGInventoryBroker.cs b/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/HGInventoryBroker.cs
index b3c5396..f5e6824 100644
--- a/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/HGInventoryBroker.cs
+++ b/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/HGInventoryBroker.cs
@@ -201,6 +201,32 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Inventory
201 } 201 }
202 } 202 }
203 203
204 public InventoryFolderBase GetFolderForType(UUID userID, AssetType type)
205 {
206 if (IsLocalGridUser(userID))
207 return m_GridService.GetFolderForType(userID, type);
208 else
209 {
210 UUID sessionID = GetSessionID(userID);
211 string uri = GetUserInventoryURI(userID) + "/" + userID.ToString();
212 // !!!!!!
213 return null;
214 //return m_HGService.GetFolderForType(uri, sessionID, type);
215 }
216 }
217
218 public InventoryCollection GetFolderContent(UUID userID, UUID folderID)
219 {
220 if (IsLocalGridUser(userID))
221 return m_GridService.GetFolderContent(userID, folderID);
222 else
223 {
224 UUID sessionID = GetSessionID(userID);
225 string uri = GetUserInventoryURI(userID) + "/" + userID.ToString();
226 return m_HGService.GetFolderContent(uri, folderID, sessionID);
227 }
228 }
229
204 public List<InventoryItemBase> GetFolderItems(UUID userID, UUID folderID) 230 public List<InventoryItemBase> GetFolderItems(UUID userID, UUID folderID)
205 { 231 {
206 return new List<InventoryItemBase>(); 232 return new List<InventoryItemBase>();
diff --git a/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/LocalInventoryServiceConnector.cs b/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/LocalInventoryServiceConnector.cs
index cb20f35..bab0044 100644
--- a/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/LocalInventoryServiceConnector.cs
+++ b/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/LocalInventoryServiceConnector.cs
@@ -176,6 +176,17 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Inventory
176 m_InventoryService.GetUserInventory(userID, callback); 176 m_InventoryService.GetUserInventory(userID, callback);
177 } 177 }
178 178
179 public InventoryFolderBase GetFolderForType(UUID userID, AssetType type)
180 {
181 return m_InventoryService.GetFolderForType(userID, type);
182 }
183
184 public InventoryCollection GetFolderContent(UUID userID, UUID folderID)
185 {
186 return m_InventoryService.GetFolderContent(userID, folderID);
187 }
188
189
179 public List<InventoryItemBase> GetFolderItems(UUID userID, UUID folderID) 190 public List<InventoryItemBase> GetFolderItems(UUID userID, UUID folderID)
180 { 191 {
181 return m_InventoryService.GetFolderItems(userID, folderID); 192 return m_InventoryService.GetFolderItems(userID, folderID);
diff --git a/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/RemoteInventoryServiceConnector.cs b/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/RemoteInventoryServiceConnector.cs
index b544138..2064558 100644
--- a/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/RemoteInventoryServiceConnector.cs
+++ b/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/RemoteInventoryServiceConnector.cs
@@ -168,6 +168,44 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Inventory
168 168
169 } 169 }
170 170
171 public InventoryFolderBase GetFolderForType(UUID userID, AssetType type)
172 {
173 //UUID sessionID = GetSessionID(userID);
174 //List<InventoryFolderBase> sysFolders;
175 //try
176 //{
177 // sysFolders = m_RemoteConnector.GetSystemFolders(userID.ToString(), sessionID);
178 //}
179 //catch (Exception e)
180 //{
181 // m_log.ErrorFormat("[INVENTORY CONNECTOR]: GetFolderForType operation failed, {0} {1}",
182 // e.Source, e.Message);
183 //}
184
185 // PLACEHOLDER UNTIL CACHE IS DONE
186 return null;
187
188 }
189
190 public InventoryCollection GetFolderContent(UUID userID, UUID folderID)
191 {
192 UUID sessionID = GetSessionID(userID);
193 try
194 {
195 return m_RemoteConnector.GetFolderContent(userID.ToString(), folderID, sessionID);
196 }
197 catch (Exception e)
198 {
199 m_log.ErrorFormat("[INVENTORY CONNECTOR]: GetFolderContent operation failed, {0} {1}",
200 e.Source, e.Message);
201 }
202 InventoryCollection nullCollection = new InventoryCollection();
203 nullCollection.Folders = new List<InventoryFolderBase>();
204 nullCollection.Items = new List<InventoryItemBase>();
205 nullCollection.UserID = userID;
206 return nullCollection;
207 }
208
171 public List<InventoryItemBase> GetFolderItems(UUID userID, UUID folderID) 209 public List<InventoryItemBase> GetFolderItems(UUID userID, UUID folderID)
172 { 210 {
173 return new List<InventoryItemBase>(); 211 return new List<InventoryItemBase>();