Diffusion .NET Client Library  6.1.5
 All Classes Namespaces Functions Variables Enumerations Enumerator Properties Events Pages
Package PushTechnology.ClientInterface.Client.Features.Control.Topics

Classes

interface  ITopicControl
 The feature that allows a session to manage topics. More...
 
interface  ITopicControlAddCallback
 The callback interface for adding topics. More...
 
interface  ITopicControlAddContextCallback< in TContext >
 The contextual callback interface for adding topics. More...
 
interface  ITopicControlRemovalCallback
 The callback interface for topic remove requests. More...
 
interface  ITopicControlRemovalContextCallback< in TContext >
 The contextual callback interface for topic remove requests. More...
 
interface  IMissingTopicNotification
 The notification that a session has made a request using a selector that does not match any topics. More...
 
interface  IMissingTopicNotificationStream
 The stream that will be called when a session subscribes or fetches using a topic selector that matches no topics. More...
 
interface  IMissingTopicHandler
 The handler that will be called when a session subscribes or fetches using a topic selector that matches no topics. More...
 
interface  ITopicEventStream
 The stream for topic events from the server. More...
 
interface  ITopicControlTopicEventListener
 The listener for topic events from the server. More...
 
class  TopicControlAddCallbackDefault
 The default ITopicControlAddCallback implementation. More...
 
class  TopicControlAddContextCallbackDefault< TContext >
 The default ITopicControlAddContextCallback{TContext} implementation. More...
 
class  TopicControlRemovalCallbackDefault
 The default ITopicControlRemovalCallback implementation. More...
 
class  TopicControlRemovalContextCallbackDefault< TContext >
 The default ITopicControlRemovalContextCallback{TContext} implementation. More...
 
class  MissingTopicNotificationStreamDefault
 The default IMissingTopicNotificationStream implementation. More...
 
class  MissingTopicHandlerDefault
 The default IMissingTopicHandler implementation. More...
 
class  TopicEventStreamDefault
 The default ITopicEventStream implementation. More...
 
class  TopicControlTopicEventListenerDefault
 The default ITopicControlTopicEventListener implementation. More...
 
class  AddTopicException
 The exception indicating a failure to add a topic. More...
 
class  InvalidTopicSpecificationException
 The exception indicating invalid topic specifications. More...
 
class  ReferencedTopicDoesNotExistException
 The exception indicating that a referenced topic in the supplied specification does not exist. More...
 
class  ExistingTopicException
 The exception indicating that a topic with a different specification already exists. More...
 
class  InvalidTopicPathException
 The exception indicating that the given topic path is invalid. More...
 
class  TopicLicenseLimitException
 Exception thrown to report a topic could not be added because a license limit has been exceeded. More...
 
class  IncompatibleParentTopicException
 Exception thrown to report that a topic could not be added because a topic at a parent path is incompatible. More...
 
class  IncompatibleMasterTopicException
 Exception thrown to report that a slave topic could not be added because the topic at the master path is incompatible. More...
 
class  IncompatibleExistingTopicException
 Exception thrown to report that a topic exists at the same path that is managed by a component that has exclusive control over the topic. More...
 
interface  ITopicNotifications
 This feature allows a client session to receive notifications about changes to selected topics. More...
 
interface  INotificationRegistration
 The NotificationRegistration represents the registration state of the associated listener on the server. More...
 
interface  ITopicNotificationListener
 The listener for topic notifications. More...
 
class  TopicNotificationListenerDefault
 The default listener for topic notifications. More...
 
interface  ICacheSchemaHandler< in TC >
 Interface for handler of replies from requests to cache schemas. More...
 
interface  IFetchRequest
 Encapsulates a fetch request from a client for a stateless topic. More...
 
interface  IFetchResponder
 The interface for a fetch responder. More...
 
interface  IMessageHandler
 Handler interface for receiving messages from remote sources, with associated context and session information. More...
 
interface  IMessagingControl
 Represents a feature that provides a client session with the ability to use messaging functionality to communicate directly with other client sessions. More...
 
interface  IFilteredRequestCallback< TResponse >
 The callback interface for responses to requests sent to a filter. More...
 
class  FilteredRequestCallbackDefault< TResponse >
 The default implementation of the IFilteredRequestCallback. It logs calls on either DEBUG or WARN log level, depending on the result. More...
 
interface  IRequestContext
 Context of the request received. More...
 
interface  IRequestHandler< TRequest, TResponse >
 Interface which specifies a request handler to receive request notifications. IResponder.Respond(object) must be called to dispatch a response to the request. More...
 
interface  IRoutingSubscriptionRequest
 Encapsulates a request to subscribe to routing topics and a mechanism for actioning the subscription. More...
 
interface  IRoutingSubscriptionRequestHandler
 Handler for routing subscription requests. More...
 
interface  ISendToFilterCallback
 The callback interface for filtered send operation notifications. More...
 
interface  ISendToFilterContextCallback< in TC >
 Callback interface for filtered send operation notifications that have an associated context. More...
 
interface  IServiceRequest
 Encapsulates the details of a service request. More...
 
interface  ISubscriptionByFilterCallback
 Callback interface for filtered subscriptions and unsubscriptions. More...
 
interface  ISubscriptionByFilterContextCallback< in TC >
 Callback interface for filtered subscriptions and unsubscriptions that have an associated context. More...
 
interface  ISubscriptionCallback
 Callback interface to receive status notifications for subscription and unsubscription operations. More...
 
interface  ISubscriptionContextCallback< in TC >
 Contextual callback interface to receive status notifications for subscription and unsubscription operations. More...
 
interface  ISubscriptionControl
 This feature allows a client session to subscribe or unsubscribe other clients to topics. It also provides a mechanism for handling requests to subscribe to routing topics. More...
 
interface  ITopicDetailsHandler< in TC >
 Interface for handler of replies from requests for topic details. More...
 
interface  ITopicUpdateContextCallback< in TC >
 Contextual callback for update operations. More...
 
interface  ITopicUpdateControl
 Represents a feature that provides a client session with the ability to update topics at the server. More...
 
interface  ITopicUpdateSource
 Represents a source of updates which may be registered in order to update parts of the topic tree. More...
 
interface  ITopicUpdater
 Represents a topic updater that provides methods for an update source to update topics. More...
 
interface  ITopicUpdaterUpdateCallback
 Represents a callback for update operations. More...
 
interface  ITopicUpdaterUpdateContextCallback< in TContext >
 Represents a contextual callback for update operations. More...
 
class  TopicUpdaterErrorReason
 Represents all possible topic updater error reasons. More...
 
interface  IValueUpdater< TValue >
 Represents an updater that may be used to update topics of a certain type by specifying new values. More...
 
class  MessageReceiverDefault
 Default implementation of IMessageHandler that simply logs the inbound content. More...
 
class  RoutingSubscriptionRequestHandlerDefault
 A default IRoutingSubscriptionRequestHandler which simply logs the request and denies it. More...
 
class  SendCallbackDefault
 Default implementation of ISendCallback. More...
 
class  SendContextCallbackDefault< TC >
 The default implementation of ISendContextCallback{TC}. More...
 
class  SubscriptionByFilterCallbackDefault
 Default implementation of ISubscriptionByFilterCallback. More...
 
class  SubscriptionByFilterContextCallbackDefault< TC >
 Default implementation of ISubscriptionByFilterContextCallback{TC}. More...
 
class  SubscriptionCallbackDefault
 Default implementation of ISubscriptionCallback. More...
 
class  SubscriptionContextCallbackDefault< TC >
 Default implementation of ISubscriptionContextCallback{TC}. More...
 
class  TopicControlEventListenerDefault
 Abstract implementation of ITopicControlTopicEventListener, may be extended to provide the ITopicControlTopicEventListener.OnHasSubscribers and ITopicControlTopicEventListener.OnNoSubscribers methods. More...
 
class  TopicSourceErrorDetails
 Details of an update error. More...
 
class  TopicUpdateContextCallbackDefault< TC >
 Default context callback implementation. More...
 
class  ITopicUpdaterUpdateCallbackDefault
 Default implementation of ITopicUpdaterUpdateCallback. More...
 
class  TopicUpdateSourceDefault
 Default ITopicUpdateSource implementation. More...
 

Enumerations

enum  AddTopicResult : byte { AddTopicResult.Created = CREATED, AddTopicResult.CREATED = 0x00, AddTopicResult.Exists = EXISTS, AddTopicResult.EXISTS = 0x01 }
 The result of adding a topic. More...
 
enum  NotificationType : byte { NotificationType.ADDED = 0x00, NotificationType.SELECTED = 0x01, NotificationType.REMOVED = 0x02, NotificationType.DESELECTED = 0x03 }
 The type of notification that has been received. More...
 
enum  TopicAddFailReason : byte {
  TopicAddFailReason.EXISTS = 0x01, TopicAddFailReason.EXISTS_MISMATCH = 0x02, TopicAddFailReason.INVALID_NAME = 0x03, TopicAddFailReason.INVALID_DETAILS = 0x04,
  TopicAddFailReason.USER_CODE_ERROR = 0x05, TopicAddFailReason.TOPIC_NOT_FOUND = 0x06, TopicAddFailReason.PERMISSIONS_FAILURE = 0x07, TopicAddFailReason.INITIALISE_ERROR = 0x08,
  TopicAddFailReason.UNEXPECTED_ERROR = 0x09, TopicAddFailReason.CLUSTER_REPARTITION = 0x0A, TopicAddFailReason.EXCEEDED_LICENSE_LIMIT = 0x0B, TopicAddFailReason.INCOMPATIBLE_PARENT = 0x0C,
  TopicAddFailReason.INCOMPATIBLE_MASTER = 0x0D, TopicAddFailReason.EXISTS_INCOMPATIBLE = 0x0E
}
 Reasons for failure to add a topic. More...
 

Enumeration Type Documentation

The result of adding a topic.

Since 6.0

Enumerator
Created 

A new topic was created.

Obsolete since 6.1.

CREATED 

A new topic was created.

Exists 

A topic with the same specification already exists.

Obsolete since 6.1.

EXISTS 

A topic with the same specification already exists.

The type of notification that has been received.

Added in version 6.1.

Enumerator
ADDED 

The topic has been added.

SELECTED 

The topic existed at the time of the selector registration.

REMOVED 

The topic has been removed.

DESELECTED 

The topic is no longer selected due to the removal of a selector.

Reasons for failure to add a topic.

Enumerator
EXISTS 

Topic already existed with the same details.

EXISTS_MISMATCH 

Topic already exists with the same name but different details.

INVALID_NAME 

The name of the topic was found to be invalid.

INVALID_DETAILS 

Some aspect of the details failed validation. This should not normally happen for standard attributes but where topic properties have been supplied these may be found to be invalid.

USER_CODE_ERROR 

A user-supplied class could either not be found or could not be instantiated at the server.

TOPIC_NOT_FOUND 

A referenced topic was not found or was not of the correct type.

Deprecated in 6.1

PERMISSIONS_FAILURE 

The control client was denied permission to add a topic of the specified type at the given point in the topic hierarchy.

INITIALISE_ERROR 

Initialisation of topic with supplied content failed, possibly because it was of the wrong format.

UNEXPECTED_ERROR 

An unexpected error occurred whilst attempting to create the topic. See the server log for more details.

CLUSTER_REPARTITION 

Adding the topic failed because the cluster was repartitioning due to a server starting, stopping, or failing. The operation can be retried.

Since 6.0.

EXCEEDED_LICENSE_LIMIT 

Adding the topic failed because of a license limit.

Implemented in 6.1.

INCOMPATIBLE_PARENT 

Adding the topic failed because a topic owned by a publisher is already bound to the parent path.

Implemented in 6.1.

INCOMPATIBLE_MASTER 

Adding a slave topic failed because a topic owned by a publisher is already bound to the specified master path.

Implemented in 6.1.

EXISTS_INCOMPATIBLE 

Adding the topic failed because a topic is already bound to the specified path but the caller does not have the rights to manage it.

This can be because the topic is being managed by a component with exclusive control over the topic, such as fan-out or a publisher and thus the caller will not be able to update or remove the topic.

If the caller has suitable permissions then it could still subscribe to the topic, but the topic's specification may be different from that requested.

Implemented in 6.1.