Deps
Marks the nested class that declares this Dag's task graph.
Declare it as a static nested class that implements the generated <Dag>Deps wiring view and has a no-argument depends() method. Calling a view method registers its task; passing the handle one returned into another call wires a data edge; before and after wire an ordering-only one:
@Airflow.Deps
static class Wiring implements EtlPipelineDeps {
void depends() {
var rows = extract();
var loaded = load(transform(rows, lit(0.9)));
rows.before(audit());
report().after(loaded, audit());
}
}Content copied to clipboard
Every Dag class declares one, because the graph is what the Dag owns. A class that supplies only task bodies, for a Dag a Python file declares, carries TaskHandler instead.