Prim inventory phase 4. Properly recover the prim folder ID from storage. Scripts now show up in prim inventories after region restart.

Probably doesn't yet work for any items other than scripts.
Still some work to do.  No user functionality exposed.  Not yet user tieable into normal code.
This commit is contained in:
Justin Clarke Casey
2008-01-06 01:16:06 +00:00
parent 1867fbaa67
commit 7cedb09869
3 changed files with 97 additions and 31 deletions

View File

@@ -1151,20 +1151,26 @@ namespace OpenSim.Region.Environment.Scenes
{
MainLog.Instance.Warn(
"SCENE",
"Couldn't find part {0} in object group {1} ({2}) to retreive prim inventory",
localID, LocalId, UUID);
"Couldn't find part {0} in object group {1}, {2} to retreive prim inventory",
localID, Name, UUID);
}
return false;
}
public string RequestInventoryFile(uint localID, IXfer xferManager)
public void RequestInventoryFile(uint localID, IXfer xferManager)
{
SceneObjectPart part = GetChildPart(localID);
if (part != null)
{
part.RequestInventoryFile(xferManager);
}
return "";
else
{
MainLog.Instance.Warn(
"PRIMINVENTORY",
"Couldn't find part {0} in object group {1}, {2} to request inventory data",
localID, Name, UUID);
}
}
public bool AddInventoryItem(IClientAPI remoteClient, uint localID, InventoryItemBase item)
@@ -1202,7 +1208,7 @@ namespace OpenSim.Region.Environment.Scenes
taskItem.owner_id = new LLUUID(item.avatarID.ToString());
taskItem.creator_id = new LLUUID(item.creatorsID.ToString());
taskItem.type = SceneObjectPart.TaskInventoryItem.Types[item.assetType];
taskItem.inv_type = SceneObjectPart.TaskInventoryItem.Types[item.invType];
taskItem.inv_type = SceneObjectPart.TaskInventoryItem.InvTypes[item.invType];
part.AddInventoryItem(taskItem);
return true;
}