IRISLIB database
CookieSession Class Reference

This class implements a simple OAuth2 session maintenance class where the user's session is tracked by an opaque cookie. More...

Inheritance diagram for CookieSession:
Collaboration diagram for CookieSession:

Static Public Member Functions

_.Library.Status DeleteAll ()
 Delete all sessions.
 
_.Library.String GetCookie ()
 This method will retrieve the cookie value for the current session, if one exists.
 
_.Library.String GetUser (_.Library.String scope, _.Library.Integer authTime, _.Library.Status sc, _.Library.String authCode)
 Return the username (and granted scopes, and authentication time) for the current session, or "" if there is no current session.
 
_.Library.Status Login (_.Library.String username, _.Library.String scope, _.Library.Integer interval, _.Library.Integer authTime, _.Library.String authCode)
 Create a new session for the given user. More...
 
_.Library.Status Logout ()
 Terminate the current session. More...
 
_.Library.String MakeCookieValue ()
 This method is used to produce the cookie value for a new session.
 
 SetCookie (_.Library.String value, _.Library.Integer expires)
 This method will set the given cookie value in the User Agent, with the given expiration time.
 
_.Library.Status Update (_.Library.String scope, _.Library.Integer interval)
 Update the current session with the given scope values and timeout interval. More...
 
- Static Public Member Functions inherited from Persistent
_.Library.Status DeleteData (_.Library.String id, _.Library.Integer concurrency)
 This method is normally generated by the storage class for persistent classes using. More...
 
_.Library.Status KillExtentData (_.Library.Boolean killstreams)
 KillExtentData() - kills extent data in storage. More...
 
_.Library.Status OnAfterBuildIndices (_.Library.String indexlist)
 This callback method is invoked by the <METHOD>BuildIndices</METHOD> method after all work is completed. More...
 
_.Library.Status OnAfterDelete (_.Library.ObjectIdentity oid)
 This callback method is invoked by the <METHOD>Delete</METHOD> method to. More...
 
_.Library.Status OnAfterPurgeIndices (_.Library.String indexlist)
 This callback method is invoked by the <METHOD>PurgeIndices</METHOD> method after all work is completed. More...
 
_.Library.Status OnBeforeBuildIndices (_.Library.String indexlist)
 
_.Library.Status OnBeforePurgeIndices (_.Library.String indexlist)
 
_.Library.Status OnDelete (_.Library.ObjectIdentity oid)
 This callback method is invoked by the <METHOD>Delete</METHOD> method to. More...
 
- Static Public Member Functions inherited from AbstractSession
_.Library.Status UpdateTokenGroup (_.Library.String authCode, _.Library.String groupId, _.Library.Boolean force)
 This method will update the <Class>OAuth2.Server.AccessToken<Class> identified by authcode with the given groupId. More...
 

Public Attributes

 AuthTime
 The time when the user was authenticated. More...
 
 Cookie
 Opaque Cookie value used to track the user's session. More...
 
 Expires
 Expires is the time in seconds from beginning of the Unix epoch when the session expires. More...
 
 Scope
 Scope is the blank separated list of scopes permitted for this user in this session. More...
 
 Username
 The User name associated with this session. More...
 

Static Public Attributes

 COOKIENAME = None
 The name of the cookie used to maintain the session.
 
- Static Public Attributes inherited from Persistent
 XCOMPACTANCESTRY
 XCOMPACTANCESTRY can be set to a string to replace the value of the %CLASSNAME property (x__classname field) More...
 
 DATALOCATIONGLOBAL = None
 Global name containing master map data for this class. More...
 
 DEFAULTGLOBAL = None
 
 DSCONDITION = None
 DSCONDITION is the expression that will be evaluated before deciding whether certain actions must be taken. More...
 
 DSINTERVAL = None
 DSINTERVAL is the number of seconds between one DSTIME value and the next. More...
 
 DSTIME = None
 If the DSTIME parameter is set to AUTO then the most recent filing operation in the current DSTIME value. More...
 
 EXTENTQUERYSPEC = None
 The EXTENTQUERYSPEC parameter defines the properties to be retrieved in. More...
 
 EXTENTSIZE = None
 The EXTENTSIZE parameter is used to inform the SQL Query Optimizer More...
 
 GUIDENABLED = None
 If this parameter is set to 1 then a GUID will be assigned (to the GUID property) to each new object. More...
 
 IDENTIFIEDBY = None
 The IDENTIFIEDBY parameter can optionally be set to the name. More...
 
 MANAGEDEXTENT = None
 The MANAGEDEXTENT parameter can be set to 0 (zero) to cause the Extent Manager. More...
 
 READONLY = None
 READONLY = 1 means that objects can be created, opened but not saved or deleted. More...
 
 ROWLEVELSECURITY = None
 ROWLEVELSECURITY = 1 | <property> means that row level security is active and the list More...
 
 SQLPREVENTFULLSCAN = None
 SQLPREVENTFULLSCAN = 1 means an attempt to prepare a query that will result in a full scan More...
 
 STORAGEDEFAULT = None
 STORAGEDEFAULT defines the default storage allocation to use for properties in this class. More...
 
 USEEXTENTSET = None
 
 VERSIONCLIENTNAME = None
 VERSIONCLIENTNAME can be set to a valid CLIENTNAME (see property CLIENTNAME) value. More...
 
 VERSIONPROPERTY = None
 VERSIONPROPERTY = <property> means that the <property> in memory will be compared to. More...
 
- Static Public Attributes inherited from SwizzleObject
 DEFAULTCONCURRENCY = None
 DEFAULTCONCURRENCY is the default value for the concurrency formal argument. More...
 
 JOURNALSTREAM = None
 If OBJJOURNAL is true then the value of the JOURNALSTREAM parameter defines whether or not. More...
 
 OBJJOURNAL = None
 if OBJJOURNAL is TRUE then inserts, updates and deletes will be logged in ^OBJ.JournalT More...
 
- Static Public Attributes inherited from RegisteredObject
 CAPTION = None
 Optional name used by the Form Wizard for a class when generating forms. More...
 
 JAVATYPE = None
 The Java type to be used when exported.
 
 PROPERTYVALIDATION = None
 This parameter controls the default validation behavior for the object. More...
 

Additional Inherited Members

- Public Member Functions inherited from Persistent
_.Library.Status AcquireLock (_.Library.String locktype)
 Acquires a lock for the current instance. More...
 
_.Library.Status LoadData (_.Library.String id)
 LoadData() - loads an object from storage. More...
 
_.Library.Status OnAfterSave (_.Library.Boolean insert)
 This callback method is invoked by the <METHOD>Save</METHOD> method to. More...
 
_.Library.Status OnBeforeSave (_.Library.Boolean insert)
 This callback method is invoked by the <METHOD>Save</METHOD> method to. More...
 
_.Library.Status OnOpen ()
 This callback method is invoked by the <METHOD>Open</METHOD> method to. More...
 
_.Library.Status OnReload ()
 This callback method is invoked by the <METHOD>Reload</METHOD> method to. More...
 
_.Library.Status OnRollBack ()
 This callback method is invoked by the <METHOD>Save</METHOD> method to. More...
 
_.Library.Status ReleaseLock (_.Library.String locktype)
 Releases a lock for the current instance. More...
 
_.Library.Status SaveData (_.Library.String id)
 SaveData() - saves an object to disk, checks uniqueness and referential More...
 
- Public Member Functions inherited from SwizzleObject
_.Library.Status OnJournalObject (_.Library.Integer tranid, _.Library.Integer jrnid, _.Library.String filter)
 This callback method is invoked by the <METHOD>JournalObject</METHOD> method to. More...
 
- Public Member Functions inherited from RegisteredObject
_.Library.Status OnAddToSaveSet (_.Library.Integer depth, _.Library.Integer insert, _.Library.Integer callcount)
 This callback method is invoked when the current object is added to the SaveSet,. More...
 
_.Library.Status OnClose ()
 This callback method is invoked by the <METHOD>Close</METHOD> method to. More...
 
_.Library.Status OnConstructClone (_.Library.RegisteredObject object, _.Library.Boolean deep, _.Library.String cloned)
 This callback method is invoked by the <METHOD>ConstructClone</METHOD> method to. More...
 
_.Library.Status OnNew ()
 This callback method is invoked by the <METHOD>New</METHOD> method to. More...
 
_.Library.Status OnValidateObject ()
 This callback method is invoked by the <METHOD>ValidateObject</METHOD> method to. More...
 

Detailed Description

This class implements a simple OAuth2 session maintenance class where the user's session is tracked by an opaque cookie.

This is a persistent class containing basic session data indexed by the cookie value.

Member Function Documentation

◆ Login()

_.Library.Status Login ( _.Library.String  username,
_.Library.String  scope,
_.Library.Integer  interval,
_.Library.Integer  authTime,
_.Library.String  authCode 
)
static

Create a new session for the given user.

This creates a new session Object and sets a new cookie in the User Agent

referencing this session.

Reimplemented from AbstractSession.

◆ Logout()

_.Library.Status Logout ( )
static

Terminate the current session.

This will delete the session object and all cookies associated

with it and expire the cookie. Absence of a session is not seen as an error and this method will still return 1 (though it won't actually do anything if no session exists).

Reimplemented from AbstractSession.

◆ Update()

_.Library.Status Update ( _.Library.String  scope,
_.Library.Integer  interval 
)
static

Update the current session with the given scope values and timeout interval.

This does nothing if there is no current session.

Reimplemented from AbstractSession.

Member Data Documentation

◆ AuthTime

AuthTime

The time when the user was authenticated.

 

◆ Cookie

Cookie

Opaque Cookie value used to track the user's session.

 

◆ Expires

Expires

Expires is the time in seconds from beginning of the Unix epoch when the session expires.

If Expires="", then session does not expire.  

◆ Scope

Scope

Scope is the blank separated list of scopes permitted for this user in this session.

 

◆ Username

Username

The User name associated with this session.