@Override public void addComponentGenerators(List<Generator<?>> newComponents) { delegate.addComponentGenerators(newComponents); }
@SuppressWarnings("unchecked") @Override public <T> Generator<T> type(Class<T> type, Class<?>... componentTypes) { Generator<T> generator = (Generator<T>) produceGenerator(new ParameterTypeContext(type)); generator.addComponentGenerators( Arrays.stream(componentTypes).map(c -> type(c)).collect(toList())); return generator; }
@Override public final <T extends Generator<?>> T make( Class<T> genType, Generator<?>... components) { T generator = instantiate(genType); generator.provide(this); generator.configure(genType); generator.addComponentGenerators(asList(components)); return generator; }
private void applyComponentGenerators(Generator<?> generator, List<Generator<?>> componentGenerators) { if (generator.hasComponents()) { if (componentGenerators.isEmpty()) { List<Generator<?>> substitutes = new ArrayList<>(); Generator<?> zilch = generatorFor( new ParameterTypeContext( "Zilch", null, getClass().getName(), token(Zilch.class), emptyMap()) .allowMixedTypes(true)); for (int i = 0; i < generator.numberOfNeededComponents(); ++i) substitutes.add(zilch); generator.addComponentGenerators(substitutes); } else generator.addComponentGenerators(componentGenerators); } }
@Test public void addingComponentsDoesNothing() { generator.addComponentGenerators(Collections.<Generator<?>> emptyList()); } }
@Test public void addingComponentsDoesNothing() { generator.addComponentGenerators(Collections.<Generator<?>> emptyList()); }
@SuppressWarnings("unchecked") @Override public <T> Generator<T> type(Class<T> type, Class<?>... componentTypes) { Generator<T> generator = (Generator<T>) produceGenerator(new ParameterTypeContext(type)); generator.addComponentGenerators( Arrays.stream(componentTypes).map(c -> type(c)).collect(toList())); return generator; }
@Override public final <T extends Generator<?>> T make( Class<T> genType, Generator<?>... components) { T generator = instantiate(genType); generator.provide(this); generator.configure(genType); generator.addComponentGenerators(asList(components)); return generator; }
private void applyComponentGenerators(Generator<?> generator, List<Generator<?>> componentGenerators) { if (generator.hasComponents()) { if (componentGenerators.isEmpty()) { List<Generator<?>> substitutes = new ArrayList<>(); Generator<?> zilch = generatorFor( new ParameterTypeContext( "Zilch", null, getClass().getName(), token(Zilch.class), emptyMap()) .allowMixedTypes(true)); for (int i = 0; i < generator.numberOfNeededComponents(); ++i) substitutes.add(zilch); generator.addComponentGenerators(substitutes); } else generator.addComponentGenerators(componentGenerators); } }