Changes API: How to Subscribe to Time Series Changes
-
Use the following methods to subscribe to Time Series Changes:
ForTimeSeries
Track all time series with a given nameForTimeSeriesOfDocument
Overload #1: Track a specific time series of a chosen document
Overload #2: Track any time series of a chosen documentForAllTimeSeries
Track all time series
-
In this page:
ForTimeSeries
Subscribe to changes in all time-series with a given name, no matter which document they belong to,
using the ForTimeSeries method.
Syntax
IChangesObservable<TimeSeriesChange> ForTimeSeries(string timeSeriesName);
| Parameters | ||
|---|---|---|
| timeSeriesName | string | Name of a time series to subscribe to. |
| Return Value | |
|---|---|
| IChangesObservable<TimeSeriesChange> | Observable that allows to add subscriptions to time series notifications. |
Example
IDisposable subscription = store
.Changes()
.ForTimeSeries("Likes")
.Subscribe
(change =>
{
switch (change.Type)
{
case TimeSeriesChangeTypes.Delete:
// do something
break;
}
});
ForTimeSeriesOfDocument
Use ForTimeSeriesOfDocument to subscribe to changes in time series of a chosen document.
- Two overload methods allow you to
- Track a specific time series of the chosen document
- Track any time series of the chosen document
Overload #1
Use this ForTimeSeriesOfDocument overload to track changes in a specific time series of the chosen document.
Syntax
IChangesObservable<TimeSeriesChange> ForTimeSeriesOfDocument(string documentId, string timeSeriesName);
| Parameters | ||
|---|---|---|
| documentId | string | ID of a document to subscribe to. |
| timeSeriesName | string | Name of a time series to subscribe to. |
| Return Value | |
|---|---|
| IChangesObservable<TimeSeriesChange> | Observable that allows to add subscriptions to time series notifications. |
Example
IDisposable subscription = store
.Changes()
.ForTimeSeriesOfDocument("companies/1-A", "Likes")
.Subscribe
(change =>
{
switch (change.Type)
{
case TimeSeriesChangeTypes.Delete:
// do something
break;
}
});
Overload #2
Use this ForTimeSeriesOfDocument overload to track changes in any time series of the chosen document.
Syntax
IChangesObservable<TimeSeriesChange> ForTimeSeriesOfDocument(string documentId);
| Parameters | ||
|---|---|---|
| documentId | string | ID of a document to subscribe to. |
| Return Value | |
|---|---|
| IChangesObservable<TimeSeriesChange> | Observable that allows to add subscriptions to time series notifications. |
Example
IDisposable subscription = store
.Changes()
.ForTimeSeriesOfDocument("companies/1-A")
.Subscribe
(change =>
{
switch (change.Type)
{
case TimeSeriesChangeTypes.Delete:
// do something
break;
}
});
ForAllTimeSeries
Subscribe to changes in all time-series using the ForAllTimeSeries method.
Syntax
IChangesObservable<TimeSeriesChange> ForAllTimeSeries();
| Return Value | |
|---|---|
| IChangesObservable<TimeSeriesChange> | Observable that allows to add subscriptions to time series notifications. |
Example
IDisposable subscription = store
.Changes()
.ForAllTimeSeries()
.Subscribe
(change =>
{
switch (change.Type)
{
case TimeSeriesChangeTypes.Delete:
// do something
break;
}
});
TimeSeriesChange
| Name | Type | Description |
|---|---|---|
| Type | TimeSeriesChangeTypes | Time series change type enum |
| Name | string | Time Series Name |
| DocumentId | string | Time series Document Identifier |
| CollectionName | string | Time series document Collection Name |
| From | DateTime | Time series values From date |
| To | DateTime | Time series values To date |
| ChangeVector | string | Time series Change Vector |
TimeSeriesChangeTypes
| Name | Value |
|---|---|
| None | 0 |
| Put | 1 |
| Delete | 2 |
| Mixed | 3 |
Remarks
To get more method overloads, especially ones supporting delegates, please add the System.Reactive.Core package to your project.