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

infinispan-commits at lists.jboss.org infinispan-commits at lists.jboss.org
Mon Nov 30 14:51:06 EST 2009


Author: galder.zamarreno at jboss.com
Date: 2009-11-30 14:51:06 -0500 (Mon, 30 Nov 2009)
New Revision: 1244

Modified:
   trunk/core/src/main/java/org/infinispan/transaction/xa/TransactionTable.java
   trunk/core/src/test/java/org/infinispan/notifications/cachemanagerlistener/CacheManagerNotifierTest.java
Log:
[ISPN-292] (Implement a stale lock cleanup mechanism) Moved addListener call to @Start in order to avoid funny business between easy mock and calls expected to happen in @Inject. TestingUtil.replaceComponent() results in @Inject methods being called again and results in call records that you didn't specifically set.

Modified: trunk/core/src/main/java/org/infinispan/transaction/xa/TransactionTable.java
===================================================================
--- trunk/core/src/main/java/org/infinispan/transaction/xa/TransactionTable.java	2009-11-30 19:44:37 UTC (rev 1243)
+++ trunk/core/src/main/java/org/infinispan/transaction/xa/TransactionTable.java	2009-11-30 19:51:06 UTC (rev 1244)
@@ -8,6 +8,7 @@
 import org.infinispan.context.InvocationContext;
 import org.infinispan.context.InvocationContextContainer;
 import org.infinispan.factories.annotations.Inject;
+import org.infinispan.factories.annotations.Start;
 import org.infinispan.factories.annotations.Stop;
 import org.infinispan.interceptors.InterceptorChain;
 import org.infinispan.manager.CacheManager;
@@ -54,6 +55,7 @@
    private RpcManager rpcManager;
    private GlobalTransactionFactory gtf;
    private ExecutorService lockBreakingService = Executors.newFixedThreadPool(1);
+   private CacheManager cm;
 
    @Inject
    public void initialize(CommandsFactory commandsFactory, RpcManager rpcManager, Configuration configuration,
@@ -66,6 +68,11 @@
       this.invoker = invoker;
       this.notifier = notifier;
       this.gtf = gtf;
+      this.cm = cm;
+   }
+
+   @Start
+   private void start() {
       cm.addListener(new StaleTransactionCleanup());
    }
 

Modified: trunk/core/src/test/java/org/infinispan/notifications/cachemanagerlistener/CacheManagerNotifierTest.java
===================================================================
--- trunk/core/src/test/java/org/infinispan/notifications/cachemanagerlistener/CacheManagerNotifierTest.java	2009-11-30 19:44:37 UTC (rev 1243)
+++ trunk/core/src/test/java/org/infinispan/notifications/cachemanagerlistener/CacheManagerNotifierTest.java	2009-11-30 19:51:06 UTC (rev 1244)
@@ -1,6 +1,7 @@
 package org.infinispan.notifications.cachemanagerlistener;
 
 import static org.easymock.EasyMock.*;
+
 import org.infinispan.Cache;
 import org.infinispan.config.Configuration;
 import org.infinispan.manager.CacheManager;
@@ -8,6 +9,8 @@
 import org.infinispan.test.AbstractInfinispanTest;
 import org.infinispan.test.TestingUtil;
 import org.infinispan.test.fwk.TestCacheManagerFactory;
+import org.infinispan.transaction.xa.TransactionTable;
+import org.infinispan.transaction.xa.TransactionTable.StaleTransactionCleanup;
 import org.testng.annotations.AfterMethod;
 import org.testng.annotations.Test;
 
@@ -63,6 +66,7 @@
       try {
          cm1.defineConfiguration("testCache", new Configuration());
          mockNotifier.notifyCacheStarted("testCache");
+         mockNotifier.addListener(isA(StaleTransactionCleanup.class));
          replay(mockNotifier);
          // start a second cache.
          Cache testCache = cm1.getCache("testCache");



More information about the infinispan-commits mailing list