diff options
Diffstat (limited to 'OpenSim/Services/Connectors')
4 files changed, 209 insertions, 38 deletions
diff --git a/OpenSim/Services/Connectors/Inventory/HGInventoryServiceConnector.cs b/OpenSim/Services/Connectors/Inventory/HGInventoryServiceConnector.cs index 94b4ad9..1004fb9 100644 --- a/OpenSim/Services/Connectors/Inventory/HGInventoryServiceConnector.cs +++ b/OpenSim/Services/Connectors/Inventory/HGInventoryServiceConnector.cs | |||
@@ -201,6 +201,19 @@ namespace OpenSim.Services.Connectors.Inventory | |||
201 | return false; | 201 | return false; |
202 | } | 202 | } |
203 | 203 | ||
204 | public bool DeleteFolders(string id, List<UUID> folders, UUID sessionID) | ||
205 | { | ||
206 | string url = string.Empty; | ||
207 | string userID = string.Empty; | ||
208 | |||
209 | if (StringToUrlAndUserID(id, out url, out userID)) | ||
210 | { | ||
211 | ISessionAuthInventoryService connector = GetConnector(url); | ||
212 | return connector.DeleteFolders(userID, folders, sessionID); | ||
213 | } | ||
214 | return false; | ||
215 | } | ||
216 | |||
204 | public bool PurgeFolder(string id, InventoryFolderBase folder, UUID sessionID) | 217 | public bool PurgeFolder(string id, InventoryFolderBase folder, UUID sessionID) |
205 | { | 218 | { |
206 | string url = string.Empty; | 219 | string url = string.Empty; |
@@ -214,6 +227,19 @@ namespace OpenSim.Services.Connectors.Inventory | |||
214 | return false; | 227 | return false; |
215 | } | 228 | } |
216 | 229 | ||
230 | public List<InventoryItemBase> GetFolderItems(string id, UUID folderID, UUID sessionID) | ||
231 | { | ||
232 | string url = string.Empty; | ||
233 | string userID = string.Empty; | ||
234 | |||
235 | if (StringToUrlAndUserID(id, out url, out userID)) | ||
236 | { | ||
237 | ISessionAuthInventoryService connector = GetConnector(url); | ||
238 | return connector.GetFolderItems(userID, folderID, sessionID); | ||
239 | } | ||
240 | return new List<InventoryItemBase>(); | ||
241 | } | ||
242 | |||
217 | public bool AddItem(string id, InventoryItemBase item, UUID sessionID) | 243 | public bool AddItem(string id, InventoryItemBase item, UUID sessionID) |
218 | { | 244 | { |
219 | string url = string.Empty; | 245 | string url = string.Empty; |
@@ -240,7 +266,7 @@ namespace OpenSim.Services.Connectors.Inventory | |||
240 | return false; | 266 | return false; |
241 | } | 267 | } |
242 | 268 | ||
243 | public bool DeleteItem(string id, InventoryItemBase item, UUID sessionID) | 269 | public bool MoveItems(string id, List<InventoryItemBase> items, UUID sessionID) |
244 | { | 270 | { |
245 | string url = string.Empty; | 271 | string url = string.Empty; |
246 | string userID = string.Empty; | 272 | string userID = string.Empty; |
@@ -248,7 +274,20 @@ namespace OpenSim.Services.Connectors.Inventory | |||
248 | if (StringToUrlAndUserID(id, out url, out userID)) | 274 | if (StringToUrlAndUserID(id, out url, out userID)) |
249 | { | 275 | { |
250 | ISessionAuthInventoryService connector = GetConnector(url); | 276 | ISessionAuthInventoryService connector = GetConnector(url); |
251 | return connector.UpdateItem(userID, item, sessionID); | 277 | return connector.MoveItems(userID, items, sessionID); |
278 | } | ||
279 | return false; | ||
280 | } | ||
281 | |||
282 | public bool DeleteItems(string id, List<UUID> itemIDs, UUID sessionID) | ||
283 | { | ||
284 | string url = string.Empty; | ||
285 | string userID = string.Empty; | ||
286 | |||
287 | if (StringToUrlAndUserID(id, out url, out userID)) | ||
288 | { | ||
289 | ISessionAuthInventoryService connector = GetConnector(url); | ||
290 | return connector.DeleteItems(userID, itemIDs, sessionID); | ||
252 | } | 291 | } |
253 | return false; | 292 | return false; |
254 | } | 293 | } |
diff --git a/OpenSim/Services/Connectors/Inventory/ISessionAuthInventoryService.cs b/OpenSim/Services/Connectors/Inventory/ISessionAuthInventoryService.cs index f50bcf5..da8c7e2 100644 --- a/OpenSim/Services/Connectors/Inventory/ISessionAuthInventoryService.cs +++ b/OpenSim/Services/Connectors/Inventory/ISessionAuthInventoryService.cs | |||
@@ -89,6 +89,11 @@ namespace OpenSim.Services.Connectors | |||
89 | bool MoveFolder(string userID, InventoryFolderBase folder, UUID session_id); | 89 | bool MoveFolder(string userID, InventoryFolderBase folder, UUID session_id); |
90 | 90 | ||
91 | /// <summary> | 91 | /// <summary> |
92 | /// Delete a list of inventory folders (from trash) | ||
93 | /// </summary> | ||
94 | bool DeleteFolders(string userID, List<UUID> folders, UUID session_id); | ||
95 | |||
96 | /// <summary> | ||
92 | /// Purge an inventory folder of all its items and subfolders. | 97 | /// Purge an inventory folder of all its items and subfolders. |
93 | /// </summary> | 98 | /// </summary> |
94 | /// <param name="folder"></param> | 99 | /// <param name="folder"></param> |
@@ -96,6 +101,13 @@ namespace OpenSim.Services.Connectors | |||
96 | bool PurgeFolder(string userID, InventoryFolderBase folder, UUID session_id); | 101 | bool PurgeFolder(string userID, InventoryFolderBase folder, UUID session_id); |
97 | 102 | ||
98 | /// <summary> | 103 | /// <summary> |
104 | /// Get items from a folder. | ||
105 | /// </summary> | ||
106 | /// <param name="folder"></param> | ||
107 | /// <returns>true if the folder was successfully purged</returns> | ||
108 | List<InventoryItemBase> GetFolderItems(string userID, UUID folderID, UUID session_id); | ||
109 | |||
110 | /// <summary> | ||
99 | /// Add a new item to the user's inventory | 111 | /// Add a new item to the user's inventory |
100 | /// </summary> | 112 | /// </summary> |
101 | /// <param name="item"></param> | 113 | /// <param name="item"></param> |
@@ -109,12 +121,14 @@ namespace OpenSim.Services.Connectors | |||
109 | /// <returns>true if the item was successfully updated</returns> | 121 | /// <returns>true if the item was successfully updated</returns> |
110 | bool UpdateItem(string userID, InventoryItemBase item, UUID session_id); | 122 | bool UpdateItem(string userID, InventoryItemBase item, UUID session_id); |
111 | 123 | ||
124 | bool MoveItems(string userID, List<InventoryItemBase> items, UUID session_id); | ||
125 | |||
112 | /// <summary> | 126 | /// <summary> |
113 | /// Delete an item from the user's inventory | 127 | /// Delete an item from the user's inventory |
114 | /// </summary> | 128 | /// </summary> |
115 | /// <param name="item"></param> | 129 | /// <param name="item"></param> |
116 | /// <returns>true if the item was successfully deleted</returns> | 130 | /// <returns>true if the item was successfully deleted</returns> |
117 | bool DeleteItem(string userID, InventoryItemBase item, UUID session_id); | 131 | bool DeleteItems(string userID, List<UUID> itemIDs, UUID session_id); |
118 | 132 | ||
119 | InventoryItemBase QueryItem(string userID, InventoryItemBase item, UUID session_id); | 133 | InventoryItemBase QueryItem(string userID, InventoryItemBase item, UUID session_id); |
120 | 134 | ||
diff --git a/OpenSim/Services/Connectors/Inventory/InventoryServiceConnector.cs b/OpenSim/Services/Connectors/Inventory/InventoryServiceConnector.cs index 5d94eac..a2261ba 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 | } |
@@ -223,51 +229,56 @@ namespace OpenSim.Services.Connectors | |||
223 | return SynchronousRestSessionObjectPoster<Guid, InventoryCollection>.BeginPostObject( | 229 | return SynchronousRestSessionObjectPoster<Guid, InventoryCollection>.BeginPostObject( |
224 | "POST", m_ServerURI + "/GetFolderContent/", folderID.Guid, sessionID.ToString(), userID.ToString()); | 230 | "POST", m_ServerURI + "/GetFolderContent/", folderID.Guid, sessionID.ToString(), userID.ToString()); |
225 | } | 231 | } |
232 | catch (TimeoutException e) | ||
233 | { | ||
234 | m_log.ErrorFormat("[INVENTORY CONNECTOR]: GetFolderContent operation to {0} timed out {0} {1}.", m_ServerURI, | ||
235 | e.Source, e.Message); | ||
236 | } | ||
226 | catch (Exception e) | 237 | catch (Exception e) |
227 | { | 238 | { |
228 | // Maybe we're talking to an old inventory server. Try this other thing. | 239 | // 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.", | 240 | m_log.ErrorFormat("[INVENTORY CONNECTOR]: GetFolderContent operation failed, {0} {1} (old server?). Trying GetInventory.", |
230 | e.Source, e.Message); | 241 | e.Source, e.Message); |
231 | 242 | ||
243 | InventoryCollection inventory; | ||
232 | List<InventoryFolderBase> folders = null; | 244 | List<InventoryFolderBase> folders = null; |
233 | try | 245 | try |
234 | { | 246 | { |
235 | folders = SynchronousRestSessionObjectPoster<Guid, List<InventoryFolderBase>>.BeginPostObject( | 247 | inventory = SynchronousRestSessionObjectPoster<Guid, InventoryCollection>.BeginPostObject( |
236 | "POST", m_ServerURI + "/RootFolders/", new Guid(userID), sessionID.ToString(), userID.ToString()); | 248 | "POST", m_ServerURI + "/GetInventory/", new Guid(userID), sessionID.ToString(), userID.ToString()); |
249 | if (inventory != null) | ||
250 | folders = inventory.Folders; | ||
237 | } | 251 | } |
238 | catch (Exception ex) | 252 | catch (Exception ex) |
239 | { | 253 | { |
240 | m_log.ErrorFormat("[INVENTORY CONNECTOR]: RootFolders operation also failed, {0} {1}. Give up.", | 254 | m_log.ErrorFormat("[INVENTORY CONNECTOR]: GetInventory operation also failed, {0} {1}. Giving up.", |
241 | e.Source, ex.Message); | 255 | e.Source, ex.Message); |
256 | return new InventoryCollection(); | ||
242 | } | 257 | } |
243 | 258 | ||
244 | if ((folders != null) && (folders.Count > 0)) | 259 | if ((folders != null) && (folders.Count > 0)) |
245 | { | 260 | { |
246 | folders = folders.FindAll(delegate (InventoryFolderBase f) { return f.ParentID == folderID ; }); | 261 | m_log.DebugFormat("[INVENTORY CONNECTOR]: Received entire inventory ({0} folders) for user {1}", |
247 | 262 | folders.Count, userID); | |
248 | try | ||
249 | { | ||
250 | List<InventoryItemBase> items = SynchronousRestSessionObjectPoster<Guid, List<InventoryItemBase>>.BeginPostObject( | ||
251 | "POST", m_ServerURI + "/GetItems/", folderID.Guid, sessionID.ToString(), userID.ToString()); | ||
252 | 263 | ||
253 | if (items != null) | 264 | folders = folders.FindAll(delegate(InventoryFolderBase f) { return f.ParentID == folderID; }); |
254 | { | 265 | List<InventoryItemBase> items = inventory.Items; |
255 | InventoryCollection result = new InventoryCollection(); | 266 | if (items != null) |
256 | result.Folders = folders; | ||
257 | result.Items = items; | ||
258 | result.UserID = new UUID(userID); | ||
259 | return result; | ||
260 | } | ||
261 | } | ||
262 | catch (Exception ex) | ||
263 | { | 267 | { |
264 | m_log.ErrorFormat("[INVENTORY CONNECTOR]: QueryFolder and GetItems operation failed, {0} {1}. Give up.", | 268 | items = items.FindAll(delegate(InventoryItemBase i) { return i.Folder == folderID; }); |
265 | e.Source, ex.Message); | ||
266 | } | 269 | } |
270 | |||
271 | inventory.Items = items; | ||
272 | inventory.Folders = folders; | ||
273 | return inventory; | ||
267 | } | 274 | } |
268 | } | 275 | } |
269 | 276 | ||
270 | return null; | 277 | InventoryCollection nullCollection = new InventoryCollection(); |
278 | nullCollection.Folders = new List<InventoryFolderBase>(); | ||
279 | nullCollection.Items = new List<InventoryItemBase>(); | ||
280 | nullCollection.UserID = new UUID(userID); | ||
281 | return nullCollection; | ||
271 | } | 282 | } |
272 | 283 | ||
273 | public bool AddFolder(string userID, InventoryFolderBase folder, UUID sessionID) | 284 | public bool AddFolder(string userID, InventoryFolderBase folder, UUID sessionID) |
@@ -302,6 +313,25 @@ namespace OpenSim.Services.Connectors | |||
302 | return false; | 313 | return false; |
303 | } | 314 | } |
304 | 315 | ||
316 | public bool DeleteFolders(string userID, List<UUID> folderIDs, UUID sessionID) | ||
317 | { | ||
318 | try | ||
319 | { | ||
320 | List<Guid> guids = new List<Guid>(); | ||
321 | foreach (UUID u in folderIDs) | ||
322 | guids.Add(u.Guid); | ||
323 | return SynchronousRestSessionObjectPoster<List<Guid>, bool>.BeginPostObject( | ||
324 | "POST", m_ServerURI + "/DeleteFolders/", guids, sessionID.ToString(), userID); | ||
325 | } | ||
326 | catch (Exception e) | ||
327 | { | ||
328 | m_log.ErrorFormat("[INVENTORY CONNECTOR]: Delete inventory folders operation failed, {0} {1}", | ||
329 | e.Source, e.Message); | ||
330 | } | ||
331 | |||
332 | return false; | ||
333 | } | ||
334 | |||
305 | public bool MoveFolder(string userID, InventoryFolderBase folder, UUID sessionID) | 335 | public bool MoveFolder(string userID, InventoryFolderBase folder, UUID sessionID) |
306 | { | 336 | { |
307 | try | 337 | try |
@@ -334,6 +364,23 @@ namespace OpenSim.Services.Connectors | |||
334 | return false; | 364 | return false; |
335 | } | 365 | } |
336 | 366 | ||
367 | public List<InventoryItemBase> GetFolderItems(string userID, UUID folderID, UUID sessionID) | ||
368 | { | ||
369 | try | ||
370 | { | ||
371 | InventoryFolderBase folder = new InventoryFolderBase(folderID, new UUID(userID)); | ||
372 | return SynchronousRestSessionObjectPoster<InventoryFolderBase, List<InventoryItemBase>>.BeginPostObject( | ||
373 | "POST", m_ServerURI + "/GetItems/", folder, sessionID.ToString(), userID); | ||
374 | } | ||
375 | catch (Exception e) | ||
376 | { | ||
377 | m_log.ErrorFormat("[INVENTORY CONNECTOR]: Get folder items operation failed, {0} {1}", | ||
378 | e.Source, e.Message); | ||
379 | } | ||
380 | |||
381 | return null; | ||
382 | } | ||
383 | |||
337 | public bool AddItem(string userID, InventoryItemBase item, UUID sessionID) | 384 | public bool AddItem(string userID, InventoryItemBase item, UUID sessionID) |
338 | { | 385 | { |
339 | try | 386 | try |
@@ -366,12 +413,72 @@ namespace OpenSim.Services.Connectors | |||
366 | return false; | 413 | return false; |
367 | } | 414 | } |
368 | 415 | ||
369 | public bool DeleteItem(string userID, InventoryItemBase item, UUID sessionID) | 416 | /** |
417 | * MoveItems Async group | ||
418 | */ | ||
419 | |||
420 | delegate void MoveItemsDelegate(string userID, List<InventoryItemBase> items, UUID sessionID); | ||
421 | |||
422 | private void MoveItemsAsync(string userID, List<InventoryItemBase> items, UUID sessionID) | ||
370 | { | 423 | { |
424 | if (items == null) | ||
425 | { | ||
426 | m_log.WarnFormat("[INVENTORY CONNECTOR]: request to move items got a null list."); | ||
427 | return; | ||
428 | } | ||
429 | |||
371 | try | 430 | try |
372 | { | 431 | { |
373 | return SynchronousRestSessionObjectPoster<InventoryItemBase, bool>.BeginPostObject( | 432 | //SynchronousRestSessionObjectPoster<List<InventoryItemBase>, bool>.BeginPostObject( |
374 | "POST", m_ServerURI + "/DeleteItem/", item, sessionID.ToString(), item.Owner.ToString()); | 433 | // "POST", m_ServerURI + "/MoveItems/", items, sessionID.ToString(), userID.ToString()); |
434 | |||
435 | //// Success | ||
436 | //return; | ||
437 | string uri = m_ServerURI + "/inventory/" + userID; | ||
438 | if (SynchronousRestObjectRequester. | ||
439 | MakeRequest<List<InventoryItemBase>, bool>("PUT", uri, items)) | ||
440 | m_log.DebugFormat("[INVENTORY CONNECTOR]: move {0} items poster succeeded {1}", items.Count, uri); | ||
441 | else | ||
442 | m_log.DebugFormat("[INVENTORY CONNECTOR]: move {0} items poster failed {1}", items.Count, uri); ; | ||
443 | |||
444 | return; | ||
445 | |||
446 | } | ||
447 | catch (Exception e) | ||
448 | { | ||
449 | m_log.ErrorFormat("[INVENTORY CONNECTOR]: Move inventory items operation failed, {0} {1} (old server?). Trying slow way.", | ||
450 | e.Source, e.Message); | ||
451 | } | ||
452 | |||
453 | foreach (InventoryItemBase item in items) | ||
454 | { | ||
455 | InventoryItemBase itm = this.QueryItem(userID, item, sessionID); | ||
456 | itm.Name = item.Name; | ||
457 | itm.Folder = item.Folder; | ||
458 | this.UpdateItem(userID, itm, sessionID); | ||
459 | } | ||
460 | } | ||
461 | |||
462 | private void MoveItemsCompleted(IAsyncResult iar) | ||
463 | { | ||
464 | } | ||
465 | |||
466 | public bool MoveItems(string userID, List<InventoryItemBase> items, UUID sessionID) | ||
467 | { | ||
468 | MoveItemsDelegate d = MoveItemsAsync; | ||
469 | d.BeginInvoke(userID, items, sessionID, MoveItemsCompleted, d); | ||
470 | return true; | ||
471 | } | ||
472 | |||
473 | public bool DeleteItems(string userID, List<UUID> items, UUID sessionID) | ||
474 | { | ||
475 | try | ||
476 | { | ||
477 | List<Guid> guids = new List<Guid>(); | ||
478 | foreach (UUID u in items) | ||
479 | guids.Add(u.Guid); | ||
480 | return SynchronousRestSessionObjectPoster<List<Guid>, bool>.BeginPostObject( | ||
481 | "POST", m_ServerURI + "/DeleteItem/", guids, sessionID.ToString(), userID); | ||
375 | } | 482 | } |
376 | catch (Exception e) | 483 | catch (Exception e) |
377 | { | 484 | { |
@@ -398,12 +505,12 @@ namespace OpenSim.Services.Connectors | |||
398 | return null; | 505 | return null; |
399 | } | 506 | } |
400 | 507 | ||
401 | public InventoryFolderBase QueryFolder(string userID, InventoryFolderBase item, UUID sessionID) | 508 | public InventoryFolderBase QueryFolder(string userID, InventoryFolderBase folder, UUID sessionID) |
402 | { | 509 | { |
403 | try | 510 | try |
404 | { | 511 | { |
405 | return SynchronousRestSessionObjectPoster<InventoryFolderBase, InventoryFolderBase>.BeginPostObject( | 512 | return SynchronousRestSessionObjectPoster<InventoryFolderBase, InventoryFolderBase>.BeginPostObject( |
406 | "POST", m_ServerURI + "/QueryFolder/", item, sessionID.ToString(), item.Owner.ToString()); | 513 | "POST", m_ServerURI + "/QueryFolder/", folder, sessionID.ToString(), userID); |
407 | } | 514 | } |
408 | catch (Exception e) | 515 | catch (Exception e) |
409 | { | 516 | { |
diff --git a/OpenSim/Services/Connectors/Inventory/QuickAndDirtyInventoryServiceConnector.cs b/OpenSim/Services/Connectors/Inventory/QuickAndDirtyInventoryServiceConnector.cs index 5cbd307..a7aa138 100644 --- a/OpenSim/Services/Connectors/Inventory/QuickAndDirtyInventoryServiceConnector.cs +++ b/OpenSim/Services/Connectors/Inventory/QuickAndDirtyInventoryServiceConnector.cs | |||
@@ -136,6 +136,12 @@ namespace OpenSim.Services.Connectors | |||
136 | return false; | 136 | return false; |
137 | } | 137 | } |
138 | 138 | ||
139 | public bool DeleteFolders(UUID ownerID, List<UUID> folderIDs) | ||
140 | { | ||
141 | return false; | ||
142 | } | ||
143 | |||
144 | |||
139 | public bool PurgeFolder(InventoryFolderBase folder) | 145 | public bool PurgeFolder(InventoryFolderBase folder) |
140 | { | 146 | { |
141 | return false; | 147 | return false; |
@@ -151,7 +157,12 @@ namespace OpenSim.Services.Connectors | |||
151 | return false; | 157 | return false; |
152 | } | 158 | } |
153 | 159 | ||
154 | public bool DeleteItem(InventoryItemBase item) | 160 | public bool MoveItems(UUID ownerID, List<InventoryItemBase> items) |
161 | { | ||
162 | return false; | ||
163 | } | ||
164 | |||
165 | public bool DeleteItems(UUID owner, List<UUID> itemIDs) | ||
155 | { | 166 | { |
156 | return false; | 167 | return false; |
157 | } | 168 | } |