Package org.jboss.cache.lock

Source Code of org.jboss.cache.lock.MVCCLockManagerRecordingTest

package org.jboss.cache.lock;

import org.jboss.cache.Fqn;
import org.jboss.cache.config.Configuration;
import org.jboss.cache.factories.context.MVCCContextFactory;
import org.jboss.cache.invocation.InvocationContextContainer;
import org.jboss.cache.transaction.DummyTransactionManager;
import org.jboss.cache.util.TestingUtil;
import org.jboss.cache.util.concurrent.locks.LockContainer;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;

import javax.transaction.TransactionManager;
import java.util.ArrayList;
import java.util.List;

/**
* @author Manik Surtani (<a href="mailto:manik AT jboss DOT org">manik AT jboss DOT org</a>)
* @since 3.0
*/
@Test(groups = {"unit", "mvcc"})
public class MVCCLockManagerRecordingTest extends AbstractLockManagerRecordingTest
{
   @BeforeMethod
   public void setUp()
   {
      AbstractLockManagerRecordingTestTL tl = new AbstractLockManagerRecordingTestTL();
      threadLocal.set(tl);
      tl.icc = new InvocationContextContainer();
      MVCCLockManager mvccLockManager = new MVCCLockManager();
      TransactionManager tm = DummyTransactionManager.getInstance();
      mvccLockManager.injectConfiguration(new Configuration());
      mvccLockManager.injectDependencies(null, null, tm, tl.icc);
      mvccLockManager.startLockManager();
      tl.lm = mvccLockManager;
      tl.contextFactory = new MVCCContextFactory();
      tl.icc.injectContextFactory(tl.contextFactory);
   }

   public void testFqnHashing()
   {
      AbstractLockManagerRecordingTestTL tl = threadLocal.get();     
      LockContainer lc = (LockContainer) TestingUtil.extractField(tl.lm, "lockContainer");
      List<Fqn> fqns = new ArrayList<Fqn>();
      fqns.add(Fqn.ROOT);
      fqns.add(Fqn.fromString("/1"));
      fqns.add(Fqn.fromString("/1/2"));
      fqns.add(Fqn.fromString("/1/2/3"));
      fqns.add(Fqn.fromString("/a/b/c/d"));

      for (Fqn f : fqns) System.out.println("Fqn: " + f + "; hash = " + lc.hashToIndex(f));
   }
}
TOP

Related Classes of org.jboss.cache.lock.MVCCLockManagerRecordingTest

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.