Interface ClientControl.SessionPropertiesStream
- All Known Implementing Classes:
ClientControl.SessionPropertiesStream.Default
- Enclosing interface:
- ClientControl
This is used along with
ClientControl.setSessionPropertiesListener(com.pushtechnology.diffusion.client.features.control.clients.ClientControl.SessionPropertiesStream, java.lang.String...)
to obtain
notifications for client sessions.
Callbacks with a properties
parameter provide a map of the
property values requested when registering the listener.
- Since:
- 6.0
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic class
Deprecated.This provides a default implementation ofClientControl.SessionPropertiesStream
which will simply log session properties callbacks at debug level.static enum
Deprecated.Event type. -
Method Summary
Modifier and TypeMethodDescriptionvoid
onSessionClose
(SessionId sessionId, Map<String, String> properties, ClientControl.CloseReason closeReason) Deprecated.Notification that a client session has closed.void
onSessionEvent
(SessionId sessionId, ClientControl.SessionPropertiesStream.EventType eventType, Map<String, String> properties, Map<String, String> previousValues) Deprecated.Notification of a session event that can result in a change of properties.void
onSessionOpen
(SessionId sessionId, Map<String, String> properties) Deprecated.Notification that a new client session has been opened.
-
Method Details
-
onSessionOpen
Deprecated.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:
sessionId
- the session identifierproperties
- the map of requested session property values. This can be empty if no properties were requested. If a requested property did not exist, it will not be present in the map.
-
onSessionEvent
void onSessionEvent(SessionId sessionId, ClientControl.SessionPropertiesStream.EventType eventType, Map<String, String> properties, Map<String, String> previousValues) Deprecated.Notification of a session event that can result in a change of properties.- Parameters:
sessionId
- the client session ideventType
- indicates the type of eventproperties
- the map of current requested property values. This can be empty if no properties were requested. If a requested property did not exist, it will not be present in the map.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, the value in this map will be null. When a property is removed, it will have a value in this map but not inproperties
.
-
onSessionClose
void onSessionClose(SessionId sessionId, Map<String, String> properties, ClientControl.CloseReason closeReason) Deprecated.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:
sessionId
- the session identifier of the client that has closedproperties
- 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, it will not be present in the map.closeReason
- why the session was closed
-
Use the new
ClientControl.addSessionEventListener(com.pushtechnology.diffusion.client.features.control.clients.ClientControl.SessionEventStream, com.pushtechnology.diffusion.client.features.control.clients.ClientControl.SessionEventParameters)
, which provides greater functionality and reports sessions at all cluster members. This interface will be removed in a future release.