abstract class ReadSideProcessor[Event <: AggregateEvent[Event]] extends AnyRef

A read side processor.

Read side processors consume events produced by com.lightbend.lagom.scaladsl.persistence.PersistentEntity instances, and update some read side data store that is optimized for queries.

The events they consume must be tagged, and a read side is able to consume events of one or more tags. Events are usually tagged according to some supertype of event, for example, events may be tagged as Order events. They may also be tagged according to a hash of the ID of the entity associated with the event - this allows read side event handling to be sharded across many nodes. Tagging is done using com.lightbend.lagom.scaladsl.persistence.AggregateEventTag.

Read side processors are responsible for tracking what events they have already seen. This is done using offsets, which are sequential values associated with each event. Note that end users typically will not need to handle offsets themselves, this will be provided by Lagom support specific to the read side datastore, and end users can just focus on handling the events themselves.

Source
ReadSideProcessor.scala
Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. ReadSideProcessor
  2. AnyRef
  3. Any
Implicitly
  1. by any2stringadd
  2. by StringFormat
  3. by Ensuring
  4. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new ReadSideProcessor()

Abstract Value Members

  1. abstract def aggregateTags: Set[AggregateEventTag[Event]]

    The tags to aggregate.

    The tags to aggregate.

    This must return at least one tag to aggregate. Read side processors will be sharded over the cluster by these tags, so if events are tagged by a shard key, the read side processing load can be distributed across the cluster.

    returns

    The tags to aggregate.

  2. abstract def buildHandler(): ReadSideHandler[Event]

    Return a ReadSideProcessor#ReadSideHandler for the given offset type.

    Return a ReadSideProcessor#ReadSideHandler for the given offset type.

    returns

    The offset processor.

Concrete Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. def +(other: String): String
    Implicit
    This member is added by an implicit conversion from ReadSideProcessor[Event] to any2stringadd[ReadSideProcessor[Event]] performed by method any2stringadd in scala.Predef.
    Definition Classes
    any2stringadd
  4. def ->[B](y: B): (ReadSideProcessor[Event], B)
    Implicit
    This member is added by an implicit conversion from ReadSideProcessor[Event] to ArrowAssoc[ReadSideProcessor[Event]] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @inline()
  5. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  6. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  7. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  8. def ensuring(cond: (ReadSideProcessor[Event]) ⇒ Boolean, msg: ⇒ Any): ReadSideProcessor[Event]
    Implicit
    This member is added by an implicit conversion from ReadSideProcessor[Event] to Ensuring[ReadSideProcessor[Event]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  9. def ensuring(cond: (ReadSideProcessor[Event]) ⇒ Boolean): ReadSideProcessor[Event]
    Implicit
    This member is added by an implicit conversion from ReadSideProcessor[Event] to Ensuring[ReadSideProcessor[Event]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  10. def ensuring(cond: Boolean, msg: ⇒ Any): ReadSideProcessor[Event]
    Implicit
    This member is added by an implicit conversion from ReadSideProcessor[Event] to Ensuring[ReadSideProcessor[Event]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  11. def ensuring(cond: Boolean): ReadSideProcessor[Event]
    Implicit
    This member is added by an implicit conversion from ReadSideProcessor[Event] to Ensuring[ReadSideProcessor[Event]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  12. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  13. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  14. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  15. def formatted(fmtstr: String): String
    Implicit
    This member is added by an implicit conversion from ReadSideProcessor[Event] to StringFormat[ReadSideProcessor[Event]] performed by method StringFormat in scala.Predef.
    Definition Classes
    StringFormat
    Annotations
    @inline()
  16. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  17. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  18. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  19. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  20. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  21. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  22. def readSideName: String

    The name of this read side.

    The name of this read side.

    This name should be unique among the read sides and entity types of the service. By default it is using the short class name of the concrete ReadSideProcessor class. Subclasses may override to define other type names. It is wise to override and retain the original name when the class name is changed because this name is used to identify read sides throughout the cluster.

  23. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  24. def toString(): String
    Definition Classes
    AnyRef → Any
  25. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  26. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  27. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  28. def [B](y: B): (ReadSideProcessor[Event], B)
    Implicit
    This member is added by an implicit conversion from ReadSideProcessor[Event] to ArrowAssoc[ReadSideProcessor[Event]] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc

Inherited from AnyRef

Inherited from Any

Inherited by implicit conversion any2stringadd from ReadSideProcessor[Event] to any2stringadd[ReadSideProcessor[Event]]

Inherited by implicit conversion StringFormat from ReadSideProcessor[Event] to StringFormat[ReadSideProcessor[Event]]

Inherited by implicit conversion Ensuring from ReadSideProcessor[Event] to Ensuring[ReadSideProcessor[Event]]

Inherited by implicit conversion ArrowAssoc from ReadSideProcessor[Event] to ArrowAssoc[ReadSideProcessor[Event]]

Ungrouped