c

akka.cluster.ddata

AbstractDeltaReplicatedData

abstract class AbstractDeltaReplicatedData[A <: AbstractDeltaReplicatedData[A, B], B <: ReplicatedDelta] extends AbstractReplicatedData[A] with DeltaReplicatedData

Java API: Interface for implementing a DeltaReplicatedData in Java.

The type parameter A is a self-recursive type to be defined by the concrete implementation. E.g. class TwoPhaseSet extends AbstractDeltaReplicatedData<TwoPhaseSet, TwoPhaseSet>

Source
ReplicatedData.scala
Type Hierarchy
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. AbstractDeltaReplicatedData
  2. DeltaReplicatedData
  3. AbstractReplicatedData
  4. ReplicatedData
  5. AnyRef
  6. Any
Implicitly
  1. by any2stringadd
  2. by StringFormat
  3. by Ensuring
  4. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new AbstractDeltaReplicatedData()

Type Members

  1. type D = ReplicatedDelta

    The type of the delta.

    The type of the delta. To be specified by subclass. It may be the same type as T or a different type if needed. For example GSet uses the same type and ORSet uses different types.

    Definition Classes
    AbstractDeltaReplicatedDataDeltaReplicatedData
  2. type T = ReplicatedData

    The type of the concrete implementation, e.g.

    The type of the concrete implementation, e.g. GSet[A]. To be specified by subclass.

    Definition Classes
    AbstractReplicatedDataReplicatedData

Abstract Value Members

  1. abstract def deltaData: Optional[B]

    The accumulated delta of mutator operations since previous #resetDelta.

    The accumulated delta of mutator operations since previous #resetDelta. When the Replicator invokes the modify function of the Update message and the user code is invoking one or more mutator operations the data is collecting the delta of the operations and makes it available for the Replicator with the #deltaData accessor. The modify function shall still return the full state in the same way as ReplicatedData without support for deltas.

  2. abstract def mergeData(that: A): A

    Java API: Monotonic merge function.

    Java API: Monotonic merge function.

    Definition Classes
    AbstractReplicatedData
  3. abstract def mergeDeltaData(that: B): A

    When delta is merged into the full state this method is used.

    When delta is merged into the full state this method is used. When the type D of the delta is of the same type as the full state T this method can be implemented by delegating to mergeData.

  4. abstract def resetDelta: T

    Reset collection of deltas from mutator operations.

    Reset collection of deltas from mutator operations. When the Replicator invokes the modify function of the Update message the delta is always "reset" and when the user code is invoking one or more mutator operations the data is collecting the delta of the operations and makes it available for the Replicator with the #delta accessor. When the Replicator has grabbed the delta it will invoke this method to get a clean data instance without the delta.

    Definition Classes
    DeltaReplicatedData

Concrete Value Members

  1. final def delta: Option[ReplicatedDelta]

    Delegates to #deltaData, which must be implemented by subclass.

    Delegates to #deltaData, which must be implemented by subclass.

    Definition Classes
    AbstractDeltaReplicatedDataDeltaReplicatedData
  2. final def merge(that: ReplicatedData): ReplicatedData

    Delegates to #mergeData, which must be implemented by subclass.

    Delegates to #mergeData, which must be implemented by subclass.

    Definition Classes
    AbstractReplicatedDataReplicatedData
  3. final def mergeDelta(that: ReplicatedDelta): ReplicatedData

    Delegates to #mergeDeltaData, which must be implemented by subclass.

    Delegates to #mergeDeltaData, which must be implemented by subclass.

    Definition Classes
    AbstractDeltaReplicatedDataDeltaReplicatedData