[jboss-cvs] JBossAS SVN: r58585 - trunk/tomcat/src/main/org/jboss/web/tomcat/tc6/session

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Sat Nov 18 06:41:56 EST 2006


Author: bstansberry at jboss.com
Date: 2006-11-18 06:41:56 -0500 (Sat, 18 Nov 2006)
New Revision: 58585

Modified:
   trunk/tomcat/src/main/org/jboss/web/tomcat/tc6/session/ClusteredSession.java
Log:
Use enums for config options

Modified: trunk/tomcat/src/main/org/jboss/web/tomcat/tc6/session/ClusteredSession.java
===================================================================
--- trunk/tomcat/src/main/org/jboss/web/tomcat/tc6/session/ClusteredSession.java	2006-11-18 11:41:28 UTC (rev 58584)
+++ trunk/tomcat/src/main/org/jboss/web/tomcat/tc6/session/ClusteredSession.java	2006-11-18 11:41:56 UTC (rev 58585)
@@ -49,7 +49,6 @@
 import org.apache.catalina.util.Enumerator;
 import org.apache.catalina.util.StringManager;
 import org.jboss.logging.Logger;
-import org.jboss.metadata.WebMetaData;
 
 /**
  * Abstract base class for session clustering based on StandardSession. Different session
@@ -94,7 +93,7 @@
       replicationExcludes = Collections.unmodifiableSet(set);
    }
    
-   protected int invalidationPolicy;
+   protected InvalidateSessionPolicy invalidationPolicy;
 
    /**
     * If true, means the local in-memory session data contains
@@ -469,7 +468,7 @@
          setNew(false);
       }
 
-      if (invalidationPolicy == WebMetaData.SESSION_INVALIDATE_ACCESS)
+      if (invalidationPolicy == InvalidateSessionPolicy.ACCESS)
       {
          this.sessionMetadataDirty();
       }
@@ -525,13 +524,16 @@
 
       // Validate our current state
       if (!isValid())
+      {
          throw new IllegalStateException
             (sm.getString("clusteredSession.setAttribute.ise"));
-      if ((manager != null) && manager.getDistributable() &&
-         !(canAttributeBeReplicated(value)))
+      }
+      
+      if (canAttributeBeReplicated(value) == false)
+      {
          throw new IllegalArgumentException
             (sm.getString("clusteredSession.setAttribute.iae"));
-
+      }
       // Construct an event with the new value
       HttpSessionBindingEvent event = null;
 
@@ -997,7 +999,7 @@
       listeners.clear();
       support = new PropertyChangeSupport(this);
       
-      invalidationPolicy = 0;
+      invalidationPolicy = InvalidateSessionPolicy.ACCESS;
       outdatedTime = 0;
       outdatedVersion = 0;
       sessionAttributesDirty = false;
@@ -1114,7 +1116,8 @@
          thisAccessedTime    = in.readLong();
          
          // From ClusteredSession
-         invalidationPolicy  = in.readInt();
+         
+         invalidationPolicy  = InvalidateSessionPolicy.fromInt(in.readInt());
          version             = in.readInt();
    
          // Get our id without any jvmRoute appended
@@ -1176,7 +1179,7 @@
          out.writeLong(thisAccessedTime);
          
          // From ClusteredSession
-         out.writeInt(invalidationPolicy);
+         out.writeInt(invalidationPolicy.ordinal());
          out.writeInt(version);
          
          // TODO uncomment when work on JBAS-1900 is completed  
@@ -1447,6 +1450,9 @@
 
    protected void sessionAttributesDirty()
    {
+      if (!sessionAttributesDirty && log.isTraceEnabled())
+         log.trace("Marking session attributes dirty" + id);
+      
       sessionAttributesDirty = true;
    }
    
@@ -1457,6 +1463,8 @@
    
    protected void sessionMetadataDirty()
    {
+      if (!sessionMetadataDirty && !isNew && log.isTraceEnabled())
+         log.trace("Marking session metadata dirty " + id);
       sessionMetadataDirty = true;
    }
    
@@ -1492,10 +1500,10 @@
       boolean result = false;
       switch (invalidationPolicy)
       {
-         case (WebMetaData.SESSION_INVALIDATE_SET_AND_GET):
+         case SET_AND_GET:
             result = true;
             break;
-         case (WebMetaData.SESSION_INVALIDATE_SET_AND_NON_PRIMITIVE_GET):
+         case SET_AND_NON_PRIMITIVE_GET:
             result = isMutable(attribute);
             break;
          default:




More information about the jboss-cvs-commits mailing list