public bool QueryFolder(InventoryFolderBase folder) { if (m_hasReceivedInventory) { InventoryFolderBase invFolder = RootFolder.FindFolder(folder.ID); if (invFolder != null) { // Folder is in local cache, just update client // return(true); } InventoryFolderBase folderInfo = null; folderInfo = m_InventoryService.QueryFolder(folder); if (folderInfo != null) { InventoryFolderImpl createdFolder = RootFolder.CreateChildFolder(folderInfo.ID, folderInfo.Name, (ushort)folderInfo.Type); createdFolder.Version = folderInfo.Version; createdFolder.Owner = folderInfo.Owner; createdFolder.ParentID = folderInfo.ParentID; return(true); } return(false); } else { AddRequest( new InventoryRequest( Delegate.CreateDelegate(typeof(QueryFolderDelegate), this, "QueryFolder"), new object[] { folder.ID })); return(true); } }