Class CarbonTomcatSessionMessage

java.lang.Object
org.apache.axis2.clustering.ClusteringCommand
org.apache.axis2.clustering.ClusteringMessage
org.wso2.carbon.webapp.mgt.session.CarbonTomcatSessionMessage
All Implemented Interfaces:
Serializable, org.apache.catalina.ha.ClusterMessage, org.apache.catalina.ha.session.SessionMessage

public class CarbonTomcatSessionMessage extends org.apache.axis2.clustering.ClusteringMessage implements org.apache.catalina.ha.session.SessionMessage
This class implements tomcat session message and extends axis2 clustering message. This is needed when clustering is enabled for webapps with tomcat, the session messages for those webapps should be sent to other nodes via the axis2 clustering implementation.
See Also:
  • Field Details

    • address

      protected transient org.apache.catalina.tribes.Member address
  • Constructor Details

    • CarbonTomcatSessionMessage

      public CarbonTomcatSessionMessage()
    • CarbonTomcatSessionMessage

      public CarbonTomcatSessionMessage(String contextName, int eventtype, byte[] session, String sessionID, String uniqueID, int tenantId)
    • CarbonTomcatSessionMessage

      @Deprecated public CarbonTomcatSessionMessage(String contextName, int eventtype, byte[] session, String sessionID, String uniqueID)
      Deprecated.
      Creates a session message. Depending on what event type you want this message to represent, you populate the different parameters in the constructor
      The following rules apply dependent on what event type argument you use:
      EVT_SESSION_CREATED
      The parameters: session, sessionID must be set.
      EVT_SESSION_EXPIRED
      The parameters: sessionID must be set.
      EVT_SESSION_ACCESSED
      The parameters: sessionID must be set.
      EVT_GET_ALL_SESSIONS
      get all sessions from from one of the nodes.
      EVT_SESSION_DELTA
      Send attribute delta (add,update,remove attribute or principal, ...).
      EVT_ALL_SESSION_DATA
      Send complete serializes session list
      EVT_ALL_SESSION_TRANSFERCOMPLETE
      send that all session state information are transfered after GET_ALL_SESSION received from this sender.
      EVT_CHANGE_SESSION_ID
      send original sessionID and new sessionID.
      EVT_ALL_SESSION_NOCONTEXTMANAGER
      send that context manager does not exist after GET_ALL_SESSION received from this sender.
      Parameters:
      contextName - - the name of the context (application
      eventtype - - one of the 8 event type defined in this class
      session - - the serialized byte array of the session itself
      sessionID - - the id that identifies this session
      uniqueID - - the id that identifies this message
  • Method Details

    • getEventType

      public int getEventType()
      returns the event type
      Specified by:
      getEventType in interface org.apache.catalina.ha.session.SessionMessage
      Returns:
      one of the event types EVT_XXXX
    • getSession

      public byte[] getSession()
      Specified by:
      getSession in interface org.apache.catalina.ha.session.SessionMessage
      Returns:
      the serialized data for the session
    • getSessionID

      public String getSessionID()
      Specified by:
      getSessionID in interface org.apache.catalina.ha.session.SessionMessage
      Returns:
      the session ID for the session
    • setTimestamp

      public void setTimestamp(long time)
      set message send time but only the first setting works (one shot)
      Specified by:
      setTimestamp in interface org.apache.catalina.ha.ClusterMessage
    • getTimestamp

      public long getTimestamp()
      Specified by:
      getTimestamp in interface org.apache.catalina.ha.ClusterMessage
      Overrides:
      getTimestamp in class org.apache.axis2.clustering.ClusteringMessage
    • getEventTypeString

      public String getEventTypeString()
      clear text event type name (for logging purpose only)
      Specified by:
      getEventTypeString in interface org.apache.catalina.ha.session.SessionMessage
      Returns:
      the event type in a string representation, useful for debugging
    • getContextName

      public String getContextName()
      Specified by:
      getContextName in interface org.apache.catalina.ha.session.SessionMessage
    • getAddress

      public org.apache.catalina.tribes.Member getAddress()
      Specified by:
      getAddress in interface org.apache.catalina.ha.ClusterMessage
    • setAddress

      public void setAddress(org.apache.catalina.tribes.Member member)
      Specified by:
      setAddress in interface org.apache.catalina.ha.ClusterMessage
    • getUniqueId

      public String getUniqueId()
      Specified by:
      getUniqueId in interface org.apache.catalina.ha.ClusterMessage
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • getResponse

      public org.apache.axis2.clustering.ClusteringCommand getResponse()
      Specified by:
      getResponse in class org.apache.axis2.clustering.ClusteringMessage
    • setTenantId

      public void setTenantId(int tenantId)
    • execute

      public void execute(org.apache.axis2.context.ConfigurationContext mainConfigContext) throws org.apache.axis2.clustering.ClusteringFault
      Specified by:
      execute in class org.apache.axis2.clustering.ClusteringCommand
      Throws:
      org.apache.axis2.clustering.ClusteringFault