aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim
diff options
context:
space:
mode:
authorMelanie2012-03-28 02:10:07 +0100
committerMelanie2012-03-28 02:10:07 +0100
commit8c0f1e905814e93003dd8d78ee54ae947cb3af17 (patch)
tree142096e43806772349334b7e3250b23617543af3 /OpenSim
parentAdd SendRemoveInventoryFolders which allows to remove one or more (diff)
downloadopensim-SC-8c0f1e905814e93003dd8d78ee54ae947cb3af17.zip
opensim-SC-8c0f1e905814e93003dd8d78ee54ae947cb3af17.tar.gz
opensim-SC-8c0f1e905814e93003dd8d78ee54ae947cb3af17.tar.bz2
opensim-SC-8c0f1e905814e93003dd8d78ee54ae947cb3af17.tar.xz
Add a corresponding method for items. HG v2
Diffstat (limited to 'OpenSim')
-rw-r--r--OpenSim/Framework/Client/IClientInventory.cs1
-rw-r--r--OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs38
2 files changed, 39 insertions, 0 deletions
diff --git a/OpenSim/Framework/Client/IClientInventory.cs b/OpenSim/Framework/Client/IClientInventory.cs
index 00651e0..d59f8b7 100644
--- a/OpenSim/Framework/Client/IClientInventory.cs
+++ b/OpenSim/Framework/Client/IClientInventory.cs
@@ -33,5 +33,6 @@ namespace OpenSim.Framework.Client
33 public interface IClientInventory 33 public interface IClientInventory
34 { 34 {
35 void SendRemoveInventoryFolders(UUID[] folders); 35 void SendRemoveInventoryFolders(UUID[] folders);
36 void SendRemoveInventoryItems(UUID[] folders);
36 } 37 }
37} 38}
diff --git a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
index 7ba9eaf..0c1d7f2 100644
--- a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
+++ b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
@@ -12264,6 +12264,44 @@ namespace OpenSim.Region.ClientStack.LindenUDP
12264 OutPacket(reply, ThrottleOutPacketType.Task); 12264 OutPacket(reply, ThrottleOutPacketType.Task);
12265 } 12265 }
12266 12266
12267 public void SendRemoveInventoryItems(UUID[] items)
12268 {
12269 IEventQueue eq = Scene.RequestModuleInterface<IEventQueue>();
12270
12271 if (eq == null)
12272 {
12273 m_log.DebugFormat("[LLCLIENT]: Null event queue");
12274 return;
12275 }
12276
12277 OSDMap llsd = new OSDMap(3);
12278
12279 OSDMap AgentDataMap = new OSDMap(1);
12280 AgentDataMap.Add("AgentID", OSD.FromUUID(AgentId));
12281 AgentDataMap.Add("SessionID", OSD.FromUUID(SessionId));
12282
12283 OSDArray AgentData = new OSDArray(1);
12284 AgentData.Add(AgentDataMap);
12285
12286 llsd.Add("AgentData", AgentData);
12287
12288 OSDArray ItemData = new OSDArray();
12289
12290 foreach (UUID item in items)
12291 {
12292 OSDMap ItemDataMap = new OSDMap(2);
12293 ItemDataMap.Add("ItemID", OSD.FromUUID(item));
12294 ItemDataMap.Add("AgentID", OSD.FromUUID(AgentId));
12295
12296 ItemData.Add(ItemDataMap);
12297 }
12298
12299 llsd.Add("ItemData", ItemData);
12300
12301 eq.Enqueue(BuildEvent("RemoveInventoryItem",
12302 llsd), AgentId);
12303 }
12304
12267 public void SendRemoveInventoryFolders(UUID[] folders) 12305 public void SendRemoveInventoryFolders(UUID[] folders)
12268 { 12306 {
12269 IEventQueue eq = Scene.RequestModuleInterface<IEventQueue>(); 12307 IEventQueue eq = Scene.RequestModuleInterface<IEventQueue>();