Class

razie.diesel.exec

EExecutor

Related Doc: package exec

Permalink

abstract class EExecutor extends EApplicable

a message executor - these can decompose leafs into values or generate more messages

Executors are hardcoded logic, connectors etc

Linear Supertypes
EApplicable, AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. EExecutor
  2. EApplicable
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new EExecutor(name: String)

    Permalink

    name

    - the name of this executor

Abstract Value Members

  1. abstract def apply(in: EMsg, destSpec: Option[EMsg])(implicit ctx: ECtx): List[Any]

    Permalink

    do it !

    do it !

    returns

    a list of elements - these will be wrapped in DomAst and added to the tree, so a value should be EVal etc When starting an async action yourself, just return an EEngSuspend and schedule a later DERep to complete this actibity

    Definition Classes
    EApplicable
  2. abstract def test(m: EMsg, cole: Option[MatchCollector] = None)(implicit ctx: ECtx): Boolean

    Permalink

    is this applicable...

    is this applicable... applicable?

    Definition Classes
    EApplicable

Concrete 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. final def eq(arg0: AnyRef): Boolean

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

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

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

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

    Permalink
    Definition Classes
    AnyRef → Any
  11. def isAsync: Boolean

    Permalink

    is this async? note that this flag is just for info, not needed, but do read this comment on async execs

    is this async? note that this flag is just for info, not needed, but do read this comment on async execs

    If SYNC, we'll wait in this thread on the call to apply - avoid a switch. This is great for local support like DB, logging, echo and other services

    If ASYNC, then the engine will actor it out and you'll need to send a DERep to the engine when done so it's more like asking the engine to isolate you rather than promising something

    In case this is async, you can return some info/correlation nodes from apply(), which will be added to the tree, after which the engine will NOT mark this node complete. You will send a DERep when done.

    Also, while processing, you could add more info nodes to this one and only at the end mark it as done with DERep.

    todo will need a DEDetails for the temp info nodes todo implement async, with examples

    Definition Classes
    EApplicable
  12. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  13. def isMock: Boolean

    Permalink

    is this a mock? is it supposed to run in mock mode or not?

    is this a mock? is it supposed to run in mock mode or not?

    you can have an executor for mock mode and one for normal mode

    Definition Classes
    EApplicable
  14. def messages: List[EMsg]

    Permalink

    the list of message specs for this executor - overwrite and return them for content assist

  15. val name: String

    Permalink

    - the name of this executor

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

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

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

    Permalink
    Definition Classes
    AnyRef
  19. final def synchronized[T0](arg0: ⇒ T0): T0

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

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

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

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

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

Inherited from EApplicable

Inherited from AnyRef

Inherited from Any

Ungrouped