public virtual InventoryCollection GetFolderContent(UUID principalID, UUID folderID) { // This method doesn't receive a valud principal id from the // connector. So we disregard the principal and look // by ID. // //m_log.DebugFormat("[XINVENTORY SERVICE]: Fetch contents for folder {0}", folderID.ToString()); InventoryCollection inventory = new InventoryCollection(); inventory.UserID = principalID; inventory.Folders = new List <InventoryFolderBase>(); inventory.Items = new List <InventoryItemBase>(); XInventoryFolder[] folders = m_Database.GetFolders( new string[] { "parentFolderID" }, new string[] { folderID.ToString() }); foreach (XInventoryFolder x in folders) { //m_log.DebugFormat("[XINVENTORY]: Adding folder {0} to response", x.folderName); inventory.Folders.Add(ConvertToOpenSim(x)); } XInventoryItem[] items = m_Database.GetItems( new string[] { "parentFolderID" }, new string[] { folderID.ToString() }); foreach (XInventoryItem i in items) { //m_log.DebugFormat("[XINVENTORY]: Adding item {0} to response", i.inventoryName); inventory.Items.Add(ConvertToOpenSim(i)); } return(inventory); }