From a471f2d7295ccbb6601e53468e4f0719a2d4dd4b Mon Sep 17 00:00:00 2001 From: Derek Hulley Date: Thu, 24 Jun 2010 00:59:19 +0000 Subject: [PATCH] Added cache-only getValue() operation git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@20786 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../repo/cache/lookup/EntityLookupCache.java | 31 +++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/source/java/org/alfresco/repo/cache/lookup/EntityLookupCache.java b/source/java/org/alfresco/repo/cache/lookup/EntityLookupCache.java index 2c03e99daf..5f286e2e09 100644 --- a/source/java/org/alfresco/repo/cache/lookup/EntityLookupCache.java +++ b/source/java/org/alfresco/repo/cache/lookup/EntityLookupCache.java @@ -528,6 +528,37 @@ public class EntityLookupCachenull not allowed) + * @return The new entity value (may be null) + */ + @SuppressWarnings("unchecked") + public V getValue(K key) + { + CacheRegionKey keyCacheKey = new CacheRegionKey(cacheRegion, key); + // Look in the cache + V value = (V) cache.get(keyCacheKey); + if (value == null) + { + return null; + } + else if (value.equals(VALUE_NOT_FOUND)) + { + // We checked before + return null; + } + else if (value.equals(VALUE_NULL)) + { + return null; + } + else + { + return value; + } + } + /** * Cache-only operation: Update the cache's value *