[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