case class WdlTask(name: String, commandTemplate: Seq[CommandPart], runtimeAttributes: RuntimeAttributes, meta: Map[String, String], parameterMeta: Map[String, String], ast: Ast) extends WdlCallable with Product with Serializable

Represents a task declaration in a WDL file

name

Name of the task

commandTemplate

Sequence of command pieces, essentially a parsed command template

runtimeAttributes

'runtime' section of a file

meta

'meta' section of a task

parameterMeta

- 'parameter_meta' section of a task

ast

The syntax tree from which this was built.

Linear Supertypes
Serializable, Serializable, Product, Equals, WdlCallable, Scope, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. WdlTask
  2. Serializable
  3. Serializable
  4. Product
  5. Equals
  6. WdlCallable
  7. Scope
  8. AnyRef
  9. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new WdlTask(name: String, commandTemplate: Seq[CommandPart], runtimeAttributes: RuntimeAttributes, meta: Map[String, String], parameterMeta: Map[String, String], ast: Ast)

    name

    Name of the task

    commandTemplate

    Sequence of command pieces, essentially a parsed command template

    runtimeAttributes

    'runtime' section of a file

    meta

    'meta' section of a task

    parameterMeta

    - 'parameter_meta' section of a task

    ast

    The syntax tree from which this was built.

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. lazy val ancestry: Seq[Scope]

    Seq(parent, grandparent, great grandparent, ..., WdlNamespace)

    Seq(parent, grandparent, great grandparent, ..., WdlNamespace)

    Definition Classes
    Scope
  5. def appearsInFqn: Boolean
    Definition Classes
    Scope
  6. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  7. val ast: Ast
    Definition Classes
    WdlTaskScope
  8. lazy val calls: Set[WdlCall]

    Descendants that are Calls

    Descendants that are Calls

    Definition Classes
    Scope
  9. def children: Seq[Scope]

    Child scopes, in the order that they appear in the source code

    Child scopes, in the order that they appear in the source code

    Definition Classes
    Scope
  10. def children_=[Child <: Scope](children: Seq[Child]): Unit
    Definition Classes
    Scope
  11. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  12. def closestCommonAncestor(other: Scope): Option[Scope]

    Given another scope, returns the closest common ancestor between the two scopes, if one exists at all

    Given another scope, returns the closest common ancestor between the two scopes, if one exists at all

    returns

    closest common ancestor

    Definition Classes
    Scope
  13. def closestCommonScatter(other: Scope): Option[Scatter]
    Definition Classes
    Scope
  14. val commandTemplate: Seq[CommandPart]
  15. def commandTemplateString: String
  16. lazy val declarations: Seq[Declaration]

    Declarations within this Scope, in the order that they appear in source code

    Declarations within this Scope, in the order that they appear in source code

    Definition Classes
    Scope
  17. lazy val descendants: Set[Scope]

    All children ++ children's children ++ etc

    All children ++ children's children ++ etc

    Definition Classes
    Scope
  18. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  19. def evaluateFilesFromCommand(inputs: WorkflowCoercedInputs, functions: WdlFunctions[WdlValue]): Map[WdlExpression, WdlFile]

    Finds all write_* expressions in the command line, evaluates them, and return the corresponding created file for them.

  20. def evaluateOutputs(inputs: EvaluatedTaskInputs, wdlFunctions: WdlStandardLibraryFunctions, postMapper: (WdlValue) ⇒ Try[WdlValue] = v => Success(v)): Try[Map[TaskOutput, WdlValue]]
  21. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  22. def findOutputFiles(inputs: WorkflowCoercedInputs, functions: WdlFunctions[WdlValue], silenceEvaluationErrors: Boolean = true): Seq[WdlFile]

    Tries to determine files that will be created by the outputs of this task.

  23. lazy val fullyQualifiedName: String

    String identifier for this scope.

    String identifier for this scope. this.namespace.resolve(this.fullyQualifiedName) == this

    Definition Classes
    Scope
  24. def fullyQualifiedNameWithIndexScopes: String

    String identifier for this scope, with hidden scope information.

    String identifier for this scope, with hidden scope information.

    this.namespace.resolve(this.fullyQualifiedNameWithIndexScopes) == this

    Definition Classes
    Scope
  25. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
  26. def inputsFromMap(inputs: Map[FullyQualifiedName, WdlValue]): EvaluatedTaskInputs

    Assign declaration values from the given input map.

    Assign declaration values from the given input map. Fqn must be task declaration fqns e.g.: task t { String s } inputMap = Map("t.s" -> WdlString("hello"))

  27. def inputsLookupFunction(inputs: WorkflowCoercedInputs, wdlFunctions: WdlFunctions[WdlValue], shards: Map[Scatter, Int] = Map.empty[Scatter, Int]): (String) ⇒ WdlValue

    A lookup function that restricts known task values to input declarations

  28. def instantiateCommand(taskInputs: EvaluatedTaskInputs, functions: WdlFunctions[WdlValue], valueMapper: (WdlValue) ⇒ WdlValue = (v) => v): Try[String]

    Given a map of task-local parameter names and WdlValues, create a command String.

    Given a map of task-local parameter names and WdlValues, create a command String.

    Instantiating a command line is the process of taking a command in this form:

    sh script.sh $${var1} -o $${var2}

    This command is stored as a Seq[CommandPart] in the Command class (e.g. [sh script.sh, $${var1}, -o, $${var2}]). Then, given a map of variable -> value:

    {
      "var1": "foo",
      "var2": "bar"
    }

    It calls instantiate() on each part, and passes this map. The ParameterCommandPart are the $${var1} and $${var2} pieces and they lookup var1 and var2 in that map.

    The command that's returned from Command.instantiate() is:

    sh script.sh foo -o bar
    taskInputs

    Map[String, WdlValue] of inputs to this call, keys should be declarations

    functions

    Implementation of the WDL standard library functions to evaluate functions in expressions

    valueMapper

    Optional WdlValue => WdlValue function that is called on the result of each expression evaluation (i.e. evaluation of $${...} blocks).

    returns

    String instantiation of the command

  29. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  30. def locallyQualifiedName(relativeTo: Scope): String

    Similar to fullyQualifiedName but relatively to an ancestry scope.

    Similar to fullyQualifiedName but relatively to an ancestry scope. e.g. Workflow w Call a Output o

    o.locallyQualified(a) = "a.o" o.locallyQualified(w) = o.fullyQualifiedName = "w.a.o"

    Definition Classes
    Scope
  31. def lookupFunction(knownInputs: WorkflowCoercedInputs, wdlFunctions: WdlFunctions[WdlValue], outputResolver: OutputResolver = NoOutputResolver, shards: Map[Scatter, Int] = Map.empty[Scatter, Int], relativeTo: Scope = this): (String) ⇒ WdlValue

    This will return a lookup function for evaluating expressions which will traverse up the scope hierarchy to find a value for name.

    This will return a lookup function for evaluating expressions which will traverse up the scope hierarchy to find a value for name. An exception will be thrown if a value cannot be found for name

    knownInputs

    All known values of FQNs

    wdlFunctions

    Implementation of WDL functions for expression evaluation

    shards

    For resolving specific shards of scatter blocks

    returns

    String => WdlValue lookup function rooted at scope

    Definition Classes
    Scope
    Exceptions thrown

    VariableLookupException if anything else goes wrong in looking up a value for name

    VariableNotFoundException If no errors occurred, but also name didn't resolve to any value

  32. val meta: Map[String, String]
  33. val name: String
  34. def namespace: WdlNamespace

    Containing namespace

    Containing namespace

    Definition Classes
    Scope
  35. def namespace_=[Child <: WdlNamespace](ns: WdlNamespace): Unit
    Definition Classes
    Scope
  36. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  37. final def notify(): Unit
    Definition Classes
    AnyRef
  38. final def notifyAll(): Unit
    Definition Classes
    AnyRef
  39. lazy val outputs: Seq[TaskOutput]
    Definition Classes
    WdlTaskWdlCallable
  40. val parameterMeta: Map[String, String]
  41. def parent: Option[Scope]

    Parent scope

    Parent scope

    Definition Classes
    Scope
  42. def parent_=[Child <: Scope](scope: Scope): Unit
    Definition Classes
    Scope
  43. def resolveVariable(name: String, relativeTo: Scope = this): Option[WdlGraphNode]

    Performs scope resolution starting from this scope and walking up the lexical hierarchy until it finds a GraphNode with the name as its unqualifiedName

    Performs scope resolution starting from this scope and walking up the lexical hierarchy until it finds a GraphNode with the name as its unqualifiedName

    Definition Classes
    Scope
  44. val runtimeAttributes: RuntimeAttributes
  45. lazy val scatters: Set[Scatter]

    Descendants that are Scatters

    Descendants that are Scatters

    Definition Classes
    Scope
  46. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  47. lazy val taskCalls: Set[WdlTaskCall]
    Definition Classes
    Scope
  48. def toString(): String
    Definition Classes
    WdlTask → AnyRef → Any
  49. val unqualifiedName: LocallyQualifiedName
    Definition Classes
    WdlTaskScope
  50. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  51. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  52. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  53. lazy val womDefinition: TaskDefinition
    Definition Classes
    WdlTaskWdlCallable
  54. lazy val workflowCalls: Set[WdlWorkflowCall]
    Definition Classes
    Scope

Inherited from Serializable

Inherited from Serializable

Inherited from Product

Inherited from Equals

Inherited from WdlCallable

Inherited from Scope

Inherited from AnyRef

Inherited from Any

Ungrouped