diff options
Diffstat (limited to 'OpenSim/Region/Environment/Scenes')
-rw-r--r-- | OpenSim/Region/Environment/Scenes/Scene.Inventory.cs | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/OpenSim/Region/Environment/Scenes/Scene.Inventory.cs b/OpenSim/Region/Environment/Scenes/Scene.Inventory.cs index ff4abc7..35618db 100644 --- a/OpenSim/Region/Environment/Scenes/Scene.Inventory.cs +++ b/OpenSim/Region/Environment/Scenes/Scene.Inventory.cs | |||
@@ -158,7 +158,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
158 | /// <param name="itemID"></param> | 158 | /// <param name="itemID"></param> |
159 | /// <param name="data"></param> | 159 | /// <param name="data"></param> |
160 | /// <returns></returns> | 160 | /// <returns></returns> |
161 | public UUID CapsUpdateInventoryItemAsset(IClientAPI remoteClient, UUID itemID, byte[] data) | 161 | public virtual UUID CapsUpdateInventoryItemAsset(IClientAPI remoteClient, UUID itemID, byte[] data) |
162 | { | 162 | { |
163 | CachedUserInfo userInfo = CommsManager.UserProfileCacheService.GetUserDetails(remoteClient.AgentId); | 163 | CachedUserInfo userInfo = CommsManager.UserProfileCacheService.GetUserDetails(remoteClient.AgentId); |
164 | if (userInfo != null) | 164 | if (userInfo != null) |
@@ -405,7 +405,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
405 | /// <param name="recipientClient"></param> | 405 | /// <param name="recipientClient"></param> |
406 | /// <param name="senderId">ID of the sender of the item</param> | 406 | /// <param name="senderId">ID of the sender of the item</param> |
407 | /// <param name="itemId"></param> | 407 | /// <param name="itemId"></param> |
408 | public void GiveInventoryItem(IClientAPI recipientClient, UUID senderId, UUID itemId) | 408 | public virtual void GiveInventoryItem(IClientAPI recipientClient, UUID senderId, UUID itemId) |
409 | { | 409 | { |
410 | // Retrieve the item from the sender | 410 | // Retrieve the item from the sender |
411 | CachedUserInfo senderUserInfo = CommsManager.UserProfileCacheService.GetUserDetails(senderId); | 411 | CachedUserInfo senderUserInfo = CommsManager.UserProfileCacheService.GetUserDetails(senderId); |
@@ -1607,6 +1607,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
1607 | 1607 | ||
1608 | /// <summary> | 1608 | /// <summary> |
1609 | /// Delete a scene object from a scene and place in the given avatar's inventory. | 1609 | /// Delete a scene object from a scene and place in the given avatar's inventory. |
1610 | /// Returns the UUID of the newly created asset. | ||
1610 | /// </summary> | 1611 | /// </summary> |
1611 | /// <param name="DeRezPacket"></param> | 1612 | /// <param name="DeRezPacket"></param> |
1612 | /// <param name="selectedEnt"></param> | 1613 | /// <param name="selectedEnt"></param> |
@@ -1614,10 +1615,12 @@ namespace OpenSim.Region.Environment.Scenes | |||
1614 | /// <param name="objectGroup"></param> | 1615 | /// <param name="objectGroup"></param> |
1615 | /// <param name="folderID"></param> | 1616 | /// <param name="folderID"></param> |
1616 | /// <param name="permissionToDelete"></param> | 1617 | /// <param name="permissionToDelete"></param> |
1617 | public void DeleteToInventory(int destination, UUID folderID, | 1618 | public virtual UUID DeleteToInventory(int destination, UUID folderID, |
1618 | SceneObjectGroup objectGroup, IClientAPI remoteClient, | 1619 | SceneObjectGroup objectGroup, IClientAPI remoteClient, |
1619 | bool permissionToDelete) | 1620 | bool permissionToDelete) |
1620 | { | 1621 | { |
1622 | UUID assetID = UUID.Zero; | ||
1623 | |||
1621 | string sceneObjectXml = objectGroup.ToXmlString(); | 1624 | string sceneObjectXml = objectGroup.ToXmlString(); |
1622 | 1625 | ||
1623 | CachedUserInfo userInfo; | 1626 | CachedUserInfo userInfo; |
@@ -1661,7 +1664,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
1661 | { | 1664 | { |
1662 | CommsManager.UserProfileCacheService.RequestInventoryForUser(objectGroup.RootPart.OwnerID); | 1665 | CommsManager.UserProfileCacheService.RequestInventoryForUser(objectGroup.RootPart.OwnerID); |
1663 | m_log.WarnFormat("[SCENE] Can't find root folder for user, requesting inventory"); | 1666 | m_log.WarnFormat("[SCENE] Can't find root folder for user, requesting inventory"); |
1664 | return; | 1667 | return assetID; |
1665 | } | 1668 | } |
1666 | } | 1669 | } |
1667 | } | 1670 | } |
@@ -1672,6 +1675,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
1672 | (sbyte)AssetType.Object, | 1675 | (sbyte)AssetType.Object, |
1673 | Utils.StringToBytes(sceneObjectXml)); | 1676 | Utils.StringToBytes(sceneObjectXml)); |
1674 | AssetCache.AddAsset(asset); | 1677 | AssetCache.AddAsset(asset); |
1678 | assetID = asset.FullID; | ||
1675 | 1679 | ||
1676 | InventoryItemBase item = new InventoryItemBase(); | 1680 | InventoryItemBase item = new InventoryItemBase(); |
1677 | item.Creator = objectGroup.RootPart.CreatorID; | 1681 | item.Creator = objectGroup.RootPart.CreatorID; |
@@ -1736,6 +1740,8 @@ namespace OpenSim.Region.Environment.Scenes | |||
1736 | // Finally remove the item, for reals this time. | 1740 | // Finally remove the item, for reals this time. |
1737 | if (permissionToDelete) | 1741 | if (permissionToDelete) |
1738 | DeleteSceneObject(objectGroup, false); | 1742 | DeleteSceneObject(objectGroup, false); |
1743 | |||
1744 | return assetID; | ||
1739 | } | 1745 | } |
1740 | 1746 | ||
1741 | public void updateKnownAsset(IClientAPI remoteClient, SceneObjectGroup grp, UUID assetID, UUID agentID) | 1747 | public void updateKnownAsset(IClientAPI remoteClient, SceneObjectGroup grp, UUID assetID, UUID agentID) |