Class DeltaSession

java.lang.Object
org.apache.catalina.session.StandardSession
org.apache.geode.modules.session.catalina.DeltaSession
All Implemented Interfaces:
jakarta.servlet.http.HttpSession, Serializable, org.apache.catalina.Session, DataSerializable, Delta, org.apache.geode.internal.size.Sizeable, GatewayDelta, DeltaSessionInterface
Direct Known Subclasses:
DeltaSession10

public class DeltaSession extends org.apache.catalina.session.StandardSession implements DataSerializable, Delta, GatewayDelta, org.apache.geode.internal.size.Sizeable, DeltaSessionInterface
See Also:
  • Nested Class Summary

    Nested classes/interfaces inherited from interface org.apache.geode.DataSerializable

    DataSerializable.Replaceable
  • Field Summary

    Fields inherited from class org.apache.catalina.session.StandardSession

    accessCount, activityCheck, attributes, authType, creationTime, EMPTY_ARRAY, expiring, facade, id, isNew, isValid, lastAccessAtStart, lastAccessedTime, listeners, manager, maxInactiveInterval, notes, principal, sm, support, thisAccessedTime

    Fields inherited from interface org.apache.geode.modules.gatewaydelta.GatewayDelta

    GATEWAY_DELTA_REGION_NAME

    Fields inherited from interface org.apache.catalina.Session

    SESSION_ACTIVATED_EVENT, SESSION_CREATED_EVENT, SESSION_DESTROYED_EVENT, SESSION_PASSIVATED_EVENT

    Fields inherited from interface org.apache.geode.internal.size.Sizeable

    PER_OBJECT_OVERHEAD
  • Constructor Summary

    Constructors
    Constructor
    Description
    Construct a new Session associated with no Manager.
    DeltaSession(org.apache.catalina.Manager manager)
    Construct a new Session associated with the specified Manager.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
     
    void
    applyAttributeEvents(Region<String,DeltaSessionInterface> region, List<org.apache.geode.modules.session.catalina.internal.DeltaSessionAttributeEvent> events)
     
    void
     
    protected void
     
    void
    expire(boolean notify)
     
    void
    Reads the state of this object as primitive data from the given DataInput.
    void
    This method is invoked on an existing application object when an update is received as a delta.
     
    protected Object
     
    protected Map<String,Object>
     
     
     
    boolean
     
     
    jakarta.servlet.http.HttpSession
    Return the HttpSession for which this object is the facade.
    int
     
    boolean
    Returns true if this object has pending changes it can write out as a delta.
    void
     
    void
     
    void
     
    void
     
    void
    removeAttribute(String name, boolean notify)
     
    protected void
    removeAttributeInternal(String name, boolean notify)
     
    void
    setAttribute(String name, Object value, boolean notify)
     
    protected void
     
    void
     
    void
    setMaxInactiveInterval(int interval)
     
    void
    setOwner(Object manager)
     
    void
     
    void
    Writes the state of this object as primitive data to the given DataOutput.
    void
    This method is invoked on an application object at the delta sender, if GemFire determines the presence of a delta by calling Delta.hasDelta() on the object.
     

    Methods inherited from class org.apache.catalina.session.StandardSession

    access, activate, addSessionListener, doReadObject, doWriteObject, endAccess, exclude, expire, fireSessionEvent, getAttributeNames, getAuthType, getCreationTime, getCreationTimeInternal, getId, getIdInternal, getIdleTime, getIdleTimeInternal, getLastAccessedTime, getLastAccessedTimeInternal, getManager, getMaxInactiveInterval, getNote, getNoteNames, getServletContext, getThisAccessedTime, getThisAccessedTimeInternal, isAttributeDistributable, isNew, isValid, isValidInternal, keys, passivate, readObjectData, recycle, removeAttribute, removeNote, removeSessionListener, setAttribute, setAuthType, setCreationTime, setId, setId, setManager, setNew, setNote, setValid, tellChangedSessionId, tellNew, writeObjectData

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

    Methods inherited from interface org.apache.geode.Delta

    getForceRecalculateSize

    Methods inherited from interface org.apache.geode.modules.session.catalina.DeltaSessionInterface

    activate, isValid

    Methods inherited from interface org.apache.catalina.Session

    access, addSessionListener, endAccess, expire, getAuthType, getCreationTime, getCreationTimeInternal, getId, getIdInternal, getIdleTime, getIdleTimeInternal, getLastAccessedTime, getLastAccessedTimeInternal, getManager, getMaxInactiveInterval, getNote, getNoteNames, getThisAccessedTime, getThisAccessedTimeInternal, isAttributeDistributable, recycle, removeNote, removeSessionListener, setAuthType, setCreationTime, setId, setId, setManager, setNew, setNote, setValid, tellChangedSessionId
  • Constructor Details

    • DeltaSession

      public DeltaSession()
      Construct a new Session associated with no Manager. The Manager will be assigned later using setOwner(Object).
    • DeltaSession

      public DeltaSession(org.apache.catalina.Manager manager)
      Construct a new Session associated with the specified Manager.
      Parameters:
      manager - The manager with which this Session is associated
  • Method Details

    • getSession

      public jakarta.servlet.http.HttpSession getSession()
      Return the HttpSession for which this object is the facade.
      Specified by:
      getSession in interface org.apache.catalina.Session
      Overrides:
      getSession in class org.apache.catalina.session.StandardSession
    • getPrincipal

      public Principal getPrincipal()
      Specified by:
      getPrincipal in interface org.apache.catalina.Session
      Overrides:
      getPrincipal in class org.apache.catalina.session.StandardSession
    • setPrincipal

      public void setPrincipal(Principal principal)
      Specified by:
      setPrincipal in interface org.apache.catalina.Session
      Overrides:
      setPrincipal in class org.apache.catalina.session.StandardSession
    • getCurrentGatewayDeltaEvent

      public GatewayDeltaEvent getCurrentGatewayDeltaEvent()
      Specified by:
      getCurrentGatewayDeltaEvent in interface GatewayDelta
    • setCurrentGatewayDeltaEvent

      public void setCurrentGatewayDeltaEvent(GatewayDeltaEvent currentGatewayDeltaEvent)
      Specified by:
      setCurrentGatewayDeltaEvent in interface GatewayDelta
    • setOwner

      public void setOwner(Object manager)
      Specified by:
      setOwner in interface DeltaSessionInterface
    • setAttribute

      public void setAttribute(String name, Object value, boolean notify)
      Overrides:
      setAttribute in class org.apache.catalina.session.StandardSession
    • removeAttribute

      public void removeAttribute(String name, boolean notify)
      Overrides:
      removeAttribute in class org.apache.catalina.session.StandardSession
    • removeAttributeInternal

      protected void removeAttributeInternal(String name, boolean notify)
      Overrides:
      removeAttributeInternal in class org.apache.catalina.session.StandardSession
    • getAttributeInternal

      protected Object getAttributeInternal(String name)
    • setAttributeInternal

      protected void setAttributeInternal(String name, Object value)
    • getAttribute

      public Object getAttribute(String name)
      Specified by:
      getAttribute in interface jakarta.servlet.http.HttpSession
      Overrides:
      getAttribute in class org.apache.catalina.session.StandardSession
    • deserializeAttributeInternal

      protected void deserializeAttributeInternal(String name)
    • invalidate

      public void invalidate()
      Specified by:
      invalidate in interface jakarta.servlet.http.HttpSession
      Overrides:
      invalidate in class org.apache.catalina.session.StandardSession
    • processExpired

      public void processExpired()
      Specified by:
      processExpired in interface DeltaSessionInterface
    • expire

      public void expire(boolean notify)
      Overrides:
      expire in class org.apache.catalina.session.StandardSession
    • setMaxInactiveInterval

      public void setMaxInactiveInterval(int interval)
      Specified by:
      setMaxInactiveInterval in interface jakarta.servlet.http.HttpSession
      Specified by:
      setMaxInactiveInterval in interface org.apache.catalina.Session
      Overrides:
      setMaxInactiveInterval in class org.apache.catalina.session.StandardSession
    • localUpdateAttribute

      public void localUpdateAttribute(String name, Object value)
      Specified by:
      localUpdateAttribute in interface DeltaSessionInterface
    • localDestroyAttribute

      public void localDestroyAttribute(String name)
      Specified by:
      localDestroyAttribute in interface DeltaSessionInterface
    • applyAttributeEvents

      public void applyAttributeEvents(Region<String,DeltaSessionInterface> region, List<org.apache.geode.modules.session.catalina.internal.DeltaSessionAttributeEvent> events)
      Specified by:
      applyAttributeEvents in interface DeltaSessionInterface
    • commit

      public void commit()
      Specified by:
      commit in interface DeltaSessionInterface
    • abort

      public void abort()
      Specified by:
      abort in interface DeltaSessionInterface
    • getExpired

      public boolean getExpired()
      Specified by:
      getExpired in interface DeltaSessionInterface
    • getContextName

      public String getContextName()
      Specified by:
      getContextName in interface DeltaSessionInterface
    • hasDelta

      public boolean hasDelta()
      Description copied from interface: Delta
      Returns true if this object has pending changes it can write out as a delta. Returns false if this object must be transmitted in its entirety.
      Specified by:
      hasDelta in interface Delta
      Returns:
      whether this object has pending changes it can write out as a delta
    • toDelta

      public void toDelta(DataOutput out) throws IOException
      Description copied from interface: Delta
      This method is invoked on an application object at the delta sender, if GemFire determines the presence of a delta by calling Delta.hasDelta() on the object. The delta is written to the DataOutput object provided by GemFire.

      Any delta state should be reset in this method.

      Specified by:
      toDelta in interface Delta
      Parameters:
      out - the DataOutput to write to
      Throws:
      IOException - if a problem occurs while writing to out
    • fromDelta

      public void fromDelta(DataInput in) throws IOException, InvalidDeltaException
      Description copied from interface: Delta
      This method is invoked on an existing application object when an update is received as a delta. This method throws an InvalidDeltaException when the delta in the DataInput cannot be applied to the object. GemFire automatically handles an InvalidDeltaException by reattempting the update by sending the full application object.
      Specified by:
      fromDelta in interface Delta
      Parameters:
      in - the DataInput to read from
      Throws:
      IOException - if a problem occurs while reading from in
      InvalidDeltaException
    • toData

      public void toData(DataOutput out) throws IOException
      Description copied from interface: DataSerializable
      Writes the state of this object as primitive data to the given DataOutput.

      Since 5.7 it is possible for any method call to the specified DataOutput to throw GemFireRethrowable. It should not be caught by user code. If it is it must be rethrown.

      Specified by:
      toData in interface DataSerializable
      Specified by:
      toData in interface DeltaSessionInterface
      Parameters:
      out - the DataOutput to write to
      Throws:
      IOException - A problem occurs while writing to out
    • fromData

      public void fromData(DataInput in) throws IOException, ClassNotFoundException
      Description copied from interface: DataSerializable
      Reads the state of this object as primitive data from the given DataInput.
      Specified by:
      fromData in interface DataSerializable
      Specified by:
      fromData in interface DeltaSessionInterface
      Parameters:
      in - the DataInput to read from
      Throws:
      IOException - A problem occurs while reading from in
      ClassNotFoundException - A class could not be loaded while reading from in
    • getSizeInBytes

      public int getSizeInBytes()
      Specified by:
      getSizeInBytes in interface org.apache.geode.internal.size.Sizeable
    • getAttributes

      protected Map<String,Object> getAttributes()
    • toString

      public String toString()
      Overrides:
      toString in class org.apache.catalina.session.StandardSession