Indy 9
|
TIdHTTPCustomSessionList = class(TComponent)
TIdHTTPCustomSessionList declares procedures and methods needed to add an create TIdHTTPSession persistent session objects, retrieve session objects by an identifier and remote IP address, and clear sessions form the container.
All methods in TIdHTTPCustomSessionList are declared as virtual abstract procedures and functions, and must be overridden in a descendant class to provide the session management capabilities required.
TIdHTTPCustomSessionList is used as the ancestor for Indy classes, like TIdHTTPDefaultSessionList, that manage persistent session information using TIdHTTPSession object instances.
TIdHTTPCustomSessionList also implements propeties and event handlers needed to specifiy the default itmeout value for sessions in the container, and to respond top events triggered when a persistent session is started or completed.
TIdHTTPCustomSessionList is the type used to represent the TIdHTTPSession.Owner property established in the contructor for the session object.
property SessionTimeout: Integer;
procedure Add(ASession: TIdHTTPSession); virtual; abstract;
procedure Clear; virtual; abstract;
function CreateSession(const RemoteIP: String; const SessionID: String): TIdHTTPSession; virtual; abstract;
RemoteIP is the IP address of the remote computer system that is the endpoint for the HTTP session.
SessionID is the identifier for the new HTTP session.
Note: All methods in TIdHTTPCustomSessionList are declared as virtual abstract procedures and functions, and must be overridden in a descendant class to provide the session management capabilities required.
function CreateUniqueSession(const RemoteIP: String): TIdHTTPSession; virtual; abstract;
Note: All methods in TIdHTTPCustomSessionList are declared as virtual abstract procedures and functions, and must be overridden in a descendant class to provide the session management capabilities required.
function GetSession(const SessionID: string; const RemoteIP: string): TIdHTTPSession; virtual; abstract;
Note: All methods in TIdHTTPCustomSessionList are declared as virtual abstract procedures and functions, and must be overridden in a descendant class to provide the session management capabilities required.
procedure PurgeStaleSessions(PurgeAll: Boolean = false); virtual; abstract;
property OnSessionEnd: TOnSessionEndEvent;
property OnSessionStart: TOnSessionStartEvent;