Interface IMissingTopicNotification
The notification that a session has made a request using a selector that does not match any topics.
Namespace: PushTechnology.ClientInterface.Client.Features.Control.Topics
Assembly: Diffusion.Client.dll
Syntax
public interface IMissingTopicNotification
Remarks
Processing of the initial request will be halted until Proceed() is called, at which point the selector will be resolved against the topic tree again.
If after calling Proceed() the selector still does not match against any topics, no further notifications will be provided.
Should Cancel() be called, or the notification time out, the request will be discarded. The requesting session will not be notified that their request has been canceled.
Missing topic notifications during a fetch operation only occur when using the deprecated mechanism. The newer FetchRequest mechanism does not support missing topic notifications.
Properties
SessionId
Gets the identity of the session that made the request.
Declaration
ISessionId SessionId { get; }
Property Value
Type | Description |
---|---|
ISessionId | The session identifier. |
TopicPath
Gets the topic path derived from the requested topic selector.
Declaration
string TopicPath { get; }
Property Value
Type | Description |
---|---|
String | The topic path. |
Remarks
This is equivalent to calling PathPrefix.
TopicSelector
Gets the ITopicSelector that triggered this notification.
Declaration
ITopicSelector TopicSelector { get; }
Property Value
Type | Description |
---|---|
ITopicSelector | The topic selector. |
Remarks
Caution
Deprecated since 6.4.
Topic selectors are no longer verified locally by the client library.
Instead
TopicSelectorExpression
Gets the topic selector expression that triggered this notification.
Declaration
string TopicSelectorExpression { get; }
Property Value
Type | Description |
---|---|
String | The topic selector expression. |
Remarks
Added in 6.4.
Methods
Cancel()
Cancels the request on the server.
Declaration
void Cancel()
Remarks
Calling this will prevent any further processing of the request. For subscription requests, the topic selector will be discarded. The session will not become subscribed to topics that match the selector if they are added later.
Caution
Deprecated since 6.4. In the future (when the legacy fetch mechanism is removed) the behavior when a subscription selector matches with no topics will be to add the selector to the session's topic selections regardless of whether this is called, and this method will become a no-op and will eventually be removed.
Proceed()
Instructs the server to complete processing of the request.
Declaration
void Proceed()
Remarks
This may be called after additional operations (such as adding topics) have been performed, to allow the requested selector to be resolved against the updated topic tree.
For subscription requests, the topic selector will be added to the session's topic selections. This will cause the session to become subscribed to topics that match the selector if they are added later.