Trait

dagr.core.tasksystem

Pipe

Related Doc: package tasksystem

Permalink

trait Pipe[In, Out] extends ProcessTask

Trait for tasks that would like to be able to pipe data using stdin and stdout. Tasks are still responsible for managing their input and output - so if tasks can also read and write from files, they must have the input set to Io.Stdin and/or output to Io.Stdout before connecting them with pipes.

See also the traits PipeIn and PipeOut which provide a simplified way to implement a piping task that only receives on or only emits to a pipe.

In

a symbolic type representing the kind of data the task can accept

Out

a symbolic type representing the kind of data the task emits

Linear Supertypes
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Pipe
  2. ProcessTask
  3. UnitTask
  4. Schedulable
  5. LazyLogging
  6. Task
  7. Dependable
  8. AnyRef
  9. Any
Implicitly
  1. by any2stringadd
  2. by StringFormat
  3. by Ensuring
  4. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Abstract Value Members

  1. abstract def args: Seq[Any]

    Permalink

    Abstract method that must be implemented by child classes to return a list or similar traversable list of command line elements (command name and arguments) that form the command line to be run.

    Abstract method that must be implemented by child classes to return a list or similar traversable list of command line elements (command name and arguments) that form the command line to be run. Individual values will be converted to Strings before being used by calling toString.

    Definition Classes
    ProcessTask
  2. abstract def pickResources(availableResources: ResourceSet): Option[ResourceSet]

    Permalink

    Given a non-null ResourceSet representing the available resources at this moment in time return either a ResourceSet that is a subset of the available resources in which the task can run, or None if the task cannot run in the available resources.

    Given a non-null ResourceSet representing the available resources at this moment in time return either a ResourceSet that is a subset of the available resources in which the task can run, or None if the task cannot run in the available resources.

    availableResources

    The system resources available to the task

    returns

    Either a ResourceSet of the desired subset of resources to run with, or None

    Definition Classes
    Schedulable

Concrete Value Members

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

    Permalink
    Definition Classes
    AnyRef → Any
  2. def !=>(other: Dependable): Unit

    Permalink

    Removes this as a dependency for other

    Removes this as a dependency for other

    Definition Classes
    TaskDependable
  3. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  4. def +(other: String): String

    Permalink
    Implicit information
    This member is added by an implicit conversion from Pipe[In, Out] to any2stringadd[Pipe[In, Out]] performed by method any2stringadd in scala.Predef.
    Definition Classes
    any2stringadd
  5. def ->[B](y: B): (Pipe[In, Out], B)

    Permalink
    Implicit information
    This member is added by an implicit conversion from Pipe[In, Out] to ArrowAssoc[Pipe[In, Out]] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @inline()
  6. def ::(other: Option[Dependable]): Dependable

    Permalink

    Returns an object that can be used to manage dependencies that apply to this and the other Dependable.

    Returns an object that can be used to manage dependencies that apply to this and the other Dependable.

    Definition Classes
    Dependable
  7. def ::(other: Dependable): Dependable

    Permalink

    Returns an object that can be used to manage dependencies that apply to this and the other Dependable.

    Returns an object that can be used to manage dependencies that apply to this and the other Dependable.

    Definition Classes
    Dependable
  8. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  9. final def ==>(other: Option[Dependable]): Dependable

    Permalink

    Optionally creates a dependency between this dependable and another dependable if one is provided.

    Optionally creates a dependency between this dependable and another dependable if one is provided.

    Definition Classes
    Dependable
  10. final def ==>(other: Dependable): Dependable

    Permalink

    Creates a dependency on this dependable, for the provided Task.

    Creates a dependency on this dependable, for the provided Task.

    Definition Classes
    Dependable
  11. def >(path: Path): Pipe[In, Void]

    Permalink

    Terminate a pipe chain by writing the output to a file.

  12. def >!(path: Path): Pipe[In, Out]

    Permalink

    Writes the standard error stream to the given path.

  13. def >>(path: Path): Pipe[In, Void]

    Permalink

    Terminates a pipe chain by appending the output to a file.

  14. def >>!(path: Path): Pipe[In, Out]

    Permalink

    Appends the standard error stream to the given path.

  15. def addDependent(dependent: Dependable): Unit

    Permalink

    Must be implemented to handle the addition of a dependent.

    Must be implemented to handle the addition of a dependent.

    Definition Classes
    TaskDependable
  16. def allTasks: Traversable[Task]

    Permalink

    Must be implemented to return all tasks represented by the Dependable.

    Must be implemented to return all tasks represented by the Dependable.

    Definition Classes
    TaskDependable
  17. def applyResources(resources: ResourceSet): Unit

    Permalink

    Called by the Scheduler immediately prior to scheduling to allow tasks to perform any necessary last-minute configuration with the knowledge of the exact set of resources they are to be run with.

    Called by the Scheduler immediately prior to scheduling to allow tasks to perform any necessary last-minute configuration with the knowledge of the exact set of resources they are to be run with.

    resources

    the set of resources that the task will be run with

    Definition Classes
    UnitTaskSchedulable
  18. final def asInstanceOf[T0]: T0

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

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  20. def discardError(): Pipe[In, Out]

    Permalink

    Discards the standard error stream.

  21. def ensuring(cond: (Pipe[In, Out]) ⇒ Boolean, msg: ⇒ Any): Pipe[In, Out]

    Permalink
    Implicit information
    This member is added by an implicit conversion from Pipe[In, Out] to Ensuring[Pipe[In, Out]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  22. def ensuring(cond: (Pipe[In, Out]) ⇒ Boolean): Pipe[In, Out]

    Permalink
    Implicit information
    This member is added by an implicit conversion from Pipe[In, Out] to Ensuring[Pipe[In, Out]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  23. def ensuring(cond: Boolean, msg: ⇒ Any): Pipe[In, Out]

    Permalink
    Implicit information
    This member is added by an implicit conversion from Pipe[In, Out] to Ensuring[Pipe[In, Out]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  24. def ensuring(cond: Boolean): Pipe[In, Out]

    Permalink
    Implicit information
    This member is added by an implicit conversion from Pipe[In, Out] to Ensuring[Pipe[In, Out]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  25. final def eq(arg0: AnyRef): Boolean

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

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

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  28. def formatted(fmtstr: String): String

    Permalink
    Implicit information
    This member is added by an implicit conversion from Pipe[In, Out] to StringFormat[Pipe[In, Out]] performed by method StringFormat in scala.Predef.
    Definition Classes
    StringFormat
    Annotations
    @inline()
  29. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  30. final def getTasks: Traversable[_ <: Pipe.this.type]

    Permalink

    Get the list of tasks to execute.

    Get the list of tasks to execute.

    For UnitTask and any class that extends it, if the task wishes to be directly executed, the list should be of size one, and equal to itself. If no resources have been specified, both memory and cores default to the given resources.

    returns

    the list of tasks of to run.

    Definition Classes
    UnitTaskTask
  31. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  32. def headTasks: Traversable[Task]

    Permalink

    Must be implemented to return all tasks on which new predecessor dependencies should be added.

    Must be implemented to return all tasks on which new predecessor dependencies should be added.

    Definition Classes
    TaskDependable
  33. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  34. lazy val logger: Logger

    Permalink
    Attributes
    protected
    Definition Classes
    LazyLogging
  35. var name: String

    Permalink

    The name of the task.

    The name of the task.

    Definition Classes
    Task
  36. final def ne(arg0: AnyRef): Boolean

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

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

    Permalink
    Definition Classes
    AnyRef
  39. def onComplete(exitCode: Int): Boolean

    Permalink

    Finalize anything after the task has been run.

    Finalize anything after the task has been run.

    This method should be called after a task has been run. The intended use of this method is to allow for any modification of this task prior to any dependent tasks being run. This would allow any parameters that were passed to dependent tasks as call-by-name to be finalized here. For example, we could have passed an Option[String] that is None until make it Some(String) in this method. Then when the dependent task's getTasks method is called, it can call 'get' on the option and get something.

    exitCode

    the exit code of the task, which could also be 1 due to the system terminating this process

    returns

    true if we c

    Definition Classes
    Task
  40. var quoteIfNecessary: Boolean

    Permalink
    Attributes
    protected
    Definition Classes
    ProcessTask
  41. def removeDependency(task: Task): Boolean

    Permalink

    Removes a dependency by removing the supplied task from the list of dependencies for this task and removing this from the list of tasks depending on "task".

    Removes a dependency by removing the supplied task from the list of dependencies for this task and removing this from the list of tasks depending on "task".

    task

    a task on which this task depends

    returns

    true if a dependency existed and was removed, false otherwise

    Definition Classes
    Task
  42. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  43. def tailTasks: Traversable[Task]

    Permalink

    Must be implemented to return all tasks on which new successor dependencies should be added.

    Must be implemented to return all tasks on which new successor dependencies should be added.

    Definition Classes
    TaskDependable
  44. def tasksDependedOn: Traversable[Task]

    Permalink

    Gets the sequence of tasks that this task depends on..

    Gets the sequence of tasks that this task depends on..

    Attributes
    protected[dagr.core]
    Definition Classes
    Task
  45. def tasksDependingOnThisTask: Traversable[Task]

    Permalink

    Gets the sequence of tasks that depend on this task.

    Gets the sequence of tasks that depend on this task.

    Attributes
    protected[dagr.core]
    Definition Classes
    Task
  46. def toString(): String

    Permalink

    returns

    the string representation of this task.

    Definition Classes
    ProcessTask → AnyRef → Any
  47. final def wait(): Unit

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

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  50. def withName(name: String): Pipe.this.type

    Permalink

    Sets the name of this task.

    Sets the name of this task.

    Definition Classes
    Task
  51. def |[In2 >: Out, Out2](next: Pipe[In2, Out2]): Pipe[In, Out2]

    Permalink

    Generates or extends a pipe chain by connecting this task to the next task via a pipeline.

    Generates or extends a pipe chain by connecting this task to the next task via a pipeline.

    In2

    the type of input expected by the next task. Must be the same or a supertype of this pipe's output.

    Out2

    the type of output of the next task, which becomes the output type of the returned pipe chain.

    next

    a Pipe enabled task that should receive this pipe's output as its input.

    returns

    a new Pipe object that is the result of connecting the two pipes.

  52. def [B](y: B): (Pipe[In, Out], B)

    Permalink
    Implicit information
    This member is added by an implicit conversion from Pipe[In, Out] to ArrowAssoc[Pipe[In, Out]] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc

Inherited from ProcessTask

Inherited from UnitTask

Inherited from Schedulable

Inherited from LazyLogging

Inherited from Task

Inherited from Dependable

Inherited from AnyRef

Inherited from Any

Inherited by implicit conversion any2stringadd from Pipe[In, Out] to any2stringadd[Pipe[In, Out]]

Inherited by implicit conversion StringFormat from Pipe[In, Out] to StringFormat[Pipe[In, Out]]

Inherited by implicit conversion Ensuring from Pipe[In, Out] to Ensuring[Pipe[In, Out]]

Inherited by implicit conversion ArrowAssoc from Pipe[In, Out] to ArrowAssoc[Pipe[In, Out]]

Ungrouped