diff --git a/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/InventoryCache.cs b/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/InventoryCache.cs index f7ef2eaa53..9bd59a4118 100644 --- a/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/InventoryCache.cs +++ b/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/InventoryCache.cs @@ -38,32 +38,27 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Inventory /// public class InventoryCache { - private const double CACHE_EXPIRATION_SECONDS = 60.0; // 1 minute - - private static ExpiringCache m_RootFolders = new ExpiringCache(); - private static ExpiringCache> m_FolderTypes = new ExpiringCache>(); - private static ExpiringCache m_Inventories = new ExpiringCache(); + private const int CACHE_EXPIRATION = 60000; // 1 minute + private static ExpiringCacheOS m_RootFolders = new ExpiringCacheOS(); + private static ExpiringCacheOS> m_FolderTypes = new ExpiringCacheOS>(); + private static ExpiringCacheOS m_Inventories = new ExpiringCacheOS(); public void RemoveAll(UUID userID) { - if(m_RootFolders.Contains(userID)) - m_RootFolders.Remove(userID); - if(m_FolderTypes.Contains(userID)) - m_FolderTypes.Remove(userID); - if(m_Inventories.Contains(userID)) - m_Inventories.Remove(userID); + m_RootFolders.Remove(userID); + m_FolderTypes.Remove(userID); + m_Inventories.Remove(userID); } public void Cache(UUID userID, InventoryFolderBase root) { - m_RootFolders.AddOrUpdate(userID, root, CACHE_EXPIRATION_SECONDS); + m_RootFolders.AddOrUpdate(userID, root, CACHE_EXPIRATION); } public InventoryFolderBase GetRootFolder(UUID userID) { - InventoryFolderBase root = null; - if (m_RootFolders.TryGetValue(userID, out root)) + if (m_RootFolders.TryGetValue(userID, out InventoryFolderBase root)) return root; return null; @@ -71,11 +66,10 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Inventory public void Cache(UUID userID, FolderType type, InventoryFolderBase folder) { - Dictionary ff = null; - if (!m_FolderTypes.TryGetValue(userID, out ff)) + if (!m_FolderTypes.TryGetValue(userID, out Dictionary ff)) { ff = new Dictionary(); - m_FolderTypes.Add(userID, ff, CACHE_EXPIRATION_SECONDS); + m_FolderTypes.Add(userID, ff, CACHE_EXPIRATION); } // We need to lock here since two threads could potentially retrieve the same dictionary @@ -90,14 +84,11 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Inventory public InventoryFolderBase GetFolderForType(UUID userID, FolderType type) { - Dictionary ff = null; - if (m_FolderTypes.TryGetValue(userID, out ff)) + if (m_FolderTypes.TryGetValue(userID, out Dictionary ff)) { - InventoryFolderBase f = null; - lock (ff) { - if (ff.TryGetValue(type, out f)) + if (ff.TryGetValue(type, out InventoryFolderBase f)) return f; } } @@ -112,9 +103,8 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Inventory public InventoryCollection GetFolderContent(UUID userID, UUID folderID) { - InventoryCollection inv = null; InventoryCollection c; - if (m_Inventories.TryGetValue(userID, out inv)) + if (m_Inventories.TryGetValue(userID, out InventoryCollection inv)) { c = new InventoryCollection(); c.OwnerID = userID; @@ -134,8 +124,7 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Inventory public List GetFolderItems(UUID userID, UUID folderID) { - InventoryCollection inv = null; - if (m_Inventories.TryGetValue(userID, out inv)) + if (m_Inventories.TryGetValue(userID, out InventoryCollection inv)) { List items = inv.Items.FindAll(delegate(InventoryItemBase i) {