Interface PipelineRealizer
Methods for converting PipelineDeclarations in to RealizedPipelines
-
Method Summary
Modifier and TypeMethodDescriptionstatic voidpopulateUnboundFromExpression(RealizationContext context, Parameter parameter, String parameterNameOrAlias, AST value, Map<String, List<?>> parameters, Consumer<List<Problem>> problemConsumer) Common handling for populating an unbound parameter from an expression, with some specific handling for realizing expressions or binding expressions straight-to the parameterMapdefault RealizedPipelinerealize(RealizedPipeline addTo, PipelineDeclaration pipeline) Realizes a pipeline on top of another with no parameters.realize(RealizedPipeline addTo, PipelineDeclaration pipeline, Map<String, Expression> pipelineParameters) Incremental version of#realize(ExecutionContext, PipelineDeclaration, Map)that realizes a pipeline "on top" of another pipeline, e.g.default RealizedPipelinerealize(PipelineDeclaration pipeline) Realizes aPipelineDeclarationwith no parameters.realize(PipelineDeclaration pipeline, Map<String, Expression> pipelineParameters) Realizes aPipelineDeclarationin to aRealizedPipeline.
-
Method Details
-
populateUnboundFromExpression
static void populateUnboundFromExpression(RealizationContext context, Parameter parameter, String parameterNameOrAlias, AST value, Map<String, List<?>> parameters, Consumer<List<Problem>> problemConsumer) Common handling for populating an unbound parameter from an expression, with some specific handling for realizing expressions or binding expressions straight-to the parameterMap
- Parameters:
context- for realizing constantsparameter- the parameter to bindparameterNameOrAlias- the name or alias that was used to reference the parametervalue- the expression being boundparameters- map to populateproblemConsumer- where to put errors with realizing constants
-
realize
Realizes a
PipelineDeclarationin to aRealizedPipeline. A realized pipeline is effectively 'compiled' at this point to the extent that we know the various functions exist and that it is type safe. It can now be handed over to aPipelineExecutorfor execution.- Parameters:
pipeline- the pipeline declaration (may contain parameter tokens)pipelineParameters- map of parameter names to expressions to use during expression realization.
-
realize
Realizes a
PipelineDeclarationwith no parameters. -
realize
RealizedPipeline realize(RealizedPipeline addTo, PipelineDeclaration pipeline, Map<String, Expression> pipelineParameters) Incremental version of
#realize(ExecutionContext, PipelineDeclaration, Map)that realizes a pipeline "on top" of another pipeline, e.g. new steps should be added in on top of the existing pipeline.This method is here to support
Steps that want to realize some kind of sub pipeline that gets executed as part of the parent.- Parameters:
addTo- the pipeline to add steps topipeline- the pipeline declaration (may contain parameter tokens)pipelineParameters- map of parameter names to expressions to substitute
-
realize
Realizes a pipeline on top of another with no parameters.
-