Class BinaryOperatorAggregate<ValueType, UpdateType>

Stores the result of applying a binary operator to the current value and each new value.

Type Parameters

Hierarchy (view full)

Constructors

Properties

UpdateType: UpdateType
ValueType: ValueType
initialValueFactory?: (() => ValueType)

Type declaration

lc_graph_name: string

The name of the channel.

value: undefined | ValueType

Methods

  • Return a string representation of the channel's current state.

    Returns ValueType

    Throws

    if the channel is empty (never updated yet), or doesn't support checkpoints.

  • Mark the current value of the channel as consumed. By default, no-op. A channel can use this method to modify its state, preventing the value from being consumed again.

    Returns True if the channel was updated, False otherwise.

    Returns boolean

  • Notify the channel that the Pregel run is finishing. By default, no-op. A channel can use this method to modify its state, preventing finish.

    Returns True if the channel was updated, False otherwise.

    Returns boolean

  • Return a new identical channel, optionally initialized from a checkpoint. Can be thought of as a "restoration" from a checkpoint which is a "snapshot" of the channel's state.

    Parameters

    Returns this

  • Return the current value of the channel.

    Returns ValueType

    Throws

    if the channel is empty (never updated yet).

  • Return True if the channel is available (not empty), False otherwise. Subclasses should override this method to provide a more efficient implementation than calling get() and catching EmptyChannelError.

    Returns boolean

  • Update the channel's value with the given sequence of updates. The order of the updates in the sequence is arbitrary. This method is called by Pregel for all channels at the end of each step. If there are no updates, it is called with an empty sequence.

    Raises InvalidUpdateError if the sequence of updates is invalid. Returns True if the channel was updated, False otherwise.

    Parameters

    Returns boolean

    Throws

    if the sequence of updates is invalid.