diff options
Diffstat (limited to 'OpenSim/Services')
3 files changed, 43 insertions, 37 deletions
diff --git a/OpenSim/Services/AssetService/AssetService.cs b/OpenSim/Services/AssetService/AssetService.cs index fe663eb..88a905c 100644 --- a/OpenSim/Services/AssetService/AssetService.cs +++ b/OpenSim/Services/AssetService/AssetService.cs | |||
@@ -83,7 +83,7 @@ namespace OpenSim.Services.AssetService | |||
83 | if (!UUID.TryParse(id, out assetID)) | 83 | if (!UUID.TryParse(id, out assetID)) |
84 | return null; | 84 | return null; |
85 | 85 | ||
86 | return m_Database.FetchAsset(assetID); | 86 | return m_Database.GetAsset(assetID); |
87 | } | 87 | } |
88 | 88 | ||
89 | public AssetMetadata GetMetadata(string id) | 89 | public AssetMetadata GetMetadata(string id) |
@@ -93,7 +93,7 @@ namespace OpenSim.Services.AssetService | |||
93 | if (!UUID.TryParse(id, out assetID)) | 93 | if (!UUID.TryParse(id, out assetID)) |
94 | return null; | 94 | return null; |
95 | 95 | ||
96 | AssetBase asset = m_Database.FetchAsset(assetID); | 96 | AssetBase asset = m_Database.GetAsset(assetID); |
97 | return asset.Metadata; | 97 | return asset.Metadata; |
98 | } | 98 | } |
99 | 99 | ||
@@ -104,7 +104,7 @@ namespace OpenSim.Services.AssetService | |||
104 | if (!UUID.TryParse(id, out assetID)) | 104 | if (!UUID.TryParse(id, out assetID)) |
105 | return null; | 105 | return null; |
106 | 106 | ||
107 | AssetBase asset = m_Database.FetchAsset(assetID); | 107 | AssetBase asset = m_Database.GetAsset(assetID); |
108 | return asset.Data; | 108 | return asset.Data; |
109 | } | 109 | } |
110 | 110 | ||
@@ -117,7 +117,7 @@ namespace OpenSim.Services.AssetService | |||
117 | if (!UUID.TryParse(id, out assetID)) | 117 | if (!UUID.TryParse(id, out assetID)) |
118 | return false; | 118 | return false; |
119 | 119 | ||
120 | AssetBase asset = m_Database.FetchAsset(assetID); | 120 | AssetBase asset = m_Database.GetAsset(assetID); |
121 | 121 | ||
122 | //m_log.DebugFormat("[AssetService]: Got asset {0}", asset); | 122 | //m_log.DebugFormat("[AssetService]: Got asset {0}", asset); |
123 | 123 | ||
@@ -129,7 +129,7 @@ namespace OpenSim.Services.AssetService | |||
129 | public string Store(AssetBase asset) | 129 | public string Store(AssetBase asset) |
130 | { | 130 | { |
131 | //m_log.DebugFormat("[ASSET SERVICE]: Store asset {0} {1}", asset.Name, asset.ID); | 131 | //m_log.DebugFormat("[ASSET SERVICE]: Store asset {0} {1}", asset.Name, asset.ID); |
132 | m_Database.CreateAsset(asset); | 132 | m_Database.StoreAsset(asset); |
133 | 133 | ||
134 | return asset.ID; | 134 | return asset.ID; |
135 | } | 135 | } |
diff --git a/OpenSim/Services/Connectors/Inventory/InventoryServiceConnector.cs b/OpenSim/Services/Connectors/Inventory/InventoryServiceConnector.cs index bcf9d87..b573a06 100644 --- a/OpenSim/Services/Connectors/Inventory/InventoryServiceConnector.cs +++ b/OpenSim/Services/Connectors/Inventory/InventoryServiceConnector.cs | |||
@@ -178,30 +178,36 @@ namespace OpenSim.Services.Connectors | |||
178 | catch (Exception e) | 178 | catch (Exception e) |
179 | { | 179 | { |
180 | // Maybe we're talking to an old inventory server. Try this other thing. | 180 | // Maybe we're talking to an old inventory server. Try this other thing. |
181 | m_log.ErrorFormat("[INVENTORY CONNECTOR]: GetSystemFolders operation failed, {0} {1}. Trying RootFolders.", | 181 | m_log.ErrorFormat("[INVENTORY CONNECTOR]: GetSystemFolders operation failed, {0} {1} (old sever?). Trying GetInventory.", |
182 | e.Source, e.Message); | 182 | e.Source, e.Message); |
183 | 183 | ||
184 | try | 184 | try |
185 | { | 185 | { |
186 | folders = SynchronousRestSessionObjectPoster<Guid, List<InventoryFolderBase>>.BeginPostObject( | 186 | InventoryCollection inventory = SynchronousRestSessionObjectPoster<Guid, InventoryCollection>.BeginPostObject( |
187 | "POST", m_ServerURI + "/RootFolders/", new Guid(userID), sessionID.ToString(), userID.ToString()); | 187 | "POST", m_ServerURI + "/GetInventory/", new Guid(userID), sessionID.ToString(), userID.ToString()); |
188 | folders = inventory.Folders; | ||
188 | } | 189 | } |
189 | catch (Exception ex) | 190 | catch (Exception ex) |
190 | { | 191 | { |
191 | m_log.ErrorFormat("[INVENTORY CONNECTOR]: RootFolders operation also failed, {0} {1}. Give up.", | 192 | m_log.ErrorFormat("[INVENTORY CONNECTOR]: GetInventory operation also failed, {0} {1}. Giving up.", |
192 | e.Source, ex.Message); | 193 | e.Source, ex.Message); |
193 | } | 194 | } |
194 | 195 | ||
195 | if ((folders != null) && (folders.Count > 0)) | 196 | if ((folders != null) && (folders.Count > 0)) |
196 | { | 197 | { |
197 | dFolders[AssetType.Folder] = folders[0]; // Root folder is the first one | 198 | m_log.DebugFormat("[INVENTORY CONNECTOR]: Received entire inventory ({0} folders) for user {1}", |
198 | folders.RemoveAt(0); | 199 | folders.Count, userID); |
199 | foreach (InventoryFolderBase f in folders) | 200 | foreach (InventoryFolderBase f in folders) |
200 | { | 201 | { |
201 | if ((f.Type != (short)AssetType.Folder) && (f.Type != (short)AssetType.Unknown)) | 202 | if ((f.Type != (short)AssetType.Folder) && (f.Type != (short)AssetType.Unknown)) |
202 | dFolders[(AssetType)f.Type] = f; | 203 | dFolders[(AssetType)f.Type] = f; |
203 | } | 204 | } |
204 | 205 | ||
206 | UUID rootFolderID = dFolders[AssetType.Animation].ParentID; | ||
207 | InventoryFolderBase rootFolder = new InventoryFolderBase(rootFolderID, new UUID(userID)); | ||
208 | rootFolder = QueryFolder(userID, rootFolder, sessionID); | ||
209 | dFolders[AssetType.Folder] = rootFolder; | ||
210 | m_log.DebugFormat("[INVENTORY CONNECTOR]: {0} system folders for user {1}", dFolders.Count, userID); | ||
205 | return dFolders; | 211 | return dFolders; |
206 | } | 212 | } |
207 | } | 213 | } |
@@ -226,48 +232,48 @@ namespace OpenSim.Services.Connectors | |||
226 | catch (Exception e) | 232 | catch (Exception e) |
227 | { | 233 | { |
228 | // Maybe we're talking to an old inventory server. Try this other thing. | 234 | // Maybe we're talking to an old inventory server. Try this other thing. |
229 | m_log.ErrorFormat("[INVENTORY CONNECTOR]: GetFolderForType operation failed, {0} {1}. Trying RootFolders and GetItems.", | 235 | m_log.ErrorFormat("[INVENTORY CONNECTOR]: GetFolderContent operation failed, {0} {1} (old server?). Trying GetInventory.", |
230 | e.Source, e.Message); | 236 | e.Source, e.Message); |
231 | 237 | ||
238 | InventoryCollection inventory; | ||
232 | List<InventoryFolderBase> folders = null; | 239 | List<InventoryFolderBase> folders = null; |
233 | try | 240 | try |
234 | { | 241 | { |
235 | folders = SynchronousRestSessionObjectPoster<Guid, List<InventoryFolderBase>>.BeginPostObject( | 242 | inventory = SynchronousRestSessionObjectPoster<Guid, InventoryCollection>.BeginPostObject( |
236 | "POST", m_ServerURI + "/RootFolders/", new Guid(userID), sessionID.ToString(), userID.ToString()); | 243 | "POST", m_ServerURI + "/GetInventory/", new Guid(userID), sessionID.ToString(), userID.ToString()); |
244 | if (inventory != null) | ||
245 | folders = inventory.Folders; | ||
237 | } | 246 | } |
238 | catch (Exception ex) | 247 | catch (Exception ex) |
239 | { | 248 | { |
240 | m_log.ErrorFormat("[INVENTORY CONNECTOR]: RootFolders operation also failed, {0} {1}. Give up.", | 249 | m_log.ErrorFormat("[INVENTORY CONNECTOR]: GetInventory operation also failed, {0} {1}. Giving up.", |
241 | e.Source, ex.Message); | 250 | e.Source, ex.Message); |
251 | return new InventoryCollection(); | ||
242 | } | 252 | } |
243 | 253 | ||
244 | if ((folders != null) && (folders.Count > 0)) | 254 | if ((folders != null) && (folders.Count > 0)) |
245 | { | 255 | { |
246 | folders = folders.FindAll(delegate (InventoryFolderBase f) { return f.ParentID == folderID ; }); | 256 | m_log.DebugFormat("[INVENTORY CONNECTOR]: Received entire inventory ({0} folders) for user {1}", |
257 | folders.Count, userID); | ||
247 | 258 | ||
248 | try | 259 | folders = folders.FindAll(delegate(InventoryFolderBase f) { return f.ParentID == folderID; }); |
260 | List<InventoryItemBase> items = inventory.Items; | ||
261 | if (items != null) | ||
249 | { | 262 | { |
250 | List<InventoryItemBase> items = SynchronousRestSessionObjectPoster<Guid, List<InventoryItemBase>>.BeginPostObject( | 263 | items = items.FindAll(delegate(InventoryItemBase i) { return i.Folder == folderID; }); |
251 | "POST", m_ServerURI + "/GetItems/", folderID.Guid, sessionID.ToString(), userID.ToString()); | ||
252 | |||
253 | if (items != null) | ||
254 | { | ||
255 | InventoryCollection result = new InventoryCollection(); | ||
256 | result.Folders = folders; | ||
257 | result.Items = items; | ||
258 | result.UserID = new UUID(userID); | ||
259 | return result; | ||
260 | } | ||
261 | } | ||
262 | catch (Exception ex) | ||
263 | { | ||
264 | m_log.ErrorFormat("[INVENTORY CONNECTOR]: QueryFolder and GetItems operation failed, {0} {1}. Give up.", | ||
265 | e.Source, ex.Message); | ||
266 | } | 264 | } |
265 | |||
266 | inventory.Items = items; | ||
267 | inventory.Folders = folders; | ||
268 | return inventory; | ||
267 | } | 269 | } |
268 | } | 270 | } |
269 | 271 | ||
270 | return null; | 272 | InventoryCollection nullCollection = new InventoryCollection(); |
273 | nullCollection.Folders = new List<InventoryFolderBase>(); | ||
274 | nullCollection.Items = new List<InventoryItemBase>(); | ||
275 | nullCollection.UserID = new UUID(userID); | ||
276 | return nullCollection; | ||
271 | } | 277 | } |
272 | 278 | ||
273 | public bool AddFolder(string userID, InventoryFolderBase folder, UUID sessionID) | 279 | public bool AddFolder(string userID, InventoryFolderBase folder, UUID sessionID) |
diff --git a/OpenSim/Services/InventoryService/InventoryService.cs b/OpenSim/Services/InventoryService/InventoryService.cs index e0217f6..6310254 100644 --- a/OpenSim/Services/InventoryService/InventoryService.cs +++ b/OpenSim/Services/InventoryService/InventoryService.cs | |||
@@ -420,16 +420,16 @@ namespace OpenSim.Services.InventoryService | |||
420 | 420 | ||
421 | public virtual InventoryItemBase GetItem(InventoryItemBase item) | 421 | public virtual InventoryItemBase GetItem(InventoryItemBase item) |
422 | { | 422 | { |
423 | InventoryItemBase result = m_Database.queryInventoryItem(item.ID); | 423 | InventoryItemBase result = m_Database.getInventoryItem(item.ID); |
424 | if (result != null) | 424 | if (result != null) |
425 | return result; | 425 | return result; |
426 | 426 | m_log.DebugFormat("[INVENTORY SERVICE]: GetItem failed to find item {0}", item.ID); | |
427 | return null; | 427 | return null; |
428 | } | 428 | } |
429 | 429 | ||
430 | public virtual InventoryFolderBase GetFolder(InventoryFolderBase item) | 430 | public virtual InventoryFolderBase GetFolder(InventoryFolderBase item) |
431 | { | 431 | { |
432 | InventoryFolderBase result = m_Database.queryInventoryFolder(item.ID); | 432 | InventoryFolderBase result = m_Database.getInventoryFolder(item.ID); |
433 | if (result != null) | 433 | if (result != null) |
434 | return result; | 434 | return result; |
435 | 435 | ||