abstract class FullTask[R, DL <: HList] extends AnyRef
A full task represents a task plus its dependencies. It ensures a Task is only created when all of its dependencies have finished.
- R
the result type of this task.
- DL
the type of the dependencies HList.
- Source
- FullTask.scala
- Alphabetic
- By Inheritance
- FullTask
- AnyRef
- Any
- by any2stringadd
- by StringFormat
- by Ensuring
- by ArrowAssoc
- Hide All
- Show All
- Public
- All
Instance Constructors
-
new
FullTask(description: String, dependencies: DL, timeout: Duration)(implicit orchestrator: AbstractOrchestrator[_], comapped: TaskComapped[DL])
- description
a text that describes this task in a human readable way, or a message key to be used in internationalization. It will be used when the status of this task orchestrator is requested.
- dependencies
the tasks that must have finished in order for this task to be able to start.
- timeout
the timeout after which the task will be aborted. The timeout does not survive restarts. It should be
Duration.Inf
or a positive duration greater then zero.- orchestrator
the orchestrator upon which this task will be added and ran. This is like an ExecutionContext for this task.
- comapped
evidence proving DL is a HList of FullTasks. Also allows us to extract the results from the dependencies.
Concrete Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
- def +(other: String): String
- def ->[B](y: B): (FullTask[R, DL], B)
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def allDependenciesFinished: Boolean
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
- lazy val color: String
- implicit val comapped: TaskComapped[DL]
- val dependencies: DL
- val description: String
- def ensuring(cond: (FullTask[R, DL]) ⇒ Boolean, msg: ⇒ Any): FullTask[R, DL]
- def ensuring(cond: (FullTask[R, DL]) ⇒ Boolean): FullTask[R, DL]
- def ensuring(cond: Boolean, msg: ⇒ Any): FullTask[R, DL]
- def ensuring(cond: Boolean): FullTask[R, DL]
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
- def formatted(fmtstr: String): String
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
final
val
index: Int
The index of this task in the task list maintained by the orchestrator.
The index of this task in the task list maintained by the orchestrator. It could also be called id since it uniquely identifies this task inside the corresponding orchestrator.
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- implicit val orchestrator: AbstractOrchestrator[_]
-
final
def
report: Report[R]
The TaskReport of this task.
- final def result: Option[R]
-
final
def
state: State
- returns
the current state of this task.
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
- val timeout: Duration
-
def
toString(): String
- Definition Classes
- FullTask → AnyRef → Any
-
final
def
unsafeResult: R
Returns this task result if it already finished.
Returns this task result if it already finished. Otherwise throws an exception.
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
- def withColor(message: ⇒ String): String
- def withOrchestratorAndTaskPrefix(message: ⇒ String): String
- def withTaskPrefix(message: ⇒ String): String
- def →[B](y: B): (FullTask[R, DL], B)