[infinispan-commits] Infinispan SVN: r433 - trunk/core/src/main/java/org/infinispan/container/entries.

infinispan-commits at lists.jboss.org infinispan-commits at lists.jboss.org
Wed Jun 10 19:11:28 EDT 2009


Author: manik.surtani at jboss.com
Date: 2009-06-10 19:11:28 -0400 (Wed, 10 Jun 2009)
New Revision: 433

Modified:
   trunk/core/src/main/java/org/infinispan/container/entries/AbstractInternalCacheEntry.java
   trunk/core/src/main/java/org/infinispan/container/entries/ImmortalCacheEntry.java
   trunk/core/src/main/java/org/infinispan/container/entries/ImmortalCacheValue.java
   trunk/core/src/main/java/org/infinispan/container/entries/InternalCacheEntry.java
   trunk/core/src/main/java/org/infinispan/container/entries/MortalCacheEntry.java
   trunk/core/src/main/java/org/infinispan/container/entries/MortalCacheValue.java
   trunk/core/src/main/java/org/infinispan/container/entries/TransientCacheEntry.java
   trunk/core/src/main/java/org/infinispan/container/entries/TransientCacheValue.java
   trunk/core/src/main/java/org/infinispan/container/entries/TransientMortalCacheEntry.java
   trunk/core/src/main/java/org/infinispan/container/entries/TransientMortalCacheValue.java
Log:
made cloneable

Modified: trunk/core/src/main/java/org/infinispan/container/entries/AbstractInternalCacheEntry.java
===================================================================
--- trunk/core/src/main/java/org/infinispan/container/entries/AbstractInternalCacheEntry.java	2009-06-10 21:39:12 UTC (rev 432)
+++ trunk/core/src/main/java/org/infinispan/container/entries/AbstractInternalCacheEntry.java	2009-06-10 23:11:28 UTC (rev 433)
@@ -69,4 +69,12 @@
             "key=" + key +
             '}';
    }
+
+   public AbstractInternalCacheEntry clone() {
+      try {
+         return (AbstractInternalCacheEntry) super.clone();
+      } catch (CloneNotSupportedException e) {
+         throw new RuntimeException("Should never happen!", e);
+      }
+   }
 }

Modified: trunk/core/src/main/java/org/infinispan/container/entries/ImmortalCacheEntry.java
===================================================================
--- trunk/core/src/main/java/org/infinispan/container/entries/ImmortalCacheEntry.java	2009-06-10 21:39:12 UTC (rev 432)
+++ trunk/core/src/main/java/org/infinispan/container/entries/ImmortalCacheEntry.java	2009-06-10 23:11:28 UTC (rev 433)
@@ -94,4 +94,11 @@
       result = 31 * result + (cacheValue != null ? cacheValue.hashCode() : 0);
       return result;
    }
+
+   @Override
+   public ImmortalCacheEntry clone() {
+      ImmortalCacheEntry clone = (ImmortalCacheEntry) super.clone();
+      clone.cacheValue = cacheValue.clone();
+      return clone;
+   }
 }

Modified: trunk/core/src/main/java/org/infinispan/container/entries/ImmortalCacheValue.java
===================================================================
--- trunk/core/src/main/java/org/infinispan/container/entries/ImmortalCacheValue.java	2009-06-10 21:39:12 UTC (rev 432)
+++ trunk/core/src/main/java/org/infinispan/container/entries/ImmortalCacheValue.java	2009-06-10 23:11:28 UTC (rev 433)
@@ -6,7 +6,7 @@
  * @author Manik Surtani
  * @since 4.0
  */
-public class ImmortalCacheValue implements InternalCacheValue {
+public class ImmortalCacheValue implements InternalCacheValue, Cloneable {
    Object value;
 
    ImmortalCacheValue(Object value) {
@@ -74,4 +74,13 @@
             "value=" + value +
             '}';
    }
+
+   @Override
+   public ImmortalCacheValue clone() {
+      try {
+         return (ImmortalCacheValue) super.clone();
+      } catch (CloneNotSupportedException e) {
+         throw new RuntimeException("Should never happen", e);
+      }
+   }
 }

Modified: trunk/core/src/main/java/org/infinispan/container/entries/InternalCacheEntry.java
===================================================================
--- trunk/core/src/main/java/org/infinispan/container/entries/InternalCacheEntry.java	2009-06-10 21:39:12 UTC (rev 432)
+++ trunk/core/src/main/java/org/infinispan/container/entries/InternalCacheEntry.java	2009-06-10 23:11:28 UTC (rev 433)
@@ -6,7 +6,7 @@
  * @author Manik Surtani
  * @since 4.0
  */
-public interface InternalCacheEntry extends CacheEntry {
+public interface InternalCacheEntry extends CacheEntry, Cloneable {
    /**
     * @return true if the entry has expired; false otherwise
     */
@@ -78,4 +78,6 @@
     * @return a new InternalCacheValue encapsulating this InternalCacheEntry's value and expiration information.
     */
    InternalCacheValue toInternalCacheValue();
+
+   InternalCacheEntry clone();
 }

Modified: trunk/core/src/main/java/org/infinispan/container/entries/MortalCacheEntry.java
===================================================================
--- trunk/core/src/main/java/org/infinispan/container/entries/MortalCacheEntry.java	2009-06-10 21:39:12 UTC (rev 432)
+++ trunk/core/src/main/java/org/infinispan/container/entries/MortalCacheEntry.java	2009-06-10 23:11:28 UTC (rev 433)
@@ -37,7 +37,7 @@
 
    public InternalCacheEntry setMaxIdle(long maxIdle) {
       if (maxIdle > -1) {
-         TransientMortalCacheEntry tmce = new TransientMortalCacheEntry(key, cacheValue.value );
+         TransientMortalCacheEntry tmce = new TransientMortalCacheEntry(key, cacheValue.value);
          tmce.setMaxIdle(maxIdle);
          return tmce;
       } else {
@@ -90,7 +90,8 @@
       MortalCacheEntry that = (MortalCacheEntry) o;
 
       if (key != null ? !key.equals(that.key) : that.key != null) return false;
-      if (cacheValue.value != null ? !cacheValue.value.equals(that.cacheValue.value) : that.cacheValue.value != null) return false;
+      if (cacheValue.value != null ? !cacheValue.value.equals(that.cacheValue.value) : that.cacheValue.value != null)
+         return false;
       if (cacheValue.created != that.cacheValue.created) return false;
       return cacheValue.lifespan == that.cacheValue.lifespan;
    }
@@ -103,4 +104,12 @@
       result = 31 * result + (int) (cacheValue.lifespan ^ (cacheValue.lifespan >>> 32));
       return result;
    }
+
+   @Override
+   public MortalCacheEntry clone() {
+      MortalCacheEntry clone = (MortalCacheEntry) super.clone();
+      clone.cacheValue = cacheValue.clone();
+      return clone;
+   }
+
 }

Modified: trunk/core/src/main/java/org/infinispan/container/entries/MortalCacheValue.java
===================================================================
--- trunk/core/src/main/java/org/infinispan/container/entries/MortalCacheValue.java	2009-06-10 21:39:12 UTC (rev 432)
+++ trunk/core/src/main/java/org/infinispan/container/entries/MortalCacheValue.java	2009-06-10 23:11:28 UTC (rev 433)
@@ -79,4 +79,9 @@
             ", lifespan=" + lifespan +
             "} " + super.toString();
    }
+
+   @Override
+   public MortalCacheValue clone() {
+      return (MortalCacheValue) super.clone();
+   }
 }

Modified: trunk/core/src/main/java/org/infinispan/container/entries/TransientCacheEntry.java
===================================================================
--- trunk/core/src/main/java/org/infinispan/container/entries/TransientCacheEntry.java	2009-06-10 21:39:12 UTC (rev 432)
+++ trunk/core/src/main/java/org/infinispan/container/entries/TransientCacheEntry.java	2009-06-10 23:11:28 UTC (rev 433)
@@ -8,7 +8,7 @@
  */
 public class TransientCacheEntry extends AbstractInternalCacheEntry {
 
-   private TransientCacheValue cacheValue; 
+   private TransientCacheValue cacheValue;
 
    TransientCacheEntry(Object key, Object value, long maxIdle) {
       this(key, value, maxIdle, System.currentTimeMillis());
@@ -90,7 +90,8 @@
       TransientCacheEntry that = (TransientCacheEntry) o;
 
       if (key != null ? !key.equals(that.key) : that.key != null) return false;
-      if (cacheValue.value != null ? !cacheValue.value.equals(that.cacheValue.value) : that.cacheValue.value != null) return false;
+      if (cacheValue.value != null ? !cacheValue.value.equals(that.cacheValue.value) : that.cacheValue.value != null)
+         return false;
       if (cacheValue.lastUsed != that.cacheValue.lastUsed) return false;
       if (cacheValue.maxIdle != that.cacheValue.maxIdle) return false;
 
@@ -105,4 +106,12 @@
       result = 31 * result + (int) (cacheValue.maxIdle ^ (cacheValue.maxIdle >>> 32));
       return result;
    }
+
+   @Override
+   public TransientCacheEntry clone() {
+      TransientCacheEntry clone = (TransientCacheEntry) super.clone();
+      clone.cacheValue = cacheValue.clone();
+      return clone;
+   }
+
 }

Modified: trunk/core/src/main/java/org/infinispan/container/entries/TransientCacheValue.java
===================================================================
--- trunk/core/src/main/java/org/infinispan/container/entries/TransientCacheValue.java	2009-06-10 21:39:12 UTC (rev 432)
+++ trunk/core/src/main/java/org/infinispan/container/entries/TransientCacheValue.java	2009-06-10 23:11:28 UTC (rev 433)
@@ -78,4 +78,9 @@
             ", lastUsed=" + lastUsed +
             "} " + super.toString();
    }
+
+   @Override
+   public TransientCacheValue clone() {
+      return (TransientCacheValue) super.clone();
+   }
 }

Modified: trunk/core/src/main/java/org/infinispan/container/entries/TransientMortalCacheEntry.java
===================================================================
--- trunk/core/src/main/java/org/infinispan/container/entries/TransientMortalCacheEntry.java	2009-06-10 21:39:12 UTC (rev 432)
+++ trunk/core/src/main/java/org/infinispan/container/entries/TransientMortalCacheEntry.java	2009-06-10 23:11:28 UTC (rev 433)
@@ -109,5 +109,12 @@
       result = 31 * result + (int) (cacheValue.lifespan ^ (cacheValue.lifespan >>> 32));
       return result;
    }
+
+   @Override
+   public TransientMortalCacheEntry clone() {
+      TransientMortalCacheEntry clone = (TransientMortalCacheEntry) super.clone();
+      clone.cacheValue = cacheValue.clone();
+      return clone;
+   }
 }
 

Modified: trunk/core/src/main/java/org/infinispan/container/entries/TransientMortalCacheValue.java
===================================================================
--- trunk/core/src/main/java/org/infinispan/container/entries/TransientMortalCacheValue.java	2009-06-10 21:39:12 UTC (rev 432)
+++ trunk/core/src/main/java/org/infinispan/container/entries/TransientMortalCacheValue.java	2009-06-10 23:11:28 UTC (rev 433)
@@ -80,4 +80,9 @@
             ", lastUsed=" + lastUsed +
             "} " + super.toString();
    }
+
+   @Override
+   public TransientMortalCacheValue clone() {
+      return (TransientMortalCacheValue) super.clone();
+   }
 }




More information about the infinispan-commits mailing list