diff options
-rw-r--r-- | OpenSim/Framework/Client/IClientInventory.cs | 1 | ||||
-rw-r--r-- | OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs | 38 |
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>(); |