case class Execution(run: Option[(Env) => Future[() => Result]] = None, executing: Executing = NotExecuting, timeout: Option[FiniteDuration] = None, mustJoin: Boolean = false, nextMustStopIf: (Result) => Boolean = (r: Result) => false, isolable: Boolean = true, previousResult: Option[Result] = None, continuation: Option[FragmentsContinuation] = None) extends Product with Serializable
Execution of a Fragment
- there can be none (for a piece of text)
- the execution depends on the current Env. by default executions are created synchronously but can also be fork-off with Execution.withEnvAsync
- it can have its own timeout (default is infinite)
- once executed the result is kept
- if mustJoin is true this means that all previous executions must be finished before this one can start
- it has a condition deciding if the next execution can proceed or not depending on the current result
- if isolable is true this means that it should be executed in its own specification instance
- the result of a similar execution can be stored to decide if this one needs to be executed or not
- it can store a continuation that will create more fragments, possibly containing more executions, based on the current result
Linear Supertypes
Ordering
- Alphabetic
- By Inheritance
Inherited
- Execution
- Serializable
- Product
- Equals
- AnyRef
- Any
- Hide All
- Show All
Visibility
- Public
- Protected
Instance Constructors
- new Execution(run: Option[(Env) => Future[() => Result]] = None, executing: Executing = NotExecuting, timeout: Option[FiniteDuration] = None, mustJoin: Boolean = false, nextMustStopIf: (Result) => Boolean = (r: Result) => false, isolable: Boolean = true, previousResult: Option[Result] = None, continuation: Option[FragmentsContinuation] = None)
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- def after(executions: List[Execution]): Execution
run this execution after the previous executions are finished
- def afterSequential(executions: List[Execution]): Execution
run this execution after the other executions have been sequentially executed
- def afterSuccessful(executions: List[Execution]): Execution
run this execution after the executions and only if they are successful
- def afterSuccessfulSequential(executions: List[Execution]): Execution
run this execution after the other executions have been sequentially executed and only if they are successful
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- val continuation: Option[FragmentsContinuation]
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(a: Any): Boolean
- Definition Classes
- Execution → Equals → AnyRef → Any
- lazy val executedResult: TimedFuture[ExecutedResult]
- val executing: Executing
- lazy val executionResult: TimedFuture[Result]
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def hashCode(): Int
- Definition Classes
- Execution → AnyRef → Any
- def isExecutable: Boolean
- returns
true if something can be run
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- val isolable: Boolean
- def join: Execution
methods to set the execution
- def makeGlobal(when: Boolean): Execution
- def makeGlobal: Execution
- def mapMessage(f: (String) => String): Execution
force a message
- def mapResult(f: (Result) => Result): Execution
force a result
- val mustJoin: Boolean
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- val nextMustStopIf: (Result) => Boolean
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- val previousResult: Option[Result]
- def productElementNames: Iterator[String]
- Definition Classes
- Product
- val run: Option[(Env) => Future[() => Result]]
- def setErrorAsFatal: Execution
- def setExecuting(r: Future[(Result, SimpleTimer)]): Execution
- returns
set an execution result being computed
- def setFatal(f: Throwable): Execution
- returns
set a fatal execution error
- def setPreviousResult(r: Option[Result]): Execution
- def setResult(r: => Result): Execution
- returns
set an execution result
- def setTimeout(timeout: FiniteDuration): Execution
- def skip: Execution
- def startAfter(others: List[Execution])(env: Env): Execution
start this execution when the other ones are finished
- def startAfter(other: Execution)(env: Env): Execution
start this execution when the other one is finished
- def startExecution(env: Env): Execution
run the execution
- def stopNextIf(f: (Result) => Boolean): Execution
- def stopNextIf(r: Result): Execution
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- val timeout: Option[FiniteDuration]
- def toString(): String
- Definition Classes
- Execution → AnyRef → Any
- def updateResult(newResult: (=> Result) => Result): Execution
- def updateRun(newRun: ((Env) => Future[() => Result]) => (Env) => Future[() => Result]): Execution
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- def was(statusCheck: (String) => Boolean): Boolean