Class Dag

  • All Implemented Interfaces:

    
    public final class Dag
    
                        

    A collection of tasks with directional dependencies.

    Create a Dag directly and register tasks with addTask.

    The Builder.Dag annotation should generally be preferred in user code, where the annotation processor generates the wiring for you. Only use this class directly if you need to do low-level plumbing.

    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private final String id
    • Constructor Summary

      Constructors 
      Constructor Description
      Dag(String id)
    • Enum Constant Summary

      Enum Constants 
      Enum Constant Description
    • Method Summary

      Modifier and Type Method Description
      final String getId()
      final Dag addTask(String id, Class<out Task> definition) Registers a task with this Dag.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • Dag

        Dag(String id)
        Parameters:
        id - Dag identifier.
    • Method Detail

      • addTask

         final Dag addTask(String id, Class<out Task> definition)

        Registers a task with this Dag.

        The class must have a public no-argument constructor and implement Task. Task IDs must be unique within a Dag.

        Parameters:
        id - Task identifier, unique within this Dag.
        definition - Class that implements Task.
        Returns:

        This Dag, for chaining.