public ModuleListBuilder include(Iterable<Class<? extends Module>> modules) { for (Class<? extends Module> module : modules) { include (module); } return this; }
@Override public LifecycleInjectorBuilder withModuleClass(Class<? extends Module> module) { if (module != null) { this.modules.include(module); } return this; }
@Override public LifecycleInjectorBuilder withModuleClasses(Iterable<Class<? extends Module>> modules) { if (modules != null) { this.modules.include(modules); } return this; }
@Override public LifecycleInjectorBuilder withAdditionalModuleClasses(Iterable<Class<? extends Module>> modules) { this.modules.include(modules); return this; }
public ModuleListBuilder includeModules(Iterable<? extends Module> modules) { for (Module module : modules) { include (module); } return this; }
public ModuleListBuilder include(final Class<? extends Module> m) { include(m, true); return this; }
public void include(Class<? extends Module> module) { this.modules.include(module); }
public void include(Collection<Class<? extends Module>> modules) { this.modules.include(modules); }
public void include(Module module) { this.modules.include(module); }
public void include(Class<? extends Module> ... modules) { this.modules.include(Lists.newArrayList(modules)); }
@Override public LifecycleInjectorBuilder withModuleClasses(Class<?> ... modules) { this.modules.include(ImmutableList.<Class<? extends Module>>copyOf( Iterables.transform(Lists.newArrayList(modules), new Function<Class<?>, Class<? extends Module>>() { @SuppressWarnings("unchecked") @Override public Class<? extends Module> apply(Class<?> input) { return (Class<? extends Module>) input; } } ))); return this; }
@Override public LifecycleInjectorBuilder withAdditionalModuleClasses(Class<?> ... modules) { this.modules.include(ImmutableList.<Class<? extends Module>>builder() .addAll(Iterables.transform(Lists.newArrayList(modules), new Function<Class<?>, Class<? extends Module>>() { @SuppressWarnings("unchecked") @Override public Class<? extends Module> apply(Class<?> input) { return (Class<? extends Module>) input; } })) .build()); return this; }
private void include(final Class<? extends Module> m, boolean addToProviders) { ModuleProvider provider = new ModuleProvider(m); if (!m.getClass().isAnonymousClass()) { // Do nothing if already exists if (includes.containsKey(m.getClass())) { return; } includes.put(m, provider); // Get all @Modules and injected dependencies of this module for (Class<? extends Module> dep : provider.getIncludeList()) { // Circular dependencies will be caught by includes.containsKey() above include(dep, false); } for (Class<? extends Module> dep : provider.getExcludeList()) { exclude(dep); } } // Add to list of known modules. We do this after all dependencies // have been added if (addToProviders) { providers.add(provider); } }
public ModuleListBuilder include(final Module m) { ModuleProvider provider = new ModuleProvider(m); if (!m.getClass().isAnonymousClass()) { // Do nothing if already exists if (includes.containsKey(m.getClass())) { return this; } includes.put(m.getClass(), provider); // Get all @Modules and injected dependencies of this module for (Class<? extends Module> dep : provider.getIncludeList()) { // Circular dependencies will be caught by includes.containsKey() above include(dep, false); } for (Class<? extends Module> dep : provider.getExcludeList()) { exclude(dep); } } // Add to list of known modules. We do this after all dependencies // have been added providers.add(provider); return this; }