ExecutionTwoParamBuilderImpl extends AbstractExecutionBuilder<T> implements ExecutionTwoParamBuilder<T, P0, P1> { @Override public ExecutionBuilder<T> withExecute(TriConsumer<T, P0, P1> executeAction) { this.executeAction = requireNonNull(executeAction); return this; } ExecutionTwoParamBuilderImpl(
            Class<T> component, State state,
            Class<P0> param0, State state0,
            Class<P1> param1, State state1); @Override ExecutionThreeParamBuilder<T, P0, P1, P2> withState(
            State state2, Class<P2> param2); @Override ExecutionBuilder<T> withExecute(TriConsumer<T, P0, P1> executeAction); @Override Execution<T> build(DependencyGraph graph);  }
@Test void withExecute() { final AtomicInteger cnt = new AtomicInteger(); final ExecutionBuilder<Integer> b = builder.withExecute((i, s, l) -> cnt.set(i + s.length() + l.intValue())); assertNotNull(b); }