class documentation

class Session(components.Componentized): (source)

View In Hierarchy

A user's session with a system.

This utility class contains no functionality, but is used to represent a session.

Method __init__ Initialize a session with a unique ID for that session.
Method expire Expire/logout of the session.
Method notify​On​Expire Call this callback when the session expires or logs out.
Method start​Checking​Expiration Start expiration tracking.
Method touch Mark the session as modified, which resets expiration timer.
Instance Variable expire​Callbacks Undocumented
Instance Variable last​Modified Time the touch() method was last called (or time the session was created). A UNIX timestamp as returned by IReactorTime.seconds().
Instance Variable session​Namespaces Undocumented
Instance Variable session​Timeout Time after last modification the session will expire, in seconds.
Instance Variable site The Site that generated the session.
Instance Variable uid A unique identifier for the session.
Instance Variable _expire​Call Undocumented
Instance Variable ​_reactor An object providing IReactorTime to use for scheduling expiration.

Inherited from Componentized:

Method __conform__ Undocumented
Method add​Adapter Utility method that calls addComponent. I take an adapter class and instantiate it with myself as the first argument.
Method add​Component Add a component to me, for all appropriate interfaces.
Method get​Component Create or retrieve an adapter for the given interface.
Method locate​Adapter​Class Undocumented
Method remove​Component Remove the given component from me entirely, for all interfaces for which it has been registered.
Method set​Adapter Cache a provider for the given interface, by adapting self using the given adapter class.
Method set​Component Cache a provider of the given interface.
Method unset​Component Remove my component specified by the given interface class.
Class Variable persistence​Version Undocumented
Instance Variable _adapter​Cache Undocumented
def __init__(self, site, uid, reactor=None): (source)
Initialize a session with a unique ID for that session.
Parameters
siteUndocumented
uidUndocumented
reactorIReactorTime used to schedule expiration of the session. If None, the reactor associated with site is used.
def expire(self): (source)
Expire/logout of the session.
def notifyOnExpire(self, callback): (source)
Call this callback when the session expires or logs out.
def startCheckingExpiration(self): (source)
Start expiration tracking.
Returns
None
def touch(self): (source)
Mark the session as modified, which resets expiration timer.
expireCallbacks: list = (source)

Undocumented

lastModified: float = (source)
Time the touch() method was last called (or time the session was created). A UNIX timestamp as returned by IReactorTime.seconds().
sessionNamespaces: dict = (source)

Undocumented

sessionTimeout: float = (source)
Time after last modification the session will expire, in seconds.
The Site that generated the session.
uid: bytes = (source)
A unique identifier for the session.
_expireCall = (source)

Undocumented

_reactor = (source)
An object providing IReactorTime to use for scheduling expiration.