aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Framework/Communications/Cache/UserProfileCacheService.cs
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Framework/Communications/Cache/UserProfileCacheService.cs')
-rw-r--r--OpenSim/Framework/Communications/Cache/UserProfileCacheService.cs22
1 files changed, 21 insertions, 1 deletions
diff --git a/OpenSim/Framework/Communications/Cache/UserProfileCacheService.cs b/OpenSim/Framework/Communications/Cache/UserProfileCacheService.cs
index fb4c3a6..342bb0d 100644
--- a/OpenSim/Framework/Communications/Cache/UserProfileCacheService.cs
+++ b/OpenSim/Framework/Communications/Cache/UserProfileCacheService.cs
@@ -136,7 +136,7 @@ namespace OpenSim.Framework.Communications.Cache
136 /// <param name="fetchFolders"></param> 136 /// <param name="fetchFolders"></param>
137 /// <param name="fetchItems"></param> 137 /// <param name="fetchItems"></param>
138 /// <param name="sortOrder"></param> 138 /// <param name="sortOrder"></param>
139 public void HandleFecthInventoryDescendents(IClientAPI remoteClient, LLUUID folderID, LLUUID ownerID, 139 public void HandleFetchInventoryDescendents(IClientAPI remoteClient, LLUUID folderID, LLUUID ownerID,
140 bool fetchFolders, bool fetchItems, int sortOrder) 140 bool fetchFolders, bool fetchItems, int sortOrder)
141 { 141 {
142 InventoryFolderImpl fold = null; 142 InventoryFolderImpl fold = null;
@@ -181,6 +181,26 @@ namespace OpenSim.Framework.Communications.Cache
181 } 181 }
182 } 182 }
183 183
184 public void HandlePurgeInventoryDescendents(IClientAPI remoteClient, LLUUID folderID)
185 {
186 CachedUserInfo userProfile;
187 if (m_userProfiles.TryGetValue(remoteClient.AgentId, out userProfile))
188 {
189 if (userProfile.RootFolder != null)
190 {
191 InventoryFolderImpl subFolder = userProfile.RootFolder.HasSubFolder(folderID);
192 if (subFolder != null)
193 {
194 List<InventoryItemBase> items=subFolder.RequestListOfItems();
195 foreach(InventoryItemBase item in items)
196 {
197 userProfile.DeleteItem(remoteClient.AgentId, item);
198 }
199 }
200 }
201 }
202 }
203
184 public void HandleFetchInventory(IClientAPI remoteClient, LLUUID itemID, LLUUID ownerID) 204 public void HandleFetchInventory(IClientAPI remoteClient, LLUUID itemID, LLUUID ownerID)
185 { 205 {
186 if (ownerID == libraryRoot.agentID) 206 if (ownerID == libraryRoot.agentID)