A few more minor improvements on Suitcase inventory service.

0.7.4.1
Diva Canto 2012-04-07 14:52:15 -07:00
parent 7c534e558d
commit d4a370a5f2
1 changed files with 6 additions and 7 deletions

View File

@ -107,7 +107,6 @@ namespace OpenSim.Services.HypergridService
public override List<InventoryFolderBase> GetInventorySkeleton(UUID principalID) public override List<InventoryFolderBase> GetInventorySkeleton(UUID principalID)
{ {
XInventoryFolder suitcase = GetSuitcaseXFolder(principalID); XInventoryFolder suitcase = GetSuitcaseXFolder(principalID);
XInventoryFolder root = GetRootXFolder(principalID);
List<XInventoryFolder> tree = GetFolderTree(principalID, suitcase.folderID); List<XInventoryFolder> tree = GetFolderTree(principalID, suitcase.folderID);
if (tree == null || (tree != null && tree.Count == 0)) if (tree == null || (tree != null && tree.Count == 0))
@ -119,7 +118,7 @@ namespace OpenSim.Services.HypergridService
folders.Add(ConvertToOpenSim(x)); folders.Add(ConvertToOpenSim(x));
} }
SetAsNormalFolder(suitcase, root); SetAsNormalFolder(suitcase);
folders.Add(ConvertToOpenSim(suitcase)); folders.Add(ConvertToOpenSim(suitcase));
return folders; return folders;
@ -134,12 +133,11 @@ namespace OpenSim.Services.HypergridService
userInventory.Items = new List<InventoryItemBase>(); userInventory.Items = new List<InventoryItemBase>();
XInventoryFolder suitcase = GetSuitcaseXFolder(userID); XInventoryFolder suitcase = GetSuitcaseXFolder(userID);
XInventoryFolder root = GetRootXFolder(userID);
List<XInventoryFolder> tree = GetFolderTree(userID, suitcase.folderID); List<XInventoryFolder> tree = GetFolderTree(userID, suitcase.folderID);
if (tree == null || (tree != null && tree.Count == 0)) if (tree == null || (tree != null && tree.Count == 0))
{ {
SetAsNormalFolder(suitcase, root); SetAsNormalFolder(suitcase);
userInventory.Folders.Add(ConvertToOpenSim(suitcase)); userInventory.Folders.Add(ConvertToOpenSim(suitcase));
return userInventory; return userInventory;
} }
@ -164,7 +162,7 @@ namespace OpenSim.Services.HypergridService
userInventory.Items.AddRange(items); userInventory.Items.AddRange(items);
} }
SetAsNormalFolder(suitcase, root); SetAsNormalFolder(suitcase);
userInventory.Folders.Add(ConvertToOpenSim(suitcase)); userInventory.Folders.Add(ConvertToOpenSim(suitcase));
m_log.DebugFormat("[HG SUITCASE INVENTORY SERVICE]: GetUserInventory for user {0} returning {1} folders and {2} items", m_log.DebugFormat("[HG SUITCASE INVENTORY SERVICE]: GetUserInventory for user {0} returning {1} folders and {2} items",
@ -181,6 +179,7 @@ namespace OpenSim.Services.HypergridService
if (root == null) if (root == null)
{ {
m_log.WarnFormat("[HG SUITCASE INVENTORY SERVICE]: Unable to retrieve local root folder for user {0}", principalID); m_log.WarnFormat("[HG SUITCASE INVENTORY SERVICE]: Unable to retrieve local root folder for user {0}", principalID);
return null;
} }
// Warp! Root folder for travelers is the suitcase folder // Warp! Root folder for travelers is the suitcase folder
@ -200,7 +199,7 @@ namespace OpenSim.Services.HypergridService
CreateSystemFolders(principalID, suitcase.folderID); CreateSystemFolders(principalID, suitcase.folderID);
} }
SetAsNormalFolder(suitcase, root); SetAsNormalFolder(suitcase);
return ConvertToOpenSim(suitcase); return ConvertToOpenSim(suitcase);
} }
@ -484,7 +483,7 @@ namespace OpenSim.Services.HypergridService
return null; return null;
} }
private void SetAsNormalFolder(XInventoryFolder suitcase, XInventoryFolder root) private void SetAsNormalFolder(XInventoryFolder suitcase)
{ {
suitcase.type = (short)AssetType.Folder; suitcase.type = (short)AssetType.Folder;
} }