Package org.jboss.web.tomcat.service.session

Examples of org.jboss.web.tomcat.service.session.JBossCacheManager


   {
      String warname = String.valueOf(++testId);
     
      // A war with a maxInactive of 30 mins and no maxIdle
      JBossCacheManager[] mgrs = getCacheManagers(warname, 1800, -1);
      JBossCacheManager jbcm0 = mgrs[0];
      JBossCacheManager jbcm1 = mgrs[1];
     
      assertTrue(jbcm0.getNotificationPolicy() instanceof MockClusteredSessionNotificationPolicy);
      MockClusteredSessionNotificationPolicy mcsnp0 = (MockClusteredSessionNotificationPolicy) jbcm0.getNotificationPolicy();
      assertNotNull("capability set", mcsnp0.getClusteredSessionNotificationCapability());
      mcsnp0.setResponse(notify);
     
      assertTrue(jbcm1.getNotificationPolicy() instanceof MockClusteredSessionNotificationPolicy);
      MockClusteredSessionNotificationPolicy mcsnp1 = (MockClusteredSessionNotificationPolicy) jbcm1.getNotificationPolicy();
      assertNotNull("capability set", mcsnp1.getClusteredSessionNotificationCapability());
      mcsnp1.setResponse(notify);
     
      MockHttpSessionListener hsl0 = new MockHttpSessionListener();
      MockHttpSessionAttributeListener hsal0 = new MockHttpSessionAttributeListener();     
      Context ctx = (Context) jbcm0.getContainer();
      ctx.setApplicationLifecycleListeners(new Object[]{ hsl0 })
      ctx.setApplicationEventListeners(new Object[]{ hsal0 })
     
      MockHttpSessionListener hsl1 = new MockHttpSessionListener();
      MockHttpSessionAttributeListener hsal1 = new MockHttpSessionAttributeListener();     
      ctx = (Context) jbcm1.getContainer();
      ctx.setApplicationLifecycleListeners(new Object[]{ hsl1 })
      ctx.setApplicationEventListeners(new Object[]{ hsal1 });
     
      // Initial request
      SetAttributesRequestHandler setHandler = new SetAttributesRequestHandler(attributes, false);
      SessionTestUtil.invokeRequest(jbcm0, setHandler, null);
     
      validateNewSession(setHandler);
     
      if (!notify)
      {
         validateNoNotifications(hsl0, hsal0, hsl1, hsal1);
      }
      else
      {
         assertEquals(1, hsl0.invocations.size());
         assertEquals(MockHttpSessionListener.Type.CREATED, hsl0.invocations.get(0));
         assertEquals(1, hsal0.invocations.size());
         assertEquals(MockHttpSessionAttributeListener.Type.ADDED, hsal0.invocations.get(0));
         assertEquals(2, SessionSpecListenerAttribute.invocations.size());
         assertEquals(SessionSpecListenerAttribute.Type.BOUND, SessionSpecListenerAttribute.invocations.get(0));
         assertEquals(SessionSpecListenerAttribute.Type.PASSIVATED, SessionSpecListenerAttribute.invocations.get(1));
        
         validateNoNotifications(null, null, hsl1, hsal1, null);
         clearNotifications(hsl0, hsal0, null, null, SessionSpecListenerAttribute.invocations);
        
      }
     
      jbcm0.stop();
     
      if (!notify)
      {
         validateNoNotifications(hsl0, hsal0, hsl1, hsal1);
      }
      else
      {
         assertEquals(1, hsl0.invocations.size());
         assertEquals(MockHttpSessionListener.Type.DESTROYED, hsl0.invocations.get(0));
         assertEquals(1, hsal0.invocations.size());
         assertEquals(MockHttpSessionAttributeListener.Type.REMOVED, hsal0.invocations.get(0));
         assertEquals(1, SessionSpecListenerAttribute.invocations.size());
         assertEquals(SessionSpecListenerAttribute.Type.UNBOUND, SessionSpecListenerAttribute.invocations.get(0));
        
         validateNoNotifications(null, null, hsl1, hsal1, null);
         clearNotifications(hsl0, hsal0, null, null, SessionSpecListenerAttribute.invocations);
        
        
      }
     
      jbcm1.stop();
     
      if (!notify)
      {
         validateNoNotifications(hsl0, hsal0, hsl1, hsal1);
      }
View Full Code Here


   }
  
   protected JBossCacheManager[] getCacheManagers(String warname, int maxInactive, int maxIdle)
      throws Exception
   {
      JBossCacheManager jbcm0 = SessionTestUtil.createManager(warname, maxInactive, pojoCaches[0], null);
      JBossWebMetaData metadata = SessionTestUtil.createWebMetaData(getReplicationGranularity(), getReplicationTrigger(), -1, maxIdle > 0, maxIdle, -1 ,false, 0);
      metadata.getReplicationConfig().setSessionNotificationPolicy(MockClusteredSessionNotificationPolicy.class.getName());
      jbcm0.init(warname, metadata);
      this.managers.add(jbcm0);
      jbcm0.start();
     
      JBossCacheManager jbcm1 = SessionTestUtil.createManager(warname, maxInactive, pojoCaches[1], null);
      metadata = SessionTestUtil.createWebMetaData(getReplicationGranularity(), getReplicationTrigger(), -1, true, maxIdle, -1 ,false, 0);
      metadata.getReplicationConfig().setSessionNotificationPolicy(MockClusteredSessionNotificationPolicy.class.getName());
      jbcm1.init(warname, metadata);
      this.managers.add(jbcm1);
      jbcm1.start();
     
      return new JBossCacheManager[]{jbcm0, jbcm1};
   }
View Full Code Here

   {
      log.info("Enter testReplicatedMaxSessionsWithMinIdle");
     
      ++testCount;
      String passDir = getPassivationDir(testCount, 1);
      JBossCacheManager jbcm0 = SessionTestUtil.createManager("test" + testCount, 1, false, passDir, false, false, null, caches);
     
      JBossWebMetaData webMetaData = SessionTestUtil.createWebMetaData(1, true, 3, 1);
      jbcm0.init("test.war", webMetaData);
     
      jbcm0.start();
     
      assertTrue("Passivation is enabled", jbcm0.isPassivationEnabled());
      assertEquals("Correct max active count", 1, jbcm0.getMaxActiveAllowed());
      assertEquals("Correct max idle time", 3, jbcm0.getPassivationMaxIdleTime());
      assertEquals("Correct min idle time", 1, jbcm0.getPassivationMinIdleTime());
     
      passDir = getPassivationDir(testCount, 2);
      JBossCacheManager jbcm1 = SessionTestUtil.createManager("test" + testCount, 1, false, passDir, false, false, null, caches);
     
      jbcm1.init("test.war", webMetaData);
     
      jbcm1.start();
     
      assertTrue("Passivation is enabled", jbcm1.isPassivationEnabled());
      assertEquals("Correct max active count", 1, jbcm1.getMaxActiveAllowed());
      assertEquals("Correct max idle time", 3, jbcm1.getPassivationMaxIdleTime());
      assertEquals("Correct min idle time", 1, jbcm1.getPassivationMinIdleTime());
     
      // Set up a session
      createAndUseSession(jbcm0, "1", true, true);
     
      assertEquals("Session count correct", 1, jbcm0.getActiveSessionCount());
      assertEquals("Local session count correct", 1, jbcm0.getLocalActiveSessionCount());
      assertEquals("Passivated session count correct", 0, jbcm0.getPassivatedSessionCount());     
      assertEquals("Session count correct", 1, jbcm1.getActiveSessionCount());
      assertEquals("Local session count correct", 0, jbcm1.getLocalActiveSessionCount());
      assertEquals("Passivated session count correct", 0, jbcm0.getPassivatedSessionCount());
     
      // Should fail to create a 2nd
      createAndUseSession(jbcm1, "2", false, false);     
     
      // Sleep past maxIdleTime     
      SessionTestUtil.sleepThread(1100);       
     
      assertEquals("Passivated session count correct", 0, jbcm1.getPassivatedSessionCount());
      
      createAndUseSession(jbcm1, "2", true, true);     
      
      assertEquals("Session count correct", 2, jbcm0.getActiveSessionCount());
      assertEquals("Local session count correct", 1, jbcm0.getLocalActiveSessionCount());
      assertEquals("Created session count correct", 1, jbcm0.getCreatedSessionCount());
      assertEquals("Expired session count correct", 0, jbcm0.getExpiredSessionCount())
      assertEquals("Passivated session count correct", 0, jbcm0.getPassivatedSessionCount());   
      
      assertEquals("Session count correct", 1, jbcm1.getActiveSessionCount());
      assertEquals("Local session count correct", 1, jbcm1.getLocalActiveSessionCount());
      assertEquals("Created session count correct", 1, jbcm1.getCreatedSessionCount());
      assertEquals("Expired session count correct", 0, jbcm1.getExpiredSessionCount());
      assertEquals("Passivated session count correct", 1, jbcm1.getPassivatedSessionCount());    
     
   }
View Full Code Here

   {
      log.info("Enter testTotalReplication");
     
      ++testCount;
      String passDir = getPassivationDir(testCount, 1);
      JBossCacheManager jbcm0 = SessionTestUtil.createManager("test" + testCount, 1, false, passDir, true, false, null, caches);
     
      JBossWebMetaData webMetaData = SessionTestUtil.createWebMetaData(1, true, 3, 1);
      jbcm0.init("test.war", webMetaData);
     
      jbcm0.start();
     
      assertTrue("Passivation is enabled", jbcm0.isPassivationEnabled());
      assertEquals("Correct max active count", 1, jbcm0.getMaxActiveAllowed());
      assertEquals("Correct max idle time", 3, jbcm0.getPassivationMaxIdleTime());
      assertEquals("Correct min idle time", 1, jbcm0.getPassivationMinIdleTime());
     
      passDir = getPassivationDir(testCount, 2);
      JBossCacheManager jbcm1 = SessionTestUtil.createManager("test" + testCount, 1, false, passDir, true, false, null, caches);
     
      jbcm1.init("test.war", webMetaData);
     
      jbcm1.start();
     
      assertTrue("Passivation is enabled", jbcm1.isPassivationEnabled());
      assertEquals("Correct max active count", 1, jbcm1.getMaxActiveAllowed());
      assertEquals("Correct max idle time", 3, jbcm1.getPassivationMaxIdleTime());
      assertEquals("Correct min idle time", 1, jbcm1.getPassivationMinIdleTime());
     
      // Set up a session
      createAndUseSession(jbcm0, "1", true, true);
     
      assertEquals("Session count correct", 1, jbcm0.getActiveSessionCount());
      assertEquals("Local session count correct", 1, jbcm0.getLocalActiveSessionCount());     
      assertEquals("Session count correct", 1, jbcm1.getActiveSessionCount());
      assertEquals("Local session count correct", 0, jbcm1.getLocalActiveSessionCount());
     
      // Should fail to create a 2nd
      createAndUseSession(jbcm1, "2", false, false);     
     
      // Sleep past maxIdleTime     
      SessionTestUtil.sleepThread(1100);       
     
      assertEquals("Passivated session count correct", 0, jbcm1.getPassivatedSessionCount());
      
      createAndUseSession(jbcm1, "2", true, true);     
      
      assertEquals("Session count correct", 2, jbcm0.getActiveSessionCount());
      assertEquals("Local session count correct", 1, jbcm0.getLocalActiveSessionCount());
      assertEquals("Created session count correct", 1, jbcm0.getCreatedSessionCount());
      assertEquals("Expired session count correct", 0, jbcm0.getExpiredSessionCount());     
      
      assertEquals("Session count correct", 1, jbcm1.getActiveSessionCount());
      assertEquals("Local session count correct", 1, jbcm0.getLocalActiveSessionCount());
      assertEquals("Created session count correct", 1, jbcm0.getCreatedSessionCount());
      assertEquals("Expired session count correct", 0, jbcm0.getExpiredSessionCount());     
     
   }
View Full Code Here

   {
      log.info("Enter testRegionBasedMarshalling");
     
      ++testCount;
      String passDir = getPassivationDir(testCount, 1);
      JBossCacheManager jbcm0 = SessionTestUtil.createManager("test" + testCount, 1, false, passDir, false, true, null, caches);
     
      JBossWebMetaData webMetaData = SessionTestUtil.createWebMetaData(1, true, 3, 1);
      jbcm0.init("test.war", webMetaData);
     
      jbcm0.start();
     
      assertTrue("Passivation is enabled", jbcm0.isPassivationEnabled());
      assertEquals("Correct max active count", 1, jbcm0.getMaxActiveAllowed());
      assertEquals("Correct max idle time", 3, jbcm0.getPassivationMaxIdleTime());
      assertEquals("Correct min idle time", 1, jbcm0.getPassivationMinIdleTime());
     
      passDir = getPassivationDir(testCount, 2);
      JBossCacheManager jbcm1 = SessionTestUtil.createManager("test" + testCount, 1, false, passDir, false, true, null, caches);
     
      jbcm1.init("test.war", webMetaData);
     
      jbcm1.start();
     
      assertTrue("Passivation is enabled", jbcm1.isPassivationEnabled());
      assertEquals("Correct max active count", 1, jbcm1.getMaxActiveAllowed());
      assertEquals("Correct max idle time", 3, jbcm1.getPassivationMaxIdleTime());
      assertEquals("Correct min idle time", 1, jbcm1.getPassivationMinIdleTime());
     
      // Set up a session
      createAndUseSession(jbcm0, "1", true, true);
     
      assertEquals("Session count correct", 1, jbcm0.getActiveSessionCount());
      assertEquals("Local session count correct", 1, jbcm0.getLocalActiveSessionCount());     
      assertEquals("Session count correct", 1, jbcm1.getActiveSessionCount());
      assertEquals("Local session count correct", 0, jbcm1.getLocalActiveSessionCount());
     
      // Should fail to create a 2nd
      createAndUseSession(jbcm1, "2", false, false);     
     
      // Sleep past maxIdleTime     
      SessionTestUtil.sleepThread(1100);       
     
      assertEquals("Passivated session count correct", 0, jbcm1.getPassivatedSessionCount());
      
      createAndUseSession(jbcm1, "2", true, true);     
      
      assertEquals("Session count correct", 2, jbcm0.getActiveSessionCount());
      assertEquals("Local session count correct", 1, jbcm0.getLocalActiveSessionCount());
      assertEquals("Created session count correct", 1, jbcm0.getCreatedSessionCount());
      assertEquals("Expired session count correct", 0, jbcm0.getExpiredSessionCount());     
      
      assertEquals("Session count correct", 1, jbcm1.getActiveSessionCount());
      assertEquals("Local session count correct", 1, jbcm0.getLocalActiveSessionCount());
      assertEquals("Created session count correct", 1, jbcm0.getCreatedSessionCount());
      assertEquals("Expired session count correct", 0, jbcm0.getExpiredSessionCount());     
     
   }
View Full Code Here

   {
      log.info("Enter testTotalReplicationWithMarshalling");
     
      ++testCount;
      String passDir = getPassivationDir(testCount, 1);
      JBossCacheManager jbcm0 = SessionTestUtil.createManager("test" + testCount, 1, false, passDir, true, true, null, caches);
     
      JBossWebMetaData webMetaData = SessionTestUtil.createWebMetaData(1, true, 3, 1);
      jbcm0.init("test.war", webMetaData);
     
      jbcm0.start();
     
      assertTrue("Passivation is enabled", jbcm0.isPassivationEnabled());
      assertEquals("Correct max active count", 1, jbcm0.getMaxActiveAllowed());
      assertEquals("Correct max idle time", 3, jbcm0.getPassivationMaxIdleTime());
      assertEquals("Correct min idle time", 1, jbcm0.getPassivationMinIdleTime());
     
      passDir = getPassivationDir(testCount, 2);
      JBossCacheManager jbcm1 = SessionTestUtil.createManager("test" + testCount, 1, false, passDir, true, true, null, caches);
     
      jbcm1.init("test.war", webMetaData);
     
      jbcm1.start();
     
      assertTrue("Passivation is enabled", jbcm1.isPassivationEnabled());
      assertEquals("Correct max active count", 1, jbcm1.getMaxActiveAllowed());
      assertEquals("Correct max idle time", 3, jbcm1.getPassivationMaxIdleTime());
      assertEquals("Correct min idle time", 1, jbcm1.getPassivationMinIdleTime());
     
      // Set up a session
      createAndUseSession(jbcm0, "1", true, true);
     
      assertEquals("Session count correct", 1, jbcm0.getActiveSessionCount());
      assertEquals("Local session count correct", 1, jbcm0.getLocalActiveSessionCount());     
      assertEquals("Session count correct", 1, jbcm1.getActiveSessionCount());
      assertEquals("Local session count correct", 0, jbcm1.getLocalActiveSessionCount());
     
      // Should fail to create a 2nd
      createAndUseSession(jbcm1, "2", false, false);     
     
      // Sleep past maxIdleTime     
      SessionTestUtil.sleepThread(1100);       
     
      assertEquals("Passivated session count correct", 0, jbcm1.getPassivatedSessionCount());
      
      createAndUseSession(jbcm1, "2", true, true);     
      
      assertEquals("Session count correct", 2, jbcm0.getActiveSessionCount());
      assertEquals("Local session count correct", 1, jbcm0.getLocalActiveSessionCount());
      assertEquals("Created session count correct", 1, jbcm0.getCreatedSessionCount());
      assertEquals("Expired session count correct", 0, jbcm0.getExpiredSessionCount());     
      
      assertEquals("Session count correct", 1, jbcm1.getActiveSessionCount());
      assertEquals("Local session count correct", 1, jbcm0.getLocalActiveSessionCount());
      assertEquals("Created session count correct", 1, jbcm0.getCreatedSessionCount());
      assertEquals("Expired session count correct", 0, jbcm0.getExpiredSessionCount());     
     
   }
View Full Code Here

   private void standaloneWarRedeployTest(boolean restartCache)
         throws Exception
   {
      ++testCount;
      String passDir = getPassivationDir(testCount, 1);
      JBossCacheManager jbcm = SessionTestUtil.createManager("test" + testCount, 300, true, passDir, false, false, null, caches);
      PojoCache cache = SessionTestUtil.getDistributedCacheManagerFactoryPojoCache();
     
      JBossWebMetaData webMetaData = SessionTestUtil.createWebMetaData(2, true, 3, 1);
      jbcm.init("test.war", webMetaData);
     
      jbcm.start();
     
      assertTrue("Passivation is enabled", jbcm.isPassivationEnabled());
      assertEquals("Correct max active count", 2, jbcm.getMaxActiveAllowed());
      assertEquals("Correct max idle time", 3, jbcm.getPassivationMaxIdleTime());
      assertEquals("Correct min idle time", 1, jbcm.getPassivationMinIdleTime());
     
      // Set up a session
      createAndUseSession(jbcm, "1", true, true);
     
      assertEquals("Session count correct", 1, jbcm.getActiveSessionCount());
      assertEquals("Local session count correct", 1, jbcm.getLocalActiveSessionCount());
     
      // And a 2nd
      createAndUseSession(jbcm, "2", true, true);    
     
      assertEquals("Session count correct", 2, jbcm.getActiveSessionCount());
      assertEquals("Local session count correct", 2, jbcm.getLocalActiveSessionCount());    
      assertEquals("Created session count correct", 2, jbcm.getCreatedSessionCount());
      assertEquals("Expired session count correct", 0, jbcm.getExpiredSessionCount());

      //    Sleep past minIdleTime
      SessionTestUtil.sleepThread(1100);
     
      assertEquals("Passivated session count correct", 0, jbcm.getPassivatedSessionCount());
     
      createAndUseSession(jbcm, "3", true, true);     
     
      assertEquals("Session count correct", 2, jbcm.getActiveSessionCount());
      assertEquals("Local session count correct", 2, jbcm.getLocalActiveSessionCount());
      assertEquals("Created session count correct", 3, jbcm.getCreatedSessionCount());
      assertEquals("Expired session count correct", 0, jbcm.getExpiredSessionCount());
      assertEquals("Passivated session count correct", 1, jbcm.getPassivatedSessionCount());
     
      jbcm.stop();
     
      if (restartCache)
      {
         cache.stop();
         cache.destroy();
         caches.remove(cache);
        
         passDir = getPassivationDir(testCount, 1);
         jbcm = SessionTestUtil.createManager("test" + testCount, 5, true, passDir, false, false, null, caches);
      }
      else
      {
         jbcm = SessionTestUtil.createManager("test" + testCount, 5, cache, null);
      }
      jbcm.init("test.war", webMetaData);
     
      jbcm.start();
     
      assertTrue("Passivation is enabled", jbcm.isPassivationEnabled());
      assertEquals("Correct max active count", 2, jbcm.getMaxActiveAllowed());
      assertEquals("Correct max idle time", 3, jbcm.getPassivationMaxIdleTime());
      assertEquals("Correct min idle time", 1, jbcm.getPassivationMinIdleTime());    
     
      assertEquals("Session count correct", 2, jbcm.getActiveSessionCount());
      assertEquals("Local session count correct", 0, jbcm.getLocalActiveSessionCount());
      assertEquals("Created session count correct", 0, jbcm.getCreatedSessionCount());
      assertEquals("Expired session count correct", 0, jbcm.getExpiredSessionCount());
      assertEquals("Passivated session count correct", 1, jbcm.getPassivatedSessionCount());
     
      // Sleep past minIdleTime
      SessionTestUtil.sleepThread(1100);
     
      createAndUseSession(jbcm, "4", true, true);
View Full Code Here

      log.info("++++ Starting testSessionLifecycle ++++");
      String warname = String.valueOf(++testId);
     
      // A war with a maxInactive of 30 mins maxUnreplicated of 0
      JBossCacheManager[] mgrs = getCacheManagers(warname, 1800, 1);
      JBossCacheManager jbcm0 = mgrs[0];
      JBossCacheManager jbcm1 = mgrs[1];
     
     
      // Initial request
      SetAttributesRequestHandler setHandler = new SetAttributesRequestHandler(getAttributeMap(), false);
      log.info("initial request");
      SessionTestUtil.invokeRequest(jbcm0, setHandler, null);     
     
      String sessionId = setHandler.getSessionId();
      WeakReference<Session> session0A = new WeakReference<Session>(jbcm0.findSession(sessionId));     
      SessionTestUtil.cleanupPipeline(jbcm0);
      assertNotNull(session0A.get());
     
      // Modify attribute request
      setHandler = new SetAttributesRequestHandler(getAttributeMap(), false);
      log.info("Modify attribute request");
      SessionTestUtil.invokeRequest(jbcm0, setHandler, sessionId);     
      SessionTestUtil.cleanupPipeline(jbcm0);
     
      System.gc();
      System.runFinalization();
      assertEquals(1, Attribute.attributeCount());
     
      // Passivate
      Thread.sleep(1100);
     
      log.info("passivate node 0");
      jbcm0.backgroundProcess();
      log.info("passivate node 1");
      jbcm1.backgroundProcess();
     
      System.gc();
      System.runFinalization();
      assertEquals(0, Attribute.attributeCount());
      assertNull(session0A.get());
     
      // Remove attribute request
      RemoveAttributesRequestHandler removeHandler = new RemoveAttributesRequestHandler(KEYS, false);
      log.info("remove request");
      SessionTestUtil.invokeRequest(jbcm0, removeHandler, sessionId);
     
      WeakReference<Session> session0B = new WeakReference<Session>(jbcm0.findSession(sessionId));
      SessionTestUtil.cleanupPipeline(jbcm0);
      System.gc();
      System.runFinalization();
      assertEquals(0, Attribute.attributeCount());
      assertNotNull(session0B.get());
     
      // Failover request
      setHandler = new SetAttributesRequestHandler(getAttributeMap(), false);
      log.info("failover request");
      SessionTestUtil.invokeRequest(jbcm1, setHandler, sessionId);
     
      WeakReference<Session> session1A = new WeakReference<Session>(jbcm1.findSession(sessionId));
      SessionTestUtil.cleanupPipeline(jbcm1);
      assertNotNull(session1A.get());
      assertEquals(1, Attribute.attributeCount());
     
      // Passivate
      Thread.sleep(1100);
     
      log.info("passivate node 0");
      jbcm0.backgroundProcess();
      log.info("passivate node 1");
      jbcm1.backgroundProcess();
     
      System.gc();
      System.runFinalization();
      assertEquals(0, Attribute.attributeCount());
      assertNull(session0B.get());
      assertNull(session1A.get());
     
      // Reactivate
      BasicRequestHandler getHandler = new BasicRequestHandler(KEYS, false);
      log.info("activate node 1");
      SessionTestUtil.invokeRequest(jbcm1, getHandler, sessionId);
     
      WeakReference<Session> session1B = new WeakReference<Session>(jbcm1.findSession(sessionId));
      SessionTestUtil.cleanupPipeline(jbcm1);
      assertNotNull(session1B.get());
      assertEquals(1, Attribute.attributeCount());     
     
      // Fail back
View Full Code Here

      log.info("++++ Starting testSessionExpiration ++++");
      String warname = String.valueOf(++testId);
     
      // A war with a maxInactive of 2 secs and a maxIdle of 10 (don't passivate)
      JBossCacheManager[] mgrs = getCacheManagers(warname, 2, 10);
      JBossCacheManager jbcm0 = mgrs[0];
      JBossCacheManager jbcm1 = mgrs[1];
     
      // Initial request
      SetAttributesRequestHandler setHandler = new SetAttributesRequestHandler(getAttributeMap(), false);
      log.info("initial request");
      SessionTestUtil.invokeRequest(jbcm0, setHandler, null);
      assertEquals(1, Attribute.attributeCount());       
     
      String sessionId = setHandler.getSessionId();
      WeakReference<Session> session0A = new WeakReference<Session>(jbcm0.findSession(sessionId));
      SessionTestUtil.cleanupPipeline(jbcm0);
      assertNotNull(session0A.get());
      assertEquals(1, Attribute.attributeCount());       
     
      // Failover request
      setHandler = new SetAttributesRequestHandler(getAttributeMap(), false);
      log.info("fail over request");
      SessionTestUtil.invokeRequest(jbcm1, setHandler, sessionId);
      assertNotNull(setHandler.getCheckedAttributes().get(KEY));
      assertEquals(Attribute.COUNT -1, ((Attribute) setHandler.getCheckedAttributes().get(KEY)).getCount());
     
      WeakReference<Session> session1A = new WeakReference<Session>(jbcm1.findSession(sessionId));
      SessionTestUtil.cleanupPipeline(jbcm1);
     
      System.gc();
      System.runFinalization();
      assertNotNull(session1A.get());
      assertEquals(2, Attribute.attributeCount());
     
      // Expire
      Thread.sleep(2100);
     
      log.info("expire node 0");
      jbcm0.backgroundProcess();
      log.info("expire node 1");
      jbcm1.backgroundProcess();
     
      System.gc();
      System.runFinalization();
      assertNull(session0A.get());
      assertNull(session1A.get());
View Full Code Here

      log.info("++++ Starting testUndeploy ++++");
      String warname = String.valueOf(++testId);
     
      // A war with a maxInactive of 30 mins and no maxIdle
      JBossCacheManager[] mgrs = getCacheManagers(warname, 1800, -1);
      JBossCacheManager jbcm0 = mgrs[0];
      JBossCacheManager jbcm1 = mgrs[1];
     
      // Initial request
      SetAttributesRequestHandler setHandler = new SetAttributesRequestHandler(getAttributeMap(), false);
      SessionTestUtil.invokeRequest(jbcm0, setHandler, null);
      assertEquals(1, Attribute.attributeCount())
     
      String sessionId = setHandler.getSessionId();
      WeakReference<Session> session0A = new WeakReference<Session>(jbcm0.findSession(sessionId));
      SessionTestUtil.cleanupPipeline(jbcm0);
      assertNotNull(session0A.get());
     
      jbcm0.stop();        
      jbcm1.stop();   
     
      System.gc();
      System.runFinalization();
      assertEquals(0, Attribute.attributeCount());
      assertNull(session0A.get());
View Full Code Here

TOP

Related Classes of org.jboss.web.tomcat.service.session.JBossCacheManager

Copyright © 2018 www.massapicom. 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.