mirror of
https://github.com/opensim/opensim.git
synced 2026-08-11 11:57:03 +08:00
* Added two new packet handler implementations for inventory ops. This is starting to work! - but can't be activated incrementally, the flip needs to be global for all inventory ops.
* Added a base inventory connector that does common processing of inventory among all reference connector implementations. E.g. AddItem requires additional processing before being forwarded to service. * Added if (m_Enabled) upon RemoveRegion
This commit is contained in:
@@ -622,8 +622,26 @@ namespace OpenSim.Region.Framework.Scenes
|
||||
"[AGENT INVENTORY]: Failed to move folder {0} to {1} for user {2}",
|
||||
folderID, parentID, remoteClient.Name);
|
||||
}
|
||||
}
|
||||
|
||||
public void HandleMoveInventoryFolder2(IClientAPI remoteClient, UUID folderID, UUID parentID)
|
||||
{
|
||||
InventoryFolderBase folder = new InventoryFolderBase(folderID);
|
||||
folder = InventoryService.QueryFolder(folder);
|
||||
if (folder != null)
|
||||
{
|
||||
folder.ParentID = parentID;
|
||||
if (!InventoryService.MoveFolder(folder))
|
||||
m_log.WarnFormat("[AGENT INVENTORY]: could not move folder {0}", folderID);
|
||||
else
|
||||
m_log.DebugFormat("[AGENT INVENTORY]: folder {0} moved to parent {1}", folderID, parentID);
|
||||
}
|
||||
else
|
||||
{
|
||||
m_log.WarnFormat("[AGENT INVENTORY]: request to move folder {0} but folder not found", folderID);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// This should delete all the items and folders in the given directory.
|
||||
/// </summary>
|
||||
@@ -647,6 +665,17 @@ namespace OpenSim.Region.Framework.Scenes
|
||||
"[AGENT INVENTORY]: Failed to purge folder for user {0} {1}",
|
||||
remoteClient.Name, remoteClient.AgentId);
|
||||
}
|
||||
}
|
||||
|
||||
public void HandlePurgeInventoryDescendents2(IClientAPI remoteClient, UUID folderID)
|
||||
{
|
||||
InventoryFolderBase folder = new InventoryFolderBase(folderID);
|
||||
|
||||
if (InventoryService.PurgeFolder(folder))
|
||||
m_log.DebugFormat("[AGENT INVENTORY]: folder {0} purged successfully", folderID);
|
||||
else
|
||||
m_log.WarnFormat("[AGENT INVENTORY]: could not purge folder {0}", folderID);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2019,12 +2019,13 @@ namespace OpenSim.Region.Framework.Scenes
|
||||
client.OnUpdatePrimFlags += m_sceneGraph.UpdatePrimFlags;
|
||||
client.OnRequestObjectPropertiesFamily += m_sceneGraph.RequestObjectPropertiesFamily;
|
||||
client.OnObjectPermissions += HandleObjectPermissionsUpdate;
|
||||
|
||||
client.OnCreateNewInventoryItem += CreateNewInventoryItem;
|
||||
client.OnCreateNewInventoryFolder += HandleCreateInventoryFolder;
|
||||
client.OnUpdateInventoryFolder += HandleUpdateInventoryFolder;
|
||||
client.OnMoveInventoryFolder += HandleMoveInventoryFolder;
|
||||
client.OnMoveInventoryFolder += HandleMoveInventoryFolder; // 2; //!!
|
||||
client.OnFetchInventoryDescendents += HandleFetchInventoryDescendents;
|
||||
client.OnPurgeInventoryDescendents += HandlePurgeInventoryDescendents;
|
||||
client.OnPurgeInventoryDescendents += HandlePurgeInventoryDescendents; // 2; //!!
|
||||
client.OnFetchInventory += HandleFetchInventory;
|
||||
client.OnUpdateInventoryItem += UpdateInventoryItemAsset;
|
||||
client.OnCopyInventoryItem += CopyInventoryItem;
|
||||
@@ -2036,6 +2037,7 @@ namespace OpenSim.Region.Framework.Scenes
|
||||
client.OnRemoveTaskItem += RemoveTaskInventory;
|
||||
client.OnUpdateTaskInventory += UpdateTaskInventory;
|
||||
client.OnMoveTaskItem += ClientMoveTaskInventoryItem;
|
||||
|
||||
client.OnGrabObject += ProcessObjectGrab;
|
||||
client.OnDeGrabObject += ProcessObjectDeGrab;
|
||||
client.OnMoneyTransferRequest += ProcessMoneyTransferRequest;
|
||||
|
||||
Reference in New Issue
Block a user