OpenSim.Region.Framework.Scenes.Scene.ClientMoveTaskInventoryItem C# (CSharp) Method

ClientMoveTaskInventoryItem() public method

ClientMoveTaskInventoryItem
public ClientMoveTaskInventoryItem ( IClientAPI remoteClient, UUID folderId, uint primLocalId, UUID itemId ) : void
remoteClient IClientAPI
folderId UUID
primLocalId uint
itemId UUID
return void
        public void ClientMoveTaskInventoryItem(IClientAPI remoteClient, UUID folderId, uint primLocalId, UUID itemId)
        {
            SceneObjectPart part = GetSceneObjectPart(primLocalId);

            if (null == part)
            {
                m_log.WarnFormat(
                    "[PRIM INVENTORY]: " +
                    "Move of inventory item {0} from prim with local id {1} failed because the prim could not be found",
                    itemId, primLocalId);

                return;
            }

            TaskInventoryItem taskItem = part.Inventory.GetInventoryItem(itemId);

            if (null == taskItem)
            {
                m_log.WarnFormat("[PRIM INVENTORY]: Move of inventory item {0} from prim with local id {1} failed"
                    + " because the inventory item could not be found",
                    itemId, primLocalId);

                return;
            }

            TaskInventoryItem item = part.Inventory.GetInventoryItem(itemId);
            if ((item.CurrentPermissions & (uint)PermissionMask.Copy) == 0)
            {
                // If the item to be moved is no copy, we need to be able to
                // edit the prim.
                if (!Permissions.CanEditObjectInventory(part.UUID, remoteClient.AgentId))
                    return;
            }
            else
            {
                // If the item is copiable, then we just need to have perms
                // on it. The delete check is a pure rights check
                if (!Permissions.CanDeleteObject(part.UUID, remoteClient.AgentId))
                    return;
            }

            MoveTaskInventoryItem(remoteClient, folderId, part, itemId);
        }
Scene