Diffusion .NET API
5.9.24
|
Details of a child list topic. More...
Public Member Functions | |
IChildListTopicDetailsBuilder | CreateBuilder () |
Returns a new builder initialised with the values from these details. More... | |
Additional Inherited Members | |
Properties inherited from PushTechnology.ClientInterface.Client.Topics.ITopicDetails | |
TopicDetailsLevel | Level [get] |
Returns the level of detail available. More... | |
TopicType | Type [get] |
Returns the topic type. More... | |
ITopicDetailsSchema | Schema [get] |
Returns the topic schema. More... | |
ITopicDetailsAttributes | Attributes [get] |
Returns the topic attributes. More... | |
Details of a child list topic.
This topic type automatically maintains a list of its child topics.
The topic state (the value returned when a client subscribes or requests a snapshot of the topic) will be maintained as a Constants.FIELD_DELIMITER list of fields containing the node names of all child topics.
Content received may be read using a IRecordContentReader.
Content of type TopicUpdateType.SNAPSHOT will be delivered when a client subscribes to or fetches such a topic.
When a new child topic is added then content of type TopicUpdateType.DELTA with a single single header of ChildListTopicDetailsConstants.CHILD_ADDED and a value of the child node name will be delivered.
When a child topic is removed from then content of type TopicUpdateType.DELTA with a single header of ChildListTopicDetailsConstants.CHILD_REMOVED and a value of the child node name will be delivered.
Note that when a topic is removed causing all of its descendants to also be removed then there will only be notifications sent out for the parent of the top level topic removed.
At this release the of the Unified API it is possible to create such topics for use by Classic API clients. However, Unified API clients cannot yet be consumers of such topics and only the content will be delivered and not the header values.
The easiest way to create an instance of such details is using ITopicControl.NewDetails, for example:
var control = session.GetTopicControlFeature(); var details = control.NewDetails( TopicType.CHILD_LIST );
Alternatively the details can be created using a builder obtained as follows:
var builder = control.NewDetailsBuilder<IChildListTopicDetailsBuilder>();
Deprecated since 5.9.
IChildListTopicDetailsBuilder PushTechnology.ClientInterface.Client.Topics.IChildListTopicDetails.CreateBuilder | ( | ) |
Returns a new builder initialised with the values from these details.