svn commit: r585647 - in /ofbiz/trunk/framework/base/src/base/org/ofbiz/base/util/cache: CacheLine.java UtilCache.java

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

svn commit: r585647 - in /ofbiz/trunk/framework/base/src/base/org/ofbiz/base/util/cache: CacheLine.java UtilCache.java

doogie-3
Author: doogie
Date: Wed Oct 17 12:52:19 2007
New Revision: 585647

URL: http://svn.apache.org/viewvc?rev=585647&view=rev
Log:
Move the hasExpired logic into CacheLine.  Closes
 https://issues.apache.org/jira/browse/OFBIZ-1295

Modified:
    ofbiz/trunk/framework/base/src/base/org/ofbiz/base/util/cache/CacheLine.java
    ofbiz/trunk/framework/base/src/base/org/ofbiz/base/util/cache/UtilCache.java

Modified: ofbiz/trunk/framework/base/src/base/org/ofbiz/base/util/cache/CacheLine.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/base/src/base/org/ofbiz/base/util/cache/CacheLine.java?rev=585647&r1=585646&r2=585647&view=diff
==============================================================================
--- ofbiz/trunk/framework/base/src/base/org/ofbiz/base/util/cache/CacheLine.java (original)
+++ ofbiz/trunk/framework/base/src/base/org/ofbiz/base/util/cache/CacheLine.java Wed Oct 17 12:52:19 2007
@@ -87,5 +87,19 @@
     public long getSizeInBytes() {
         return UtilObject.getByteCount(this);
     }
+
+    public boolean hasExpired() {
+        // check this BEFORE checking to see if expireTime <= 0, ie if time expiration is enabled
+        // check to see if we are using softReference first, slight performance increase
+        if (softReferenceCleared()) return true;
+
+        // check if expireTime <= 0, ie if time expiration is not enabled
+        if (expireTime <= 0) return false;
+
+        // check if the time was saved for this; if the time was not saved, but expire time is > 0, then we don't know when it was saved so expire it to be safe
+        if (loadTime <= 0) return true;
+
+        return (loadTime + expireTime) < System.currentTimeMillis();
+    }
 }
 

Modified: ofbiz/trunk/framework/base/src/base/org/ofbiz/base/util/cache/UtilCache.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/base/src/base/org/ofbiz/base/util/cache/UtilCache.java?rev=585647&r1=585646&r2=585647&view=diff
==============================================================================
--- ofbiz/trunk/framework/base/src/base/org/ofbiz/base/util/cache/UtilCache.java (original)
+++ ofbiz/trunk/framework/base/src/base/org/ofbiz/base/util/cache/UtilCache.java Wed Oct 17 12:52:19 2007
@@ -347,7 +347,7 @@
             removeInternal(key, false);
             if (countGet) missCountSoftRef++;
             line = null;
-        } else if (this.hasExpired(line)) {
+        } else if (line.hasExpired()) {
             // note that print.info in debug.properties cannot be checked through UtilProperties here, it would cause infinite recursion...
             // if (Debug.infoOn()) Debug.logInfo("Element has expired with key " + key, module);
             removeInternal(key, false);
@@ -599,27 +599,8 @@
      */
     public boolean hasExpired(Object key) {
         CacheLine line = getInternalNoCheck(key);
-        return hasExpired(line);
-    }
-
-    protected boolean hasExpired(CacheLine line) {
         if (line == null) return false;
-
-        // check this BEFORE checking to see if expireTime <= 0, ie if time expiration is enabled
-        // check to see if we are using softReference first, slight performance increase
-        if (line.softReferenceCleared()) return true;
-        
-        // check if expireTime <= 0, ie if time expiration is not enabled
-        if (line.expireTime <= 0) return false;
-
-        // check if the time was saved for this; if the time was not saved, but expire time is > 0, then we don't know when it was saved so expire it to be safe
-        if (line.loadTime <= 0) return true;
-        
-        if ((line.loadTime + line.expireTime) < System.currentTimeMillis()) {
-            return true;
-        } else {
-            return false;
-        }
+        return line.hasExpired();
     }
 
     /** Clears all expired cache entries; also clear any cache entries where the SoftReference in the CacheLine object has been cleared by the gc */