Table of Contents

Enum TopicType

Namespace
PushTechnology.ClientInterface.Client.Topics
Assembly
Diffusion.Client.dll

The topic type determines the type of the data values a topic publishes to subscribers.

public enum TopicType : byte

Fields

BINARY = 14

Topic that stores and publishes binary values.

DOUBLE = 19

Topic that stores and publishes IEEE 754 double-precision floating point numbers.

INT64 = 18

Topic that stores and publishes 64-bit integer values.

JSON = 15

Topic that stores and publishes JSON (JavaScript Object Notation) values.

RECORD_V2 = 20

Topic that stores and publishes data in the form of records and fields.

STRING = 17

Topic that stores and publishes String values.

TIME_SERIES = 16

Time Series Topic.

UNKNOWN = 21

A topic type that is unsupported by the session.

Remarks

Source Topics

Most topics are source topics. The characteristics of each type of source topic are summarized in the following table:

Topic Type State Data Type
STRING Single scalar value System.String. Supports delta-streams and null values.
INT64 Single scalar value System.Int64. Supports null values.
DOUBLE Single scalar value System.Double. Supports null values.
BINARY Single scalar value Arbitrary binary data. Supports delta-streams.
RECORD_V2 Single composite value IRecordV2. Supports delta-streams.
JSON Single composite value IJSON. Supports delta-streams.
TIME_SERIES Append-only log of events IEvent<TValue>.

Time Series Topics

A time series is a sequence of events. Each event contains a value and has server-assigned metadata comprised of a sequence number, timestamp, and author.

A time series topic allows sessions to access a time series that is maintained by the server. A time series topic has an associated IDataType, such as Binary, String, or JSON, that determines the type of value associated with each event.

The TimeSeriesRetainedRange property configures the range of historic events retained by a time series topic. If the property is not specified, a time series topic will retain the ten most recent events.

The TimeSeriesSubscriptionRange property configures a time series topic to send a range of historic events from the end of the time series to new subscribers. This is a convenient way to synchronize new subscribers without requiring the use of a IRangeQuery<TValue>.

By default, new subscribers will be sent the latest event if delta streams are enabled and no events if delta streams are disabled. See the description of Subscription range in the ITimeSeries documentation.

The TimeSeriesEventValueType property must be provided when creating a time series topic.

See Also