MultiStepEvaluationFunction implements EvaluationFunction<T> { public static <T extends Serializable> Builder<T> builder() { return new Builder<>(); } private  MultiStepEvaluationFunction(
            List<StateConfig<T>> stateConfigs,
            Long overallTimeoutMs,
            ErrorExtractor<T> errorExtractor,
            EvaluationCompleteExtractor<T> stateCompleteExtractor); static Builder<T> builder(); @Override void eval(EvaluationContext context); @Override Set<String> getChannelIdentifiers();  }
@Test public void test_builder() { MultiStepEvaluationFunction.Builder<Serializable> builder = MultiStepEvaluationFunction.<Serializable>builder() .withErrorExtractor(new ErrorExtractor<Serializable>() { @Override public void process(Map<String, Serializable> events, Exception ex, EvaluationContext<Serializable> context) {} @Override public Set<String> getChannelIdentifiers() { return null; } }) .withEvaluationCompleteExtractor(new EvaluationCompleteExtractor<Serializable>() { @Override public void process(Map<String, Serializable> events, EvaluationContext<Serializable> context) {} @Override public Set<String> getChannelIdentifiers() { return null; } }) .withOverallTimeoutMs(0L) .addEvaluationFunction(new LambdaEvaluationFunction<>( ctx -> { }, () -> new HashSet<>(ImmutableList.of("string")) ),"" ).addEvaluationFunction(new LambdaEvaluationFunction<>( ctx -> { }, () -> new HashSet<>(ImmutableList.of("string")) ),"",0L ).addEvaluationFunctionFactory( CloneStateEvaluationFunctionFactory.<Serializable>builder() .withPrototype(new LambdaEvaluationFunction<Serializable>( ctx -> { }, () -> new HashSet<>(ImmutableSet.of("string")) )).build(), "" ).addEvaluationFunctionFactory( CloneStateEvaluationFunctionFactory.<Serializable>builder() .withPrototype(new LambdaEvaluationFunction<>( ctx -> { }, () -> new HashSet<>(Arrays.asList("string")) )).build(), "", 0L ) ; builder.build(); }