Diffusion .NET Classic API - Core and Common  5.9.4
 All Classes Namespaces Functions Variables Enumerations Enumerator Properties Events
PushTechnology.DiffusionCore.Connection.Connectors.ExternalClient.Notify.TopicNotifyTopicHandlerImpl Class Reference

Implementation of ITopicNotifyTopicHandler. More...

Inheritance diagram for PushTechnology.DiffusionCore.Connection.Connectors.ExternalClient.Notify.TopicNotifyTopicHandlerImpl:
PushTechnology.DiffusionCore.Connection.Connectors.ExternalClient.Notify.ITopicNotifyTopicHandler PushTechnology.DiffusionCore.Messaging.Topic.ITopicListener

Public Member Functions

 TopicNotifyTopicHandlerImpl (IDiffusionClientConnector connection, ITopicMessage loadMessage, ITopicNotifyTopicListener listener)
 Constructor. More...
 
void SetNotificationLevel (NotificationLevel level)
 This can be used to change the notification level from that initially specified. More...
 
void SetNotificationDetails (NotificationLevel addLevel, bool notifyRemoval, bool notifyUpdate)
 This can be used to set the notification details required. More...
 
void Select (SelectionMode mode, TopicSet selections)
 Sends a request to the server to update the selection of topics that topic add notifications will be received for. As this is an asynchronous request to the server the update may not take effect immediately. Upon receiving the new selection set the server will check if there are any existing topics that match the selections (that did not match before) and send a separate add notification for each one. New topics that match the selections will be notified as and when they are added. More...
 
bool HandleTopicMessage (IMessageSource source, ITopicMessage message)
 Handles a message received from an IMessageSource. More...
 

Properties

IDiffusionClientConnector Connection [get, set]
 Returns the client connection. More...
 
NotificationLevel NotificationLevel [get]
 Returns the current add notification level. More...
 
bool IsNotifyingRemoval [get]
 Indicates whether notifying topic removals. More...
 
bool IsNotifyingUpdate [get]
 Indicates whether notifying topic property updates. More...
 
- Properties inherited from PushTechnology.DiffusionCore.Connection.Connectors.ExternalClient.Notify.ITopicNotifyTopicHandler
IDiffusionClientConnector Connection [get]
 Returns the client connection. More...
 
NotificationLevel NotificationLevel [get]
 Returns the current add notification level. More...
 
bool IsNotifyingRemoval [get]
 Indicates whether notifying topic removals. More...
 
bool IsNotifyingUpdate [get]
 Indicates whether notifying topic property updates. More...
 

Detailed Description

Implementation of ITopicNotifyTopicHandler.

Constructor & Destructor Documentation

PushTechnology.DiffusionCore.Connection.Connectors.ExternalClient.Notify.TopicNotifyTopicHandlerImpl.TopicNotifyTopicHandlerImpl ( IDiffusionClientConnector  connection,
ITopicMessage  loadMessage,
ITopicNotifyTopicListener  listener 
)

Constructor.

Parameters
connection
loadMessage
listener

Member Function Documentation

bool PushTechnology.DiffusionCore.Connection.Connectors.ExternalClient.Notify.TopicNotifyTopicHandlerImpl.HandleTopicMessage ( IMessageSource  source,
ITopicMessage  message 
)

Handles a message received from an IMessageSource.

This will handle an incoming message from a specified source.

Parameters
sourceThe message source.
messageThe message.

Implements PushTechnology.DiffusionCore.Messaging.Topic.ITopicListener.

void PushTechnology.DiffusionCore.Connection.Connectors.ExternalClient.Notify.TopicNotifyTopicHandlerImpl.Select ( SelectionMode  mode,
TopicSet  selections 
)

Sends a request to the server to update the selection of topics that topic add notifications will be received for. As this is an asynchronous request to the server the update may not take effect immediately. Upon receiving the new selection set the server will check if there are any existing topics that match the selections (that did not match before) and send a separate add notification for each one. New topics that match the selections will be notified as and when they are added.

Parameters
modeIndicates the mode of the requested update which can be to add to current selections, replace all current selections or to remove some or all current selections.
selectionsA set of topic selector patterns which specifies the topic selections to update.

Implements PushTechnology.DiffusionCore.Connection.Connectors.ExternalClient.Notify.ITopicNotifyTopicHandler.

void PushTechnology.DiffusionCore.Connection.Connectors.ExternalClient.Notify.TopicNotifyTopicHandlerImpl.SetNotificationDetails ( NotificationLevel  addLevel,
bool  notifyRemoval,
bool  notifyUpdate 
)

This can be used to set the notification details required.

If this is not called, then the default with be NotificationLevel.Minimum, with no deletions or updates notified.

This will send a message to the server requesting a change in the notification level and therefore should ideally be called before any call to Select( SelectionMode, TopicSet ) otherwise the effect will be delayed.

Parameters
addLevelThe required notification level for add notifications.
notifyRemovaltrue to request notifications of topic removals.
notifyUpdatetrue to request notifications of updates to those topic properties that can be changed after the topic has been created.

Implements PushTechnology.DiffusionCore.Connection.Connectors.ExternalClient.Notify.ITopicNotifyTopicHandler.

void PushTechnology.DiffusionCore.Connection.Connectors.ExternalClient.Notify.TopicNotifyTopicHandlerImpl.SetNotificationLevel ( NotificationLevel  level)

This can be used to change the notification level from that initially specified.

This will send a message to the server requesting a change to the notification level and so may not take immediate effect.

Parameters
levelThe new notification level.

Implements PushTechnology.DiffusionCore.Connection.Connectors.ExternalClient.Notify.ITopicNotifyTopicHandler.

Property Documentation

IDiffusionClientConnector PushTechnology.DiffusionCore.Connection.Connectors.ExternalClient.Notify.TopicNotifyTopicHandlerImpl.Connection
getset

Returns the client connection.

bool PushTechnology.DiffusionCore.Connection.Connectors.ExternalClient.Notify.TopicNotifyTopicHandlerImpl.IsNotifyingRemoval
get

Indicates whether notifying topic removals.

bool PushTechnology.DiffusionCore.Connection.Connectors.ExternalClient.Notify.TopicNotifyTopicHandlerImpl.IsNotifyingUpdate
get

Indicates whether notifying topic property updates.

NotificationLevel PushTechnology.DiffusionCore.Connection.Connectors.ExternalClient.Notify.TopicNotifyTopicHandlerImpl.NotificationLevel
get

Returns the current add notification level.