pipeline.infrastructure.api¶
The API module defines the common classes around which the pipeline is structured.
A Task
represents a coherent step in the data reduction process. A Task may
be composed of several other Tasks in order to create a ‘super task’; this
‘super task’ could chains together several related steps in order to select
the best method to use for a particular step in the reduction process, for
example.
In addition, a Task
may be composed of one or more Heuristics. Within the
pipeline, a heuristic is considered as a piece of code used to analyse data
and/or help influence a pipeline decision, such as whether to stop processing,
whether to run again with different parameters, etc. Where appropriate, this
code is extracted from the main body of the pipeline code and exposed as a
Heuristic
.
Something about Task parameters goes here
If a user desires more than to simply override a Heuristic-derived value with
a Task parameter, it is anticipated that they will edit the appropriate
Heuristic in order to tweak the existing implementation or introduce a new
algorithm into the pipeline. Concrete Heuristic
implementations can be found
in the pipeline.heuristics
package.
Inputs
, in a general sense, are considered as the mandatory arguments for a
pipeline Task
. Tasks and Inputs are closely aligned, and just as Tasks
differ in functionality, so the number and type of Inputs
arguments will
differ from implementation to implementation. Refer to the documentation of
the implementing subclass for definitive information on the Inputs
for a
specific Task.
It is anticipated that the Inputs for a Task will be created using the
Task.Inputs
reference rather than locating and instantiating the
partner class directly, eg.:
i = ImplementingTask.Inputs.create_from_context(context)
Classes
Heuristic is the superclass of all user-accessible heuristics code in the pipeline. |
|
Class used to register Inputs classes that prefer to see post-mstransform data when available. |
|
|
Inputs defines the interface used to create a constructor argument for a |
ResultRenderer is the interface for task-specific weblog renderers (T2-4M details pages in weblog nomenclature). |
|
|
Results defines the interface used to hold the output of a |
|
The Runnable interface should be implemented by any class whose instances are intended to be executed by an Executor. |