public BasicConditionContext(WorkflowContext context, PipelineRuntime pipelineRuntime, StageSpec stageSpec) { super(pipelineRuntime, stageSpec); this.context = context; this.stageStatistics = ImmutableMap.copyOf(createStageStatistics(context)); }
@Override protected void configure() { setName(phaseSpec.getPhaseName()); setDescription("Condition phase executor. " + phaseSpec.getPhaseName()); // add source, sink, transform ids to the properties. These are needed at runtime to instantiate the plugins Map<String, String> properties = new HashMap<>(); properties.put(Constants.PIPELINEID, GSON.toJson(phaseSpec)); setProperties(properties); }
statistics = new BasicStageStatistics(0, 0, 0); stageStatistics.put(stageName, statistics); numOfErrorRecords = value; stageStatistics.put(stageName, new BasicStageStatistics(numOfInputRecords, numOfOutputRecords, numOfErrorRecords));
} else if (pluginTypes.contains(Condition.PLUGIN_TYPE)) { programAdder = programAdder.condition(new PipelineCondition(batchPhaseSpec)); } else if (pluginTypes.contains(Constants.SPARK_PROGRAM_PLUGIN_TYPE)) {
Condition condition = pluginContext.newPluginInstance(stageSpec.getName(), macroEvaluator); PipelineRuntime pipelineRuntime = new PipelineRuntime(input, metrics); ConditionContext conditionContext = new BasicConditionContext(input, pipelineRuntime, stageSpec); boolean result = condition.apply(conditionContext); WorkflowToken token = input.getToken();