Options
All
  • Public
  • Public/Protected
  • All
Menu

Class UpdateStreamImpl

Implementation of the InternalUpdateStream

This implementation holds a delegate that can be exchanged depending on the state of the stream

Hierarchy

  • UpdateStreamImpl

Implements

Index

Constructors

constructor

  • Create a new UpdateStreamImpl instance

    Parameters

    Returns UpdateStreamImpl

Properties

Private delegate

The delegate that handles all operations and events

Methods

get

  • get(): any
  • Return the latest value of the topic set using this update stream.

    The returned value reflects the last value that has been set, before it is sent to the server.

    If the server rejects a set operation, the topic value will not change and this update stream will be invalidated.

    This method will throw an Error if called before the first call to set

    Returns any

    the cached value of the topic

onSetComplete

  • onSetComplete(streamId: UpdateStreamId, retainsValue: boolean, supportsConflation: boolean): void
  • Called when a set operation completes

    Parameters

    • streamId: UpdateStreamId
    • retainsValue: boolean
    • supportsConflation: boolean

    Returns void

onSetFailed

  • onSetFailed(err: Error): void
  • Called when a set operation fails

    Parameters

    • err: Error

    Returns void

onValidateComplete

  • onValidateComplete(streamId: UpdateStreamId, retainsValue: boolean, supportsConflation: boolean): void

onValidateFailed

  • onValidateFailed(err: Error): void
  • Called when a validate operation fails

    Parameters

    • err: Error

    Returns void

set

  • set(value: any): Result<void>
  • Sets the topic to a specified value.

    null or undefined can only be passed to the value parameter when updating string, int64 or double topics.

    When a topic of type string, int64 or double is set to `null` or `undefined` , the topic will be updated to have no value. If a previous value was present subscribers will receive a notification that the new value is `undefined` . New subscribers will not receive a value notification.

    Parameters

    • value: any

    Returns Result<void>

    a Result that completes when a response is received from the server.

    If the task fails, the Result will resolve with an Error .

setDelegate

  • Set the delegate stream

    This is usually called by the current delegate in response of a change of the internal state.

    Parameters

    Returns void

validate

  • Validates the update stream.

    Update streams are validated lazily when setting the value. This method allows the stream to be validated before a value needs to be set.

    If the update stream has not been validated yet, calling this method checks the topic exists, the topic type is correct, the constraint is satisfied and the session has permission to update the topic. Once it has been validated calling this method checks the topic has not been removed, no other stream has been created for the topic, the value of the topic has not been changed by anything else and the session still has permission to update the topic. If validation fails, the Result will resolve with an Error.

    If this method fails all subsequent calls to set or validate will resolve with an Error.

    Returns Result<TopicCreationResult>

    a Result that completes when a response is received from the server.