mirror of
https://github.com/opensim/opensim.git
synced 2026-08-07 17:55:48 +08:00
Inventory redirects from CachedUserInfo to InventoryService COMPLETE!
This commit is contained in:
@@ -201,31 +201,31 @@ namespace OpenSim.Region.Framework.Scenes.Hypergrid
|
||||
}
|
||||
}
|
||||
|
||||
public InventoryItemBase Get(InventoryItemBase item, UUID rootFolder, CachedUserInfo userInfo)
|
||||
{
|
||||
InventoryClient invCli = null;
|
||||
string inventoryURL = UserInventoryURL(item.Owner);
|
||||
if (!m_inventoryServers.TryGetValue(inventoryURL, out invCli))
|
||||
{
|
||||
m_log.Debug("[HGScene]: Starting new InventorytClient for " + inventoryURL);
|
||||
invCli = new InventoryClient(inventoryURL);
|
||||
m_inventoryServers.Add(inventoryURL, invCli);
|
||||
}
|
||||
//public InventoryItemBase Get(InventoryItemBase item, UUID rootFolder, CachedUserInfo userInfo)
|
||||
//{
|
||||
// InventoryClient invCli = null;
|
||||
// string inventoryURL = UserInventoryURL(item.Owner);
|
||||
// if (!m_inventoryServers.TryGetValue(inventoryURL, out invCli))
|
||||
// {
|
||||
// m_log.Debug("[HGScene]: Starting new InventorytClient for " + inventoryURL);
|
||||
// invCli = new InventoryClient(inventoryURL);
|
||||
// m_inventoryServers.Add(inventoryURL, invCli);
|
||||
// }
|
||||
|
||||
item = invCli.GetInventoryItem(item);
|
||||
if (item != null)
|
||||
{
|
||||
// Change the folder, stick it in root folder, all items flattened out here in this region cache
|
||||
item.Folder = rootFolder;
|
||||
//userInfo.AddItem(item); don't use this, it calls back to the inventory server
|
||||
lock (userInfo.RootFolder.Items)
|
||||
{
|
||||
userInfo.RootFolder.Items[item.ID] = item;
|
||||
}
|
||||
// item = invCli.GetInventoryItem(item);
|
||||
// if (item != null)
|
||||
// {
|
||||
// // Change the folder, stick it in root folder, all items flattened out here in this region cache
|
||||
// item.Folder = rootFolder;
|
||||
// //userInfo.AddItem(item); don't use this, it calls back to the inventory server
|
||||
// lock (userInfo.RootFolder.Items)
|
||||
// {
|
||||
// userInfo.RootFolder.Items[item.ID] = item;
|
||||
// }
|
||||
|
||||
}
|
||||
return item;
|
||||
}
|
||||
// }
|
||||
// return item;
|
||||
//}
|
||||
|
||||
public void Post(UUID assetID, UUID ownerID)
|
||||
{
|
||||
|
||||
@@ -117,25 +117,20 @@ namespace OpenSim.Region.Framework.Scenes.Hypergrid
|
||||
|
||||
if (fromTaskID.Equals(UUID.Zero))
|
||||
{
|
||||
CachedUserInfo userInfo = CommsManager.UserProfileCacheService.GetUserDetails(remoteClient.AgentId);
|
||||
if (userInfo != null)
|
||||
InventoryItemBase item = new InventoryItemBase(itemID);
|
||||
item.Owner = remoteClient.AgentId;
|
||||
item = InventoryService.QueryItem(item);
|
||||
//if (item == null)
|
||||
//{ // Fetch the item
|
||||
// item = new InventoryItemBase();
|
||||
// item.Owner = remoteClient.AgentId;
|
||||
// item.ID = itemID;
|
||||
// item = m_assMapper.Get(item, userInfo.RootFolder.ID, userInfo);
|
||||
//}
|
||||
if (item != null)
|
||||
{
|
||||
if (userInfo.RootFolder != null)
|
||||
{
|
||||
InventoryItemBase item = userInfo.RootFolder.FindItem(itemID);
|
||||
if (item == null)
|
||||
{ // Fetch the item
|
||||
item = new InventoryItemBase();
|
||||
item.Owner = remoteClient.AgentId;
|
||||
item.ID = itemID;
|
||||
item = m_assMapper.Get(item, userInfo.RootFolder.ID, userInfo);
|
||||
}
|
||||
if (item != null)
|
||||
{
|
||||
m_assMapper.Get(item.AssetID, remoteClient.AgentId);
|
||||
m_assMapper.Get(item.AssetID, remoteClient.AgentId);
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user