Class

ru.primetalk.synapse.core.dsl.AccumulationDsl

CollectingContact

Related Doc: package AccumulationDsl

Permalink

implicit class CollectingContact[T] extends AnyRef

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. CollectingContact
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new CollectingContact(c: AccumulationDsl.Contact[T])(implicit sb: AccumulationDsl.SystemBuilder)

    Permalink

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  5. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  6. def collectReversedUntil[TTrigger](trigger: AccumulationDsl.Contact[TTrigger], name: String = c.name + "ReversedCollector"): AccumulationDsl.Contact[List[T]]

    Permalink

    Creates intermediate state and collects all incoming signals in reversed order until some data appear on the trigger.

    Creates intermediate state and collects all incoming signals in reversed order until some data appear on the trigger. Then clears the state and returns collected data in a single list.

  7. def collectUntil[TTrigger](trigger: AccumulationDsl.Contact[TTrigger], name: String = c.name + "CCollector"): AccumulationDsl.Contact[List[T]]

    Permalink

    Creates intermediate state and collects all incoming signals in direct order until some data appear on the trigger.

    Creates intermediate state and collects all incoming signals in direct order until some data appear on the trigger. Then clears the state and returns collected data in a single list.

  8. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  9. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  10. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  11. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  12. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  13. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  14. def lastJoinUntil[TTrigger](trigger: AccumulationDsl.Contact[TTrigger], name: String = c.name + "Collector", autoClear: Boolean = true): AccumulationDsl.Contact[(T, TTrigger)]

    Permalink

    Saves incoming signals to internal state.

    Saves incoming signals to internal state. The previous value is replaced with the new one. When a signal appears on the trigger contact the current remembered value

    in1.lastJoinUntil(in2).map{ case (data1, data2) => }

    if there were no input, then the trigger signal do not appear on the output

    autoClear

    should clear internal state on trigger. Otherwise keeps the previous state. Prefer to use rightJoin.

  15. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  16. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  17. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  18. def prependUntil[TTrigger](trigger: AccumulationDsl.Contact[TTrigger], name: String = c.name + "PCollector"): AccumulationDsl.Contact[(List[T], TTrigger)]

    Permalink

    JOINs two signals.

    JOINs two signals.

    Creates intermediate state and collects all incoming signals from the source contact until some data appear on the trigger. Then clears the state and returns collected data in a single list together with the trigger signal.

    in1.prependUntil(in2).map{ case (list1, data2) => ... }
  19. def rightJoin[TTrigger](trigger: AccumulationDsl.Contact[TTrigger], name: String = c.name + "RightJoin", delay: Int = 1): AccumulationDsl.Contact[(Option[T], TTrigger)]

    Permalink

    Creates a state for temporary storing the value from the current contact.

    Creates a state for temporary storing the value from the current contact.

    A kind of a latch.

    for all trigger signals that appear during latch delay the join is successful. If nothing has been remembered, then nothing appears on the output.

    The latched value is cleared automatically after the given delay. This is better than lastJoinUntil when trigger do not appear in our timeslot. The remembered value is automatically removed anyway.

  20. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  21. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  22. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  23. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  24. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from AnyRef

Inherited from Any

Ungrouped