Class SessionPropertiesListenerDefault

This provides a default implementation of ISessionPropertiesListener which will simply log session properties callbacks at debug level. This should only be used for diagnostic purposes.

Inheritance
System.Object
SessionPropertiesListenerDefault
Implements
ISessionPropertiesListener
IServerHandler
Namespace: PushTechnology.ClientInterface.Client.Features.Control.Clients
Assembly: Diffusion.Client.dll
Syntax
public class SessionPropertiesListenerDefault : object, ISessionPropertiesListener, IServerHandler

Methods

OnClose()

Called if the handler is closed. This happens if the call to register the handler fails, or the handler is unregistered.

Declaration
public virtual void OnClose()

OnError(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.

Declaration
public virtual void OnError(ErrorReason errorReason)
Parameters
Type Name Description
ErrorReason errorReason

A value representing the error; this can be one of the constants defined in ErrorReason, or a feature-specific reason.

OnRegistered(IRegistration)

Called when the handler has been successfully registered with the server.

A session can register at most one handler of each type. If there is already a handler registered the operation will fail, registeredHandler will be closed, and the session error handler will be notified. To change the handler, first close the previous handler.

Declaration
public virtual void OnRegistered(IRegistration registration)
Parameters
Type Name Description
IRegistration registration

A reference that allows the handler to be closed.

OnSessionClose(ISessionId, IDictionary<String, String>, 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.

Declaration
public virtual void OnSessionClose(ISessionId sessionId, IDictionary<string, string> properties, CloseReason closeReason)
Parameters
Type Name Description
ISessionId sessionId

The session identifier of the client that has closed.

IDictionary<System.String, System.String> properties

The 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.

CloseReason closeReason

Why the session was closed.

OnSessionEvent(ISessionId, Nullable<SessionPropertiesListenerEventType>, IDictionary<String, String>, IDictionary<String, String>)

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

Declaration
public virtual void OnSessionEvent(ISessionId sessionId, SessionPropertiesListenerEventType? eventType, IDictionary<string, string> properties, IDictionary<string, string> previousValues)
Parameters
Type Name Description
ISessionId sessionId

The client session id.

System.Nullable<SessionPropertiesListenerEventType> eventType

Indicates the type of event.

IDictionary<System.String, System.String> properties

The map of current requested property values. This may be empty if no properties were requested.

IDictionary<System.String, System.String> previousValues

A 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.

OnSessionOpen(ISessionId, IDictionary<String, String>)

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.

Declaration
public virtual void OnSessionOpen(ISessionId sessionId, IDictionary<string, string> properties)
Parameters
Type Name Description
ISessionId sessionId

The session identifier.

IDictionary<System.String, System.String> properties

The 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 present in the map.

Implements

ISessionPropertiesListener
IServerHandler
Back to top