aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region')
-rw-r--r--OpenSim/Region/ClientStack/Linden/Caps/BunchOfCaps/BunchOfCaps.cs4
-rw-r--r--OpenSim/Region/ClientStack/Linden/Caps/Tests/WebFetchInvDescModuleTests.cs4
-rw-r--r--OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs9
-rw-r--r--OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs2
-rw-r--r--OpenSim/Region/CoreModules/Avatar/Attachments/Tests/AttachmentsModuleTests.cs8
-rw-r--r--OpenSim/Region/CoreModules/Avatar/AvatarFactory/AvatarFactoryModule.cs16
-rw-r--r--OpenSim/Region/CoreModules/Avatar/Friends/CallingCardModule.cs4
-rw-r--r--OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiveReadRequest.cs8
-rw-r--r--OpenSim/Region/CoreModules/Avatar/Inventory/Transfer/InventoryTransferModule.cs2
-rw-r--r--OpenSim/Region/CoreModules/Avatar/Inventory/Transfer/Tests/InventoryTransferModuleTests.cs8
-rw-r--r--OpenSim/Region/CoreModules/Framework/InventoryAccess/InventoryAccessModule.cs14
-rw-r--r--OpenSim/Region/CoreModules/Framework/Library/LocalInventoryService.cs2
-rw-r--r--OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/HGInventoryBroker.cs2
-rw-r--r--OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/InventoryCache.cs12
-rw-r--r--OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/LocalInventoryServiceConnector.cs2
-rw-r--r--OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/RemoteXInventoryServiceConnector.cs2
-rw-r--r--OpenSim/Region/Framework/Scenes/Scene.Inventory.cs10
17 files changed, 56 insertions, 53 deletions
diff --git a/OpenSim/Region/ClientStack/Linden/Caps/BunchOfCaps/BunchOfCaps.cs b/OpenSim/Region/ClientStack/Linden/Caps/BunchOfCaps/BunchOfCaps.cs
index 985451c..774202e 100644
--- a/OpenSim/Region/ClientStack/Linden/Caps/BunchOfCaps/BunchOfCaps.cs
+++ b/OpenSim/Region/ClientStack/Linden/Caps/BunchOfCaps/BunchOfCaps.cs
@@ -554,8 +554,8 @@ namespace OpenSim.Region.ClientStack.Linden
554 554
555 if (core.TryGet<IClientInventory>(out clientInv)) 555 if (core.TryGet<IClientInventory>(out clientInv))
556 { 556 {
557 var systemTextureFolder = m_Scene.InventoryService.GetFolderForType(m_HostCapsObj.AgentID, AssetType.Texture); 557 var systemTextureFolder = m_Scene.InventoryService.GetFolderForType(m_HostCapsObj.AgentID, FolderType.Texture);
558 textureUploadFolder = new InventoryFolderBase(UUID.Random(), assetName, m_HostCapsObj.AgentID, (short)AssetType.Unknown, systemTextureFolder.ID, 1); 558 textureUploadFolder = new InventoryFolderBase(UUID.Random(), assetName, m_HostCapsObj.AgentID, (short)FolderType.None, systemTextureFolder.ID, 1);
559 if (m_Scene.InventoryService.AddFolder(textureUploadFolder)) 559 if (m_Scene.InventoryService.AddFolder(textureUploadFolder))
560 { 560 {
561 foldersToUpdate.Add(textureUploadFolder); 561 foldersToUpdate.Add(textureUploadFolder);
diff --git a/OpenSim/Region/ClientStack/Linden/Caps/Tests/WebFetchInvDescModuleTests.cs b/OpenSim/Region/ClientStack/Linden/Caps/Tests/WebFetchInvDescModuleTests.cs
index 39209ec..dd4a691 100644
--- a/OpenSim/Region/ClientStack/Linden/Caps/Tests/WebFetchInvDescModuleTests.cs
+++ b/OpenSim/Region/ClientStack/Linden/Caps/Tests/WebFetchInvDescModuleTests.cs
@@ -116,7 +116,7 @@ namespace OpenSim.Region.ClientStack.Linden.Caps.Tests
116 PollServiceEventArgs pseArgs; 116 PollServiceEventArgs pseArgs;
117 userCaps.TryGetPollHandler("FetchInventoryDescendents2", out pseArgs); 117 userCaps.TryGetPollHandler("FetchInventoryDescendents2", out pseArgs);
118 req.UriPath = pseArgs.Url; 118 req.UriPath = pseArgs.Url;
119 req.Uri = new Uri(req.UriPath); 119 req.Uri = new Uri("file://" + req.UriPath);
120 120
121 // Retrieve root folder details directly so that we can request 121 // Retrieve root folder details directly so that we can request
122 InventoryFolderBase folder = scene.InventoryService.GetRootFolder(ua.PrincipalID); 122 InventoryFolderBase folder = scene.InventoryService.GetRootFolder(ua.PrincipalID);
@@ -137,6 +137,8 @@ namespace OpenSim.Region.ClientStack.Linden.Caps.Tests
137 req.Body = new MemoryStream(OSDParser.SerializeLLSDXmlBytes(osdReqMap)); 137 req.Body = new MemoryStream(OSDParser.SerializeLLSDXmlBytes(osdReqMap));
138 138
139 TestHttpClientContext context = new TestHttpClientContext(false); 139 TestHttpClientContext context = new TestHttpClientContext(false);
140
141 // WARNING: This results in a caught exception, because queryString is null
140 MainServer.Instance.OnRequest(context, new RequestEventArgs(req)); 142 MainServer.Instance.OnRequest(context, new RequestEventArgs(req));
141 143
142 // Drive processing of the queued inventory request synchronously. 144 // Drive processing of the queued inventory request synchronously.
diff --git a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
index 284c5fa..c8e5881 100644
--- a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
+++ b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
@@ -1866,8 +1866,8 @@ namespace OpenSim.Region.ClientStack.LindenUDP
1866 newBlock.Name = Util.StringToBytes256(folder.Name); 1866 newBlock.Name = Util.StringToBytes256(folder.Name);
1867 newBlock.ParentID = folder.ParentID; 1867 newBlock.ParentID = folder.ParentID;
1868 newBlock.Type = (sbyte)folder.Type; 1868 newBlock.Type = (sbyte)folder.Type;
1869 if (newBlock.Type == InventoryItemBase.SUITCASE_FOLDER_TYPE) 1869 //if (newBlock.Type == InventoryItemBase.SUITCASE_FOLDER_TYPE)
1870 newBlock.Type = InventoryItemBase.SUITCASE_FOLDER_FAKE_TYPE; 1870 // newBlock.Type = InventoryItemBase.SUITCASE_FOLDER_FAKE_TYPE;
1871 1871
1872 return newBlock; 1872 return newBlock;
1873 } 1873 }
@@ -2118,8 +2118,9 @@ namespace OpenSim.Region.ClientStack.LindenUDP
2118 folderBlock.FolderID = folder.ID; 2118 folderBlock.FolderID = folder.ID;
2119 folderBlock.ParentID = folder.ParentID; 2119 folderBlock.ParentID = folder.ParentID;
2120 folderBlock.Type = (sbyte)folder.Type; 2120 folderBlock.Type = (sbyte)folder.Type;
2121 if (folderBlock.Type == InventoryItemBase.SUITCASE_FOLDER_TYPE) 2121 // Leaving this here for now, just in case we need to do this for a while
2122 folderBlock.Type = InventoryItemBase.SUITCASE_FOLDER_FAKE_TYPE; 2122 //if (folderBlock.Type == InventoryItemBase.SUITCASE_FOLDER_TYPE)
2123 // folderBlock.Type = InventoryItemBase.SUITCASE_FOLDER_FAKE_TYPE;
2123 folderBlock.Name = Util.StringToBytes256(folder.Name); 2124 folderBlock.Name = Util.StringToBytes256(folder.Name);
2124 2125
2125 return folderBlock; 2126 return folderBlock;
diff --git a/OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs b/OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs
index 59c2179..2f67c4e 100644
--- a/OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs
+++ b/OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs
@@ -908,7 +908,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Attachments
908 InventoryItemBase newItem 908 InventoryItemBase newItem
909 = m_invAccessModule.CopyToInventory( 909 = m_invAccessModule.CopyToInventory(
910 DeRezAction.TakeCopy, 910 DeRezAction.TakeCopy,
911 m_scene.InventoryService.GetFolderForType(sp.UUID, AssetType.Object).ID, 911 m_scene.InventoryService.GetFolderForType(sp.UUID, FolderType.Object).ID,
912 new List<SceneObjectGroup> { grp }, 912 new List<SceneObjectGroup> { grp },
913 sp.ControllingClient, true)[0]; 913 sp.ControllingClient, true)[0];
914 914
diff --git a/OpenSim/Region/CoreModules/Avatar/Attachments/Tests/AttachmentsModuleTests.cs b/OpenSim/Region/CoreModules/Avatar/Attachments/Tests/AttachmentsModuleTests.cs
index f0dc238..f1b002b 100644
--- a/OpenSim/Region/CoreModules/Avatar/Attachments/Tests/AttachmentsModuleTests.cs
+++ b/OpenSim/Region/CoreModules/Avatar/Attachments/Tests/AttachmentsModuleTests.cs
@@ -224,7 +224,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Attachments.Tests
224 Assert.That(attachmentItem, Is.Not.Null); 224 Assert.That(attachmentItem, Is.Not.Null);
225 Assert.That(attachmentItem.Name, Is.EqualTo(attName)); 225 Assert.That(attachmentItem.Name, Is.EqualTo(attName));
226 226
227 InventoryFolderBase targetFolder = scene.InventoryService.GetFolderForType(sp.UUID, AssetType.Object); 227 InventoryFolderBase targetFolder = scene.InventoryService.GetFolderForType(sp.UUID, FolderType.Object);
228 Assert.That(attachmentItem.Folder, Is.EqualTo(targetFolder.ID)); 228 Assert.That(attachmentItem.Folder, Is.EqualTo(targetFolder.ID));
229 229
230 Assert.That(scene.GetSceneObjectGroups().Count, Is.EqualTo(1)); 230 Assert.That(scene.GetSceneObjectGroups().Count, Is.EqualTo(1));
@@ -271,7 +271,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Attachments.Tests
271 Assert.That(attachmentItem, Is.Not.Null); 271 Assert.That(attachmentItem, Is.Not.Null);
272 Assert.That(attachmentItem.Name, Is.EqualTo(so.Name)); 272 Assert.That(attachmentItem.Name, Is.EqualTo(so.Name));
273 273
274 InventoryFolderBase targetFolder = scene.InventoryService.GetFolderForType(sp.UUID, AssetType.Object); 274 InventoryFolderBase targetFolder = scene.InventoryService.GetFolderForType(sp.UUID, FolderType.Object);
275 Assert.That(attachmentItem.Folder, Is.EqualTo(targetFolder.ID)); 275 Assert.That(attachmentItem.Folder, Is.EqualTo(targetFolder.ID));
276 276
277 Assert.That(scene.GetSceneObjectGroups().Count, Is.EqualTo(2)); 277 Assert.That(scene.GetSceneObjectGroups().Count, Is.EqualTo(2));
@@ -304,7 +304,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Attachments.Tests
304 Assert.That(attachmentItem, Is.Not.Null); 304 Assert.That(attachmentItem, Is.Not.Null);
305 Assert.That(attachmentItem.Name, Is.EqualTo(so2.Name)); 305 Assert.That(attachmentItem.Name, Is.EqualTo(so2.Name));
306 306
307 InventoryFolderBase targetFolder = scene.InventoryService.GetFolderForType(sp.UUID, AssetType.Object); 307 InventoryFolderBase targetFolder = scene.InventoryService.GetFolderForType(sp.UUID, FolderType.Object);
308 Assert.That(attachmentItem.Folder, Is.EqualTo(targetFolder.ID)); 308 Assert.That(attachmentItem.Folder, Is.EqualTo(targetFolder.ID));
309 309
310 Assert.That(scene.GetSceneObjectGroups().Count, Is.EqualTo(1)); 310 Assert.That(scene.GetSceneObjectGroups().Count, Is.EqualTo(1));
@@ -337,7 +337,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Attachments.Tests
337 Assert.That(attachmentItem, Is.Not.Null); 337 Assert.That(attachmentItem, Is.Not.Null);
338 Assert.That(attachmentItem.Name, Is.EqualTo(so2.Name)); 338 Assert.That(attachmentItem.Name, Is.EqualTo(so2.Name));
339 339
340 InventoryFolderBase targetFolder = scene.InventoryService.GetFolderForType(sp.UUID, AssetType.Object); 340 InventoryFolderBase targetFolder = scene.InventoryService.GetFolderForType(sp.UUID, FolderType.Object);
341 Assert.That(attachmentItem.Folder, Is.EqualTo(targetFolder.ID)); 341 Assert.That(attachmentItem.Folder, Is.EqualTo(targetFolder.ID));
342 342
343 Assert.That(scene.GetSceneObjectGroups().Count, Is.EqualTo(1)); 343 Assert.That(scene.GetSceneObjectGroups().Count, Is.EqualTo(1));
diff --git a/OpenSim/Region/CoreModules/Avatar/AvatarFactory/AvatarFactoryModule.cs b/OpenSim/Region/CoreModules/Avatar/AvatarFactory/AvatarFactoryModule.cs
index ea7481d..cfb082b 100644
--- a/OpenSim/Region/CoreModules/Avatar/AvatarFactory/AvatarFactoryModule.cs
+++ b/OpenSim/Region/CoreModules/Avatar/AvatarFactory/AvatarFactoryModule.cs
@@ -908,8 +908,8 @@ namespace OpenSim.Region.CoreModules.Avatar.AvatarFactory
908 AssetType 908 AssetType
909 = 909 =
910 (int) 910 (int)
911 AssetType 911 FolderType
912 .Bodypart, 912 .BodyPart,
913 CreatorId 913 CreatorId
914 = 914 =
915 userID 915 userID
@@ -924,8 +924,8 @@ namespace OpenSim.Region.CoreModules.Avatar.AvatarFactory
924 invService 924 invService
925 .GetFolderForType 925 .GetFolderForType
926 (userID, 926 (userID,
927 AssetType 927 FolderType
928 .Bodypart) 928 .BodyPart)
929 .ID, 929 .ID,
930 Flags = (uint) type, 930 Flags = (uint) type,
931 Name = Enum.GetName(typeof (WearableType), type), 931 Name = Enum.GetName(typeof (WearableType), type),
@@ -960,8 +960,8 @@ namespace OpenSim.Region.CoreModules.Avatar.AvatarFactory
960 invService 960 invService
961 .GetFolderForType 961 .GetFolderForType
962 (userID, 962 (userID,
963 AssetType 963 FolderType
964 .CurrentOutfitFolder) 964 .CurrentOutfit)
965 .ID, 965 .ID,
966 Flags = (uint) type, 966 Flags = (uint) type,
967 Name = Enum.GetName(typeof (WearableType), type), 967 Name = Enum.GetName(typeof (WearableType), type),
@@ -978,8 +978,8 @@ namespace OpenSim.Region.CoreModules.Avatar.AvatarFactory
978 { 978 {
979 m_scene.SendInventoryUpdate(presence.ControllingClient, 979 m_scene.SendInventoryUpdate(presence.ControllingClient,
980 invService.GetFolderForType(userID, 980 invService.GetFolderForType(userID,
981 AssetType 981 FolderType
982 .CurrentOutfitFolder), 982 .CurrentOutfit),
983 false, true); 983 false, true);
984 } 984 }
985 } 985 }
diff --git a/OpenSim/Region/CoreModules/Avatar/Friends/CallingCardModule.cs b/OpenSim/Region/CoreModules/Avatar/Friends/CallingCardModule.cs
index b44a5c9..eb23e83 100644
--- a/OpenSim/Region/CoreModules/Avatar/Friends/CallingCardModule.cs
+++ b/OpenSim/Region/CoreModules/Avatar/Friends/CallingCardModule.cs
@@ -181,7 +181,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Friends
181 if (folderID == UUID.Zero) 181 if (folderID == UUID.Zero)
182 { 182 {
183 InventoryFolderBase folder = inv.GetFolderForType(userID, 183 InventoryFolderBase folder = inv.GetFolderForType(userID,
184 AssetType.CallingCard); 184 FolderType.CallingCard);
185 185
186 if (folder == null) // Nowhere to put it 186 if (folder == null) // Nowhere to put it
187 return UUID.Zero; 187 return UUID.Zero;
@@ -237,7 +237,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Friends
237 IInventoryService invService = m_Scenes[0].InventoryService; 237 IInventoryService invService = m_Scenes[0].InventoryService;
238 238
239 InventoryFolderBase trashFolder = 239 InventoryFolderBase trashFolder =
240 invService.GetFolderForType(client.AgentId, AssetType.TrashFolder); 240 invService.GetFolderForType(client.AgentId, FolderType.Trash);
241 241
242 InventoryItemBase item = new InventoryItemBase(transactionID, client.AgentId); 242 InventoryItemBase item = new InventoryItemBase(transactionID, client.AgentId);
243 item = invService.GetItem(item); 243 item = invService.GetItem(item);
diff --git a/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiveReadRequest.cs b/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiveReadRequest.cs
index 2ecec9e..4a06fd1 100644
--- a/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiveReadRequest.cs
+++ b/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiveReadRequest.cs
@@ -412,14 +412,10 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver
412 newFolderName = InventoryArchiveUtils.UnescapeArchivePath(newFolderName); 412 newFolderName = InventoryArchiveUtils.UnescapeArchivePath(newFolderName);
413 UUID newFolderId = UUID.Random(); 413 UUID newFolderId = UUID.Random();
414 414
415 // Asset type has to be Unknown here rather than Folder, otherwise the created folder can't be
416 // deleted once the client has relogged.
417 // The root folder appears to be labelled AssetType.Folder (shows up as "Category" in the client)
418 // even though there is a AssetType.RootCategory
419 destFolder 415 destFolder
420 = new InventoryFolderBase( 416 = new InventoryFolderBase(
421 newFolderId, newFolderName, m_userInfo.PrincipalID, 417 newFolderId, newFolderName, m_userInfo.PrincipalID,
422 (short)AssetType.Unknown, destFolder.ID, 1); 418 (short)FolderType.None, destFolder.ID, 1);
423 m_InventoryService.AddFolder(destFolder); 419 m_InventoryService.AddFolder(destFolder);
424 420
425 // Record that we have now created this folder 421 // Record that we have now created this folder
diff --git a/OpenSim/Region/CoreModules/Avatar/Inventory/Transfer/InventoryTransferModule.cs b/OpenSim/Region/CoreModules/Avatar/Inventory/Transfer/InventoryTransferModule.cs
index c88141c..bba48cc 100644
--- a/OpenSim/Region/CoreModules/Avatar/Inventory/Transfer/InventoryTransferModule.cs
+++ b/OpenSim/Region/CoreModules/Avatar/Inventory/Transfer/InventoryTransferModule.cs
@@ -372,7 +372,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Transfer
372 IInventoryService invService = scene.InventoryService; 372 IInventoryService invService = scene.InventoryService;
373 373
374 InventoryFolderBase trashFolder = 374 InventoryFolderBase trashFolder =
375 invService.GetFolderForType(client.AgentId, AssetType.TrashFolder); 375 invService.GetFolderForType(client.AgentId, FolderType.Trash);
376 376
377 UUID inventoryID = new UUID(im.imSessionID); // The inventory item/folder, back from it's trip 377 UUID inventoryID = new UUID(im.imSessionID); // The inventory item/folder, back from it's trip
378 378
diff --git a/OpenSim/Region/CoreModules/Avatar/Inventory/Transfer/Tests/InventoryTransferModuleTests.cs b/OpenSim/Region/CoreModules/Avatar/Inventory/Transfer/Tests/InventoryTransferModuleTests.cs
index d615cce..7ddc396 100644
--- a/OpenSim/Region/CoreModules/Avatar/Inventory/Transfer/Tests/InventoryTransferModuleTests.cs
+++ b/OpenSim/Region/CoreModules/Avatar/Inventory/Transfer/Tests/InventoryTransferModuleTests.cs
@@ -236,8 +236,8 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Transfer.Tests
236 InventoryItemBase receivedItem 236 InventoryItemBase receivedItem
237 = UserInventoryHelpers.GetInventoryItem(m_scene.InventoryService, receiverSp.UUID, "Trash/givenObj"); 237 = UserInventoryHelpers.GetInventoryItem(m_scene.InventoryService, receiverSp.UUID, "Trash/givenObj");
238 238
239 InventoryFolderBase trashFolder 239 InventoryFolderBase trashFolder
240 = m_scene.InventoryService.GetFolderForType(receiverSp.UUID, AssetType.TrashFolder); 240 = m_scene.InventoryService.GetFolderForType(receiverSp.UUID, FolderType.Trash);
241 241
242 Assert.That(receivedItem, Is.Not.Null); 242 Assert.That(receivedItem, Is.Not.Null);
243 Assert.That(receivedItem.ID, Is.Not.EqualTo(originalItem.ID)); 243 Assert.That(receivedItem.ID, Is.Not.EqualTo(originalItem.ID));
@@ -429,8 +429,8 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Transfer.Tests
429 InventoryFolderBase receivedFolder 429 InventoryFolderBase receivedFolder
430 = UserInventoryHelpers.GetInventoryFolder(m_scene.InventoryService, receiverSp.UUID, "Trash/f1"); 430 = UserInventoryHelpers.GetInventoryFolder(m_scene.InventoryService, receiverSp.UUID, "Trash/f1");
431 431
432 InventoryFolderBase trashFolder 432 InventoryFolderBase trashFolder
433 = m_scene.InventoryService.GetFolderForType(receiverSp.UUID, AssetType.TrashFolder); 433 = m_scene.InventoryService.GetFolderForType(receiverSp.UUID, FolderType.Trash);
434 434
435 Assert.That(receivedFolder, Is.Not.Null); 435 Assert.That(receivedFolder, Is.Not.Null);
436 Assert.That(receivedFolder.ID, Is.Not.EqualTo(originalFolder.ID)); 436 Assert.That(receivedFolder.ID, Is.Not.EqualTo(originalFolder.ID));
diff --git a/OpenSim/Region/CoreModules/Framework/InventoryAccess/InventoryAccessModule.cs b/OpenSim/Region/CoreModules/Framework/InventoryAccess/InventoryAccessModule.cs
index a77bc63..5a9efb8 100644
--- a/OpenSim/Region/CoreModules/Framework/InventoryAccess/InventoryAccessModule.cs
+++ b/OpenSim/Region/CoreModules/Framework/InventoryAccess/InventoryAccessModule.cs
@@ -695,18 +695,18 @@ namespace OpenSim.Region.CoreModules.Framework.InventoryAccess
695 if (remoteClient == null || 695 if (remoteClient == null ||
696 so.OwnerID != remoteClient.AgentId) 696 so.OwnerID != remoteClient.AgentId)
697 { 697 {
698 folder = m_Scene.InventoryService.GetFolderForType(userID, AssetType.LostAndFoundFolder); 698 folder = m_Scene.InventoryService.GetFolderForType(userID, FolderType.LostAndFound);
699 } 699 }
700 else 700 else
701 { 701 {
702 folder = m_Scene.InventoryService.GetFolderForType(userID, AssetType.TrashFolder); 702 folder = m_Scene.InventoryService.GetFolderForType(userID, FolderType.Trash);
703 } 703 }
704 } 704 }
705 else if (action == DeRezAction.Return) 705 else if (action == DeRezAction.Return)
706 { 706 {
707 // Dump to lost + found unconditionally 707 // Dump to lost + found unconditionally
708 // 708 //
709 folder = m_Scene.InventoryService.GetFolderForType(userID, AssetType.LostAndFoundFolder); 709 folder = m_Scene.InventoryService.GetFolderForType(userID, FolderType.LostAndFound);
710 } 710 }
711 711
712 if (folderID == UUID.Zero && folder == null) 712 if (folderID == UUID.Zero && folder == null)
@@ -715,7 +715,7 @@ namespace OpenSim.Region.CoreModules.Framework.InventoryAccess
715 { 715 {
716 // Deletes go to trash by default 716 // Deletes go to trash by default
717 // 717 //
718 folder = m_Scene.InventoryService.GetFolderForType(userID, AssetType.TrashFolder); 718 folder = m_Scene.InventoryService.GetFolderForType(userID, FolderType.Trash);
719 } 719 }
720 else 720 else
721 { 721 {
@@ -723,14 +723,14 @@ namespace OpenSim.Region.CoreModules.Framework.InventoryAccess
723 { 723 {
724 // Taking copy of another person's item. Take to 724 // Taking copy of another person's item. Take to
725 // Objects folder. 725 // Objects folder.
726 folder = m_Scene.InventoryService.GetFolderForType(userID, AssetType.Object); 726 folder = m_Scene.InventoryService.GetFolderForType(userID, FolderType.Object);
727 so.FromFolderID = UUID.Zero; 727 so.FromFolderID = UUID.Zero;
728 } 728 }
729 else 729 else
730 { 730 {
731 // Catch all. Use lost & found 731 // Catch all. Use lost & found
732 // 732 //
733 folder = m_Scene.InventoryService.GetFolderForType(userID, AssetType.LostAndFoundFolder); 733 folder = m_Scene.InventoryService.GetFolderForType(userID, FolderType.LostAndFound);
734 } 734 }
735 } 735 }
736 } 736 }
@@ -748,7 +748,7 @@ namespace OpenSim.Region.CoreModules.Framework.InventoryAccess
748 if(folder.Type == 14 || folder.Type == 16) 748 if(folder.Type == 14 || folder.Type == 16)
749 { 749 {
750 // folder.Type = 6; 750 // folder.Type = 6;
751 folder = m_Scene.InventoryService.GetFolderForType(userID, AssetType.Object); 751 folder = m_Scene.InventoryService.GetFolderForType(userID, FolderType.Object);
752 } 752 }
753 } 753 }
754 } 754 }
diff --git a/OpenSim/Region/CoreModules/Framework/Library/LocalInventoryService.cs b/OpenSim/Region/CoreModules/Framework/Library/LocalInventoryService.cs
index e657f53..e1e1838 100644
--- a/OpenSim/Region/CoreModules/Framework/Library/LocalInventoryService.cs
+++ b/OpenSim/Region/CoreModules/Framework/Library/LocalInventoryService.cs
@@ -175,7 +175,7 @@ namespace OpenSim.Region.CoreModules.Framework.Library
175 /// <param name="userID"></param> 175 /// <param name="userID"></param>
176 /// <param name="type"></param> 176 /// <param name="type"></param>
177 /// <returns></returns> 177 /// <returns></returns>
178 public InventoryFolderBase GetFolderForType(UUID userID, AssetType type) { return null; } 178 public InventoryFolderBase GetFolderForType(UUID userID, FolderType type) { return null; }
179 179
180 180
181 /// <summary> 181 /// <summary>
diff --git a/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/HGInventoryBroker.cs b/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/HGInventoryBroker.cs
index 6a83b42..48f228a 100644
--- a/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/HGInventoryBroker.cs
+++ b/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/HGInventoryBroker.cs
@@ -345,7 +345,7 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Inventory
345 return root; 345 return root;
346 } 346 }
347 347
348 public InventoryFolderBase GetFolderForType(UUID userID, AssetType type) 348 public InventoryFolderBase GetFolderForType(UUID userID, FolderType type)
349 { 349 {
350 //m_log.DebugFormat("[HG INVENTORY CONNECTOR]: GetFolderForType {0} type {1}", userID, type); 350 //m_log.DebugFormat("[HG INVENTORY CONNECTOR]: GetFolderForType {0} type {1}", userID, type);
351 InventoryFolderBase f = m_Cache.GetFolderForType(userID, type); 351 InventoryFolderBase f = m_Cache.GetFolderForType(userID, type);
diff --git a/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/InventoryCache.cs b/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/InventoryCache.cs
index 71dc337..3195e6b 100644
--- a/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/InventoryCache.cs
+++ b/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/InventoryCache.cs
@@ -41,7 +41,7 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Inventory
41 private const double CACHE_EXPIRATION_SECONDS = 3600.0; // 1 hour 41 private const double CACHE_EXPIRATION_SECONDS = 3600.0; // 1 hour
42 42
43 private static ExpiringCache<UUID, InventoryFolderBase> m_RootFolders = new ExpiringCache<UUID, InventoryFolderBase>(); 43 private static ExpiringCache<UUID, InventoryFolderBase> m_RootFolders = new ExpiringCache<UUID, InventoryFolderBase>();
44 private static ExpiringCache<UUID, Dictionary<AssetType, InventoryFolderBase>> m_FolderTypes = new ExpiringCache<UUID, Dictionary<AssetType, InventoryFolderBase>>(); 44 private static ExpiringCache<UUID, Dictionary<FolderType, InventoryFolderBase>> m_FolderTypes = new ExpiringCache<UUID, Dictionary<FolderType, InventoryFolderBase>>();
45 private static ExpiringCache<UUID, InventoryCollection> m_Inventories = new ExpiringCache<UUID, InventoryCollection>(); 45 private static ExpiringCache<UUID, InventoryCollection> m_Inventories = new ExpiringCache<UUID, InventoryCollection>();
46 46
47 public void Cache(UUID userID, InventoryFolderBase root) 47 public void Cache(UUID userID, InventoryFolderBase root)
@@ -58,12 +58,12 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Inventory
58 return null; 58 return null;
59 } 59 }
60 60
61 public void Cache(UUID userID, AssetType type, InventoryFolderBase folder) 61 public void Cache(UUID userID, FolderType type, InventoryFolderBase folder)
62 { 62 {
63 Dictionary<AssetType, InventoryFolderBase> ff = null; 63 Dictionary<FolderType, InventoryFolderBase> ff = null;
64 if (!m_FolderTypes.TryGetValue(userID, out ff)) 64 if (!m_FolderTypes.TryGetValue(userID, out ff))
65 { 65 {
66 ff = new Dictionary<AssetType, InventoryFolderBase>(); 66 ff = new Dictionary<FolderType, InventoryFolderBase>();
67 m_FolderTypes.Add(userID, ff, CACHE_EXPIRATION_SECONDS); 67 m_FolderTypes.Add(userID, ff, CACHE_EXPIRATION_SECONDS);
68 } 68 }
69 69
@@ -77,9 +77,9 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Inventory
77 } 77 }
78 } 78 }
79 79
80 public InventoryFolderBase GetFolderForType(UUID userID, AssetType type) 80 public InventoryFolderBase GetFolderForType(UUID userID, FolderType type)
81 { 81 {
82 Dictionary<AssetType, InventoryFolderBase> ff = null; 82 Dictionary<FolderType, InventoryFolderBase> ff = null;
83 if (m_FolderTypes.TryGetValue(userID, out ff)) 83 if (m_FolderTypes.TryGetValue(userID, out ff))
84 { 84 {
85 InventoryFolderBase f = null; 85 InventoryFolderBase f = null;
diff --git a/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/LocalInventoryServiceConnector.cs b/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/LocalInventoryServiceConnector.cs
index 2f29a7c..20d4e02 100644
--- a/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/LocalInventoryServiceConnector.cs
+++ b/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/LocalInventoryServiceConnector.cs
@@ -170,7 +170,7 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Inventory
170 return m_InventoryService.GetRootFolder(userID); 170 return m_InventoryService.GetRootFolder(userID);
171 } 171 }
172 172
173 public InventoryFolderBase GetFolderForType(UUID userID, AssetType type) 173 public InventoryFolderBase GetFolderForType(UUID userID, FolderType type)
174 { 174 {
175 return m_InventoryService.GetFolderForType(userID, type); 175 return m_InventoryService.GetFolderForType(userID, type);
176 } 176 }
diff --git a/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/RemoteXInventoryServiceConnector.cs b/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/RemoteXInventoryServiceConnector.cs
index e0cc1e8..978b9d9 100644
--- a/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/RemoteXInventoryServiceConnector.cs
+++ b/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/RemoteXInventoryServiceConnector.cs
@@ -177,7 +177,7 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Inventory
177 return m_RemoteConnector.GetRootFolder(userID); 177 return m_RemoteConnector.GetRootFolder(userID);
178 } 178 }
179 179
180 public InventoryFolderBase GetFolderForType(UUID userID, AssetType type) 180 public InventoryFolderBase GetFolderForType(UUID userID, FolderType type)
181 { 181 {
182 return m_RemoteConnector.GetFolderForType(userID, type); 182 return m_RemoteConnector.GetFolderForType(userID, type);
183 } 183 }
diff --git a/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs b/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs
index dde54d5..ac27716 100644
--- a/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs
+++ b/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs
@@ -156,7 +156,9 @@ namespace OpenSim.Region.Framework.Scenes
156 156
157 // OK so either the viewer didn't send a folderID or AddItem failed 157 // OK so either the viewer didn't send a folderID or AddItem failed
158 UUID originalFolder = item.Folder; 158 UUID originalFolder = item.Folder;
159 InventoryFolderBase f = InventoryService.GetFolderForType(item.Owner, (AssetType)item.AssetType); 159 InventoryFolderBase f = null;
160 if (Enum.IsDefined(typeof(FolderType), (sbyte)item.AssetType))
161 f = InventoryService.GetFolderForType(item.Owner, (FolderType)item.AssetType);
160 if (f != null) 162 if (f != null)
161 { 163 {
162 m_log.DebugFormat( 164 m_log.DebugFormat(
@@ -743,7 +745,9 @@ namespace OpenSim.Region.Framework.Scenes
743 745
744 if (itemCopy.Folder == UUID.Zero) 746 if (itemCopy.Folder == UUID.Zero)
745 { 747 {
746 InventoryFolderBase folder = InventoryService.GetFolderForType(recipient, (AssetType)itemCopy.AssetType); 748 InventoryFolderBase folder = null;
749 if (Enum.IsDefined(typeof(FolderType), (sbyte)item.AssetType))
750 folder = InventoryService.GetFolderForType(recipient, (FolderType)itemCopy.AssetType);
747 751
748 if (folder != null) 752 if (folder != null)
749 { 753 {
@@ -1155,7 +1159,7 @@ namespace OpenSim.Region.Framework.Scenes
1155 if (item == null) 1159 if (item == null)
1156 return; 1160 return;
1157 1161
1158 InventoryFolderBase destFolder = InventoryService.GetFolderForType(remoteClient.AgentId, AssetType.TrashFolder); 1162 InventoryFolderBase destFolder = InventoryService.GetFolderForType(remoteClient.AgentId, FolderType.Trash);
1159 1163
1160 // Move the item to trash. If this is a copyable item, only 1164 // Move the item to trash. If this is a copyable item, only
1161 // a copy will be moved and we will still need to delete 1165 // a copy will be moved and we will still need to delete