Class RealizedStep
- All Implemented Interfaces:
AutoCloseable
A Step
that has been realized, such that it has produced valid output. A RealizedStep
is a linked
traversable DAG in itself, and so is a sort of realized Pipeline
whose outputs can be used.
-
Constructor Summary
ConstructorDescriptionRealizedStep
(String name, @NonNull Step implementation, StepDefinition ast, @NonNull ResultOrProblems<? extends Realized> result, @NonNull Map<String, List<?>> boundParameters, @NonNull List<RealizedStep> dependencies, @NonNull Struct produces) -
Method Summary
Modifier and TypeMethodDescriptionprotected boolean
void
close()
static RealizedStep
emptyInput
(String name, Struct type) boolean
getAst()
The part of the syntax tree that defined this stepThe complete set ofParameter
s that were used to realize this step.@NonNull List<RealizedStep>
The complete set ofRealizedStep
s that were used to realize this step@NonNull Step
TheStep
that produced a realized output that went in to thisRealizedStep
getName()
@NonNull Struct
getRealized
(Class<T> stepType) Returns the realized result of this step, cast to a given type.@NonNull ResultOrProblems<? extends Realized>
The output of the step.boolean
int
hashCode()
boolean
boolean
boolean
isFailed()
static RealizedStep
toString()
withDependencies
(List<RealizedStep> newDependencies) Clone this step, replacing the dependencieswithDependencies
(RealizedStep... newDependencies) Convenience version ofwithDependencies(List)
Clone this step, giving it a new namewithParameters
(Map<String, List<?>> newParams) Clone this step, replacing the parameters with the given oneswithProblems
(List<Problem> problems) Clones this RealizedStep with only given problems, marking it as failed if problem list has errorswithProblems
(Problem... problems) Convenience version ofwithProblems(List)
withResult
(Realized realized) Clone this step, replacing just the realized resultwithResult
(Realized realized, Struct newType) Clone this step, replacing the result and realized type
-
Constructor Details
-
RealizedStep
public RealizedStep(String name, @NonNull @NonNull Step implementation, StepDefinition ast, @NonNull @NonNull ResultOrProblems<? extends Realized> result, @NonNull @NonNull Map<String, List<?>> boundParameters, @NonNull @NonNull List<RealizedStep> dependencies, @NonNull @NonNull Struct produces)
-
-
Method Details
-
emptyInput
- Returns:
- a RealizedStep useful for testing scenarios where you want to test realization of some pipeline bits appended to something
-
named
- Returns:
- a RealizedStep with a name and nothing else
-
isFailed
public boolean isFailed()- Returns:
- true if this step or a dependency failed
-
isDirectlyFailed
public boolean isDirectlyFailed()- Returns:
- true if this step failed, but not if that failure was because of a dependency
-
hasDependencies
public boolean hasDependencies()- Returns:
- true if this step has any direct dependencies
-
hasNoDependencies
public boolean hasNoDependencies()- Returns:
- false if this step has any direct dependenices
-
getName
- Returns:
- the name assigned to this step, either explicitly in the AST, or a generated one based on the
StepNamingPolicy
-
getStepName
-
toString
-
getFailureProblem
- Returns:
- a composite problem for all errors associated with realizing this step, or empty if there were no errors
-
close
public void close()- Specified by:
close
in interfaceAutoCloseable
-
getStepType
-
getRealized
Returns the realized result of this step, cast to a given type. Mostly useful for internal workings where the step is assumed to be of a specific type, as it deals in
Optional
s, notResultOrProblems
- Parameters:
stepType
- The type of the result- Returns:
- The realized result, or
empty
if this step failed to realize, or if the step isn't of the given step type
-
getProblems
- Returns:
- a list of problems from the attempt to realize this step, or an empty list if it didn't have problems during realization
-
withProblems
Convenience version of
withProblems(List)
-
withProblems
Clones this RealizedStep with only given problems, marking it as failed if problem list has errors
-
withResult
Clone this step, replacing just the realized result
-
withResult
Clone this step, replacing the result and realized type
-
withName
Clone this step, giving it a new name
-
withDependencies
Convenience version of
withDependencies(List)
-
withDependencies
Clone this step, replacing the dependencies
-
withParameters
Clone this step, replacing the parameters with the given ones
-
getImplementation
The
Step
that produced a realized output that went in to thisRealizedStep
-
getAst
The part of the syntax tree that defined this step
-
getResult
The output of the step. TODO drop the
ResultOrProblems
? -
getBoundParameters
The complete set of
Parameter
s that were used to realize this step. -
getDependencies
The complete set of
RealizedStep
s that were used to realize this step -
getProduces
-
equals
-
canEqual
-
hashCode
public int hashCode()
-