Finally remove the requirement for an InventoryItem/FolderBase object to

be passed into inventory queries.
This makes the API more homogenous and also will more clearly show
coding
errors related to HG inventory where the .Owner field has a meaning
for a query but wasn't always set.
This commit is contained in:
Melanie Thielker
2016-07-04 03:35:48 +01:00
parent 6deced0193
commit ea8f3c83bf
33 changed files with 147 additions and 228 deletions

View File

@@ -291,9 +291,9 @@ namespace OpenSim.Services.HypergridService
//{
//}
public override InventoryItemBase GetItem(InventoryItemBase item)
public override InventoryItemBase GetItem(UUID principalID, UUID itemID)
{
InventoryItemBase it = base.GetItem(item);
InventoryItemBase it = base.GetItem(principalID, itemID);
if (it != null)
{
UserAccount user = m_Cache.GetUser(it.CreatorId);

View File

@@ -383,7 +383,7 @@ namespace OpenSim.Services.HypergridService
// Check the items' current folders
foreach (InventoryItemBase item in items)
{
InventoryItemBase originalItem = base.GetItem(item);
InventoryItemBase originalItem = base.GetItem(item.Owner, item.ID);
if (!IsWithinSuitcaseTree(originalItem.Owner, originalItem.Folder))
{
m_log.DebugFormat("[HG SUITCASE INVENTORY SERVICE]: MoveItems: folder {0} (user {1}) is not within Suitcase tree", item.Folder, item.Owner);
@@ -401,7 +401,7 @@ namespace OpenSim.Services.HypergridService
public new InventoryItemBase GetItem(InventoryItemBase item)
{
InventoryItemBase it = base.GetItem(item);
InventoryItemBase it = base.GetItem(item.Owner, item.ID);
if (it == null)
{
m_log.DebugFormat("[HG SUITCASE INVENTORY SERVICE]: Unable to retrieve item {0} ({1}) in folder {2}",
@@ -426,9 +426,9 @@ namespace OpenSim.Services.HypergridService
return it;
}
public new InventoryFolderBase GetFolder(InventoryFolderBase folder)
public new InventoryFolderBase GetFolder(UUID principalID, UUID folderID)
{
InventoryFolderBase f = base.GetFolder(folder);
InventoryFolderBase f = base.GetFolder(principalID, folderID);
if (f != null)
{