[infinispan-commits] Infinispan SVN: r687 - in trunk/core/src: test/java/org/infinispan/marshall and 1 other directory.

infinispan-commits at lists.jboss.org infinispan-commits at lists.jboss.org
Fri Aug 14 08:55:38 EDT 2009


Author: galder.zamarreno at jboss.com
Date: 2009-08-14 08:55:38 -0400 (Fri, 14 Aug 2009)
New Revision: 687

Modified:
   trunk/core/src/main/java/org/infinispan/interceptors/MarshalledValueInterceptor.java
   trunk/core/src/test/java/org/infinispan/marshall/MarshalledValueTest.java
Log:
[ISPN-157] (MarshalledValueInterceptor does not override visitEvictCommand) Fixed.

Modified: trunk/core/src/main/java/org/infinispan/interceptors/MarshalledValueInterceptor.java
===================================================================
--- trunk/core/src/main/java/org/infinispan/interceptors/MarshalledValueInterceptor.java	2009-08-14 12:52:23 UTC (rev 686)
+++ trunk/core/src/main/java/org/infinispan/interceptors/MarshalledValueInterceptor.java	2009-08-14 12:55:38 UTC (rev 687)
@@ -107,6 +107,18 @@
       compact(value);
       return processRetVal(retVal);
    }
+   
+   @Override
+   public Object visitEvictCommand(InvocationContext ctx, org.infinispan.commands.write.EvictCommand command) throws Throwable {
+      MarshalledValue value = null;
+      if (!MarshalledValue.isTypeExcluded(command.getKey().getClass())) {
+         value = createMarshalledValue(command.getKey(), ctx);
+         command.setKey(value);
+      }
+      Object retVal = invokeNextInterceptor(ctx, command);
+      compact(value);
+      return processRetVal(retVal);
+   };
 
    @Override
    public Object visitGetKeyValueCommand(InvocationContext ctx, GetKeyValueCommand command) throws Throwable {

Modified: trunk/core/src/test/java/org/infinispan/marshall/MarshalledValueTest.java
===================================================================
--- trunk/core/src/test/java/org/infinispan/marshall/MarshalledValueTest.java	2009-08-14 12:52:23 UTC (rev 686)
+++ trunk/core/src/test/java/org/infinispan/marshall/MarshalledValueTest.java	2009-08-14 12:55:38 UTC (rev 687)
@@ -401,6 +401,13 @@
       assert mv.get() instanceof Pojo;
       assertSerializationCounts(1, 1);
    }
+   
+   public void testEvictWithMarshalledValueKey() {
+      Pojo pojo = new Pojo();
+      cache1.put(pojo, pojo);
+      cache1.evict(pojo);
+      assert !cache1.containsKey(pojo);
+   }
 
    @Listener
    public static class MockListener {



More information about the infinispan-commits mailing list