DeltaSession (Apache Geode 2.0.2)
Description: declaration: package: org.apache.geode.modules.session.catalina, class: DeltaSession

Package org.apache.geode.modules.session.catalina

# 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:
  - Serialized Form

- ## 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
  `DeltaSession()`
  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`
  `abort()`
  `void`
  `applyAttributeEvents(Region<String,DeltaSessionInterface> region, List<org.apache.geode.modules.session.catalina.internal.DeltaSessionAttributeEvent> events)`
  `void`
  `commit()`
  `protected void`
  `deserializeAttributeInternal(String name)`
  `void`
  `expire(boolean notify)`
  `void`
  `fromData(DataInput in)`
  Reads the state of this object as primitive data from the given `DataInput`.
  `void`
  `fromDelta(DataInput in)`
  This method is invoked on an existing application object when an update is received as a delta.
  `Object`
  `getAttribute(String name)`
  `protected Object`
  `getAttributeInternal(String name)`
  `protected Map<String,Object>`
  `getAttributes()`
  `String`
  `getContextName()`
  `GatewayDeltaEvent`
  `getCurrentGatewayDeltaEvent()`
  `boolean`
  `getExpired()`
  `Principal`
  `getPrincipal()`
  `jakarta.servlet.http.HttpSession`
  `getSession()`
  Return the `HttpSession` for which this object is the facade.
  `int`
  `getSizeInBytes()`
  `boolean`
  `hasDelta()`
  Returns true if this object has pending changes it can write out as a delta.
  `void`
  `invalidate()`
  `void`
  `localDestroyAttribute(String name)`
  `void`
  `localUpdateAttribute(String name, Object value)`
  `void`
  `processExpired()`
  `void`
  `removeAttribute(String name, boolean notify)`
  `protected void`
  `removeAttributeInternal(String name, boolean notify)`
  `void`
  `setAttribute(String name, Object value, boolean notify)`
  `protected void`
  `setAttributeInternal(String name, Object value)`
  `void`
  `setCurrentGatewayDeltaEvent(GatewayDeltaEvent currentGatewayDeltaEvent)`
  `void`
  `setMaxInactiveInterval(int interval)`
  `void`
  `setOwner(Object manager)`
  `void`
  `setPrincipal(Principal principal)`
  `void`
  `toData(DataOutput out)`
  Writes the state of this object as primitive data to the given `DataOutput`.
  `void`
  `toDelta(DataOutput out)`
  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.
  `String`
  `toString()`

  ### 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`