aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Framework/Communications/IInventoryServices.cs
diff options
context:
space:
mode:
authorJustin Clarke Casey2008-04-11 18:13:10 +0000
committerJustin Clarke Casey2008-04-11 18:13:10 +0000
commita5176c2e2c4d2791ec15a22db4309bb15bc3ae98 (patch)
treebbadbbd793ebda546831e9541e312d480d5dae0c /OpenSim/Framework/Communications/IInventoryServices.cs
parent* fix bug 935 (diff)
downloadopensim-SC-a5176c2e2c4d2791ec15a22db4309bb15bc3ae98.zip
opensim-SC-a5176c2e2c4d2791ec15a22db4309bb15bc3ae98.tar.gz
opensim-SC-a5176c2e2c4d2791ec15a22db4309bb15bc3ae98.tar.bz2
opensim-SC-a5176c2e2c4d2791ec15a22db4309bb15bc3ae98.tar.xz
* Change inventory async response deliver to deliver all items and folders at once, rather than each individual
* This is required in order to work towards eliminating some inventory race conditions and to better deal with situations where a grid inventory server is slow or not responding.
Diffstat (limited to 'OpenSim/Framework/Communications/IInventoryServices.cs')
-rw-r--r--OpenSim/Framework/Communications/IInventoryServices.cs19
1 files changed, 16 insertions, 3 deletions
diff --git a/OpenSim/Framework/Communications/IInventoryServices.cs b/OpenSim/Framework/Communications/IInventoryServices.cs
index ecc6c71..40e7ffd 100644
--- a/OpenSim/Framework/Communications/IInventoryServices.cs
+++ b/OpenSim/Framework/Communications/IInventoryServices.cs
@@ -26,21 +26,34 @@
26 */ 26 */
27 27
28using System.Collections.Generic; 28using System.Collections.Generic;
29
29using libsecondlife; 30using libsecondlife;
31
30using OpenSim.Framework.Communications.Cache; 32using OpenSim.Framework.Communications.Cache;
31 33
32namespace OpenSim.Framework.Communications 34namespace OpenSim.Framework.Communications
33{ 35{
34 public delegate void InventoryFolderInfo(LLUUID userID, InventoryFolderImpl folderInfo); 36 /// <summary>
37 /// Callback used when a user's inventory is received from the inventory service
38 /// </summary>
39 public delegate void InventoryReceiptCallback(LLUUID userId, ICollection<InventoryFolderImpl> folders, ICollection<InventoryItemBase> items);
40
41 //public delegate void InventoryFolderInfo(LLUUID userID, InventoryFolderImpl folderInfo);
35 42
36 public delegate void InventoryItemInfo(LLUUID userID, InventoryItemBase itemInfo); 43 //public delegate void InventoryItemInfo(LLUUID userID, InventoryItemBase itemInfo);
37 44
38 /// <summary> 45 /// <summary>
39 /// Defines all the operations one can perform on a user's inventory. 46 /// Defines all the operations one can perform on a user's inventory.
40 /// </summary> 47 /// </summary>
41 public interface IInventoryServices 48 public interface IInventoryServices
42 { 49 {
43 void RequestInventoryForUser(LLUUID userID, InventoryFolderInfo folderCallBack, InventoryItemInfo itemCallBack); 50 /// <summary>
51 /// Request the inventory for a user. This is an asynchronous operation that will call the callback when the
52 /// inventory has been received
53 /// </summary>
54 /// <param name="userID"></param>
55 /// <param name="callback"></param>
56 void RequestInventoryForUser(LLUUID userID, InventoryReceiptCallback callback);
44 57
45 /// <summary> 58 /// <summary>
46 /// Add a new folder to the given user's inventory 59 /// Add a new folder to the given user's inventory