Trait

com.coxautodata.waimak.dataflow

DataFlowAction

Related Doc: package dataflow

Permalink

trait DataFlowAction extends AnyRef

An action to be performed as part of a data flow. Actions declare what input labels they expect in order to start execution (0 .. N) and can produce outputs associated with the output labels (0 .. N). Executors will use these labels to execute to schedule the actions sequentially or in parallel.

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

Abstract Value Members

  1. abstract val inputLabels: List[String]

    Permalink

    The unique identifiers for the inputs to this action

  2. abstract val outputLabels: List[String]

    Permalink

    The unique identifiers for the outputs to this action

  3. abstract def performAction[C <: FlowContext](inputs: DataFlowEntities, flowContext: C): Try[ActionResult]

    Permalink

    Perform the action

    Perform the action

    inputs

    the DataFlowEntities corresponding to the inputLabels

    flowContext

    context of the flow in which this action runs

    returns

    the action outputs (these must be declared in the same order as their labels in outputLabels)

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. def actionName: String

    Permalink

    For representing the action

  5. final def asInstanceOf[T0]: T0

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

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  7. def description: String

    Permalink
  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. def flowState(inputs: DataFlowEntities): DataFlowActionState

    Permalink

    Action has the responsibility of assessing itself and produce DataFlowActionState, that will be used by the executors to determine if they can call performAction or not.

    Action has the responsibility of assessing itself and produce DataFlowActionState, that will be used by the executors to determine if they can call performAction or not. Also can be used for progress monitoring. This will allow for more custom actions without modifying the executors

    inputs

    - action will study the state of the inputs in order to generate self assessment

    returns

    - an instance of the DataFlowActionState

  12. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  13. val guid: String

    Permalink

    Unique id of the action, but using it for adding behaviours can be problematic due to Interceptors that are defined at a much later stage.

    Unique id of the action, but using it for adding behaviours can be problematic due to Interceptors that are defined at a much later stage. Because of that ActionSchedulers must NOT use this guid.

  14. def hashCode(): Int

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

    Permalink
    Definition Classes
    Any
  16. def logLabel: String

    Permalink
  17. final def ne(arg0: AnyRef): Boolean

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

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

    Permalink
    Definition Classes
    AnyRef
  20. def requiresAllInputs: Boolean

    Permalink

    This action can only be executed if all of the inputs are not empty.

    This action can only be executed if all of the inputs are not empty. An input can be explicitly marked as empty. If false, than one or more inputs can be empty to start execution.

  21. def schedulingGuid: String

    Permalink

    Interceptors must not override this property, as certain behaviours of the data flow (Ex, execution pools) will be associated with this scheduling guid.

    Interceptors must not override this property, as certain behaviours of the data flow (Ex, execution pools) will be associated with this scheduling guid. Also ActionScheduler will use this guid to track scheduled actions.

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

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

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

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

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

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

Inherited from AnyRef

Inherited from Any

Ungrouped