Diffusion .NET Client Library  6.1.5
 All Classes Namespaces Functions Variables Enumerations Enumerator Properties Events Pages
PushTechnology.ClientInterface.Client.Features.Control.Clients.ISessionPropertiesListener Interface Reference

The handler for session properties listener notifications. More...

Inheritance diagram for PushTechnology.ClientInterface.Client.Features.Control.Clients.ISessionPropertiesListener:
PushTechnology.ClientInterface.Client.Callbacks.IServerHandler PushTechnology.ClientInterface.Client.Features.Control.Clients.SessionPropertiesListenerDefault

Public Member Functions

void OnSessionOpen (ISessionId sessionId, IDictionary< string, string > properties)
 Notification that a new client session has been opened. More...
 
void OnSessionEvent (ISessionId sessionId, SessionPropertiesListenerEventType?eventType, IDictionary< string, string > properties, IDictionary< string, string > previousValues)
 Notification of a session event that can result in a change of properties. More...
 
void OnSessionClose (ISessionId sessionId, IDictionary< string, string > properties, CloseReason closeReason)
 Notification that a client session has closed. More...
 
- Public Member Functions inherited from PushTechnology.ClientInterface.Client.Callbacks.IServerHandler
void OnRegistered (IRegistration registration)
 Called when the handler has been successfully registered with the server. More...
 
void OnClose ()
 Called if the handler is closed. The handler will be closed if the session is closed after the handler has been registered, or if the handler is unregistered using close. More...
 
void OnError (ErrorReason errorReason)
 Notification of a contextual error related to this handler. This is analogous to an unchecked exception being raised. Situations in which onError is called include the session being closed before the handler is registered, a communication timeout, or a problem with the provided parameters. No further calls will be made to this handler. More...
 

Detailed Description

The handler for session properties listener notifications.

This is used along with IClientControl.SetSessionPropertiesListener to obtain notifications for client sessions.

Callbacks with a properties parameter will provide a map of the property values requested when registering the listener.

Member Function Documentation

void PushTechnology.ClientInterface.Client.Features.Control.Clients.ISessionPropertiesListener.OnSessionClose ( ISessionId  sessionId,
IDictionary< string, string >  properties,
CloseReason  closeReason 
)

Notification that a client session has closed.

This will be called for every client that closes whilst the listener is registered regardless of requested session properties.

Parameters
sessionIdThe session identifier of the client that has closed.
propertiesThe map of requested property values at the point when the session was closed. This can be empty if no properties were requested. If a requested property did not exist then it will not be present in the map.
closeReasonWhy the session was closed.

Implemented in PushTechnology.ClientInterface.Client.Features.Control.Clients.SessionPropertiesListenerDefault.

void PushTechnology.ClientInterface.Client.Features.Control.Clients.ISessionPropertiesListener.OnSessionEvent ( ISessionId  sessionId,
SessionPropertiesListenerEventType eventType,
IDictionary< string, string >  properties,
IDictionary< string, string >  previousValues 
)

Notification of a session event that can result in a change of properties.

Parameters
sessionIdThe client session id.
eventTypeIndicates the type of event.
propertiesThe map of current requested property values. This may be empty if no properties were requested.
previousValuesA map of the previous values of keys that have changed. This will only contain keys that have changed and not the whole required property set. This can be empty if an event is being reported that did not result in the change of any of the required properties. When a new property is added then the value in this map will be null. When a property is removed then it will have a value in this map but not in properties .

Implemented in PushTechnology.ClientInterface.Client.Features.Control.Clients.SessionPropertiesListenerDefault.

void PushTechnology.ClientInterface.Client.Features.Control.Clients.ISessionPropertiesListener.OnSessionOpen ( ISessionId  sessionId,
IDictionary< string, string >  properties 
)

Notification that a new client session has been opened.

When the listener is registered, this will be called for all existing sessions. It will then be called for every new session that opens whilst the listener is registered.

This will be called for every client session regardless of requested session properties.

Parameters
sessionIdThe session identifier.
propertiesThe map of requested session property values. This can be empty if no properties were requested. If a requested property did not exist then it will not be prsent in the map.

Implemented in PushTechnology.ClientInterface.Client.Features.Control.Clients.SessionPropertiesListenerDefault.


The documentation for this interface was generated from the following file: