This is an automated email from the ASF dual-hosted git repository. danhaywood pushed a commit to branch maint-1.16.2 in repository https://gitbox.apache.org/repos/asf/isis.git
commit b9e600241d82b03795ee6cb4730b5faac21d3cea Author: Dan Haywood <d...@haywood-associates.co.uk> AuthorDate: Sat Feb 24 12:55:03 2018 +0000 ISIS-1872: moves withAdditionalDependency/ies from AppManifestAbstract2.Builder up to ModuleOrBuilderAbstract ... so that is inherited by ModuleAbstract also. --- .../apache/isis/applib/AppManifestAbstract2.java | 31 -------------------- .../isis/applib/ModuleOrBuilderAbstract.java | 34 ++++++++++++++++++++++ 2 files changed, 34 insertions(+), 31 deletions(-) diff --git a/core/applib/src/main/java/org/apache/isis/applib/AppManifestAbstract2.java b/core/applib/src/main/java/org/apache/isis/applib/AppManifestAbstract2.java index f42ff25..297de2b 100644 --- a/core/applib/src/main/java/org/apache/isis/applib/AppManifestAbstract2.java +++ b/core/applib/src/main/java/org/apache/isis/applib/AppManifestAbstract2.java @@ -18,10 +18,8 @@ */ package org.apache.isis.applib; -import java.util.ArrayList; import java.util.Collections; import java.util.List; -import java.util.Set; import org.apache.isis.applib.annotation.Programmatic; import org.apache.isis.applib.fixturescripts.FixtureScript; @@ -105,35 +103,6 @@ public abstract class AppManifestAbstract2 extends AppManifestAbstract implement return module; } - public Builder withAdditionalDependency(final Module dependency) { - withTransitiveFrom(dependency); - return this; - } - - public Builder withAdditionalDependencies(final Set<Module> dependencies) { - for (final Module dependency : dependencies) { - withAdditionalDependency(dependency); - } - return this; - } - - private void withTransitiveFrom(final Module module) { - withAdditionalModules(asClasses(Module.Util.transitiveDependenciesOf(module))); - withAdditionalModules(Module.Util.transitiveAdditionalModulesOf(module)); - withAdditionalServices(Module.Util.transitiveAdditionalServicesOf(module)); - withConfigurationPropertyResources(Module.Util.transitivePropertyResourcesOf(module)); - withConfigurationProperties(Module.Util.transitiveIndividualConfigPropsOf(module)); - } - - private static Class[] asClasses(final List<Module> dependencies) { - final List<Class<? extends Module>> list = new ArrayList<>(); - for (Module dependency : dependencies) { - Class<? extends Module> aClass = dependency.getClass(); - list.add(aClass); - } - return list.toArray(new Class[] {}); - } - @Override public AppManifest2 build() { return new Default(this); diff --git a/core/applib/src/main/java/org/apache/isis/applib/ModuleOrBuilderAbstract.java b/core/applib/src/main/java/org/apache/isis/applib/ModuleOrBuilderAbstract.java index e138f06..2f9f474 100644 --- a/core/applib/src/main/java/org/apache/isis/applib/ModuleOrBuilderAbstract.java +++ b/core/applib/src/main/java/org/apache/isis/applib/ModuleOrBuilderAbstract.java @@ -18,6 +18,7 @@ */ package org.apache.isis.applib; +import java.util.ArrayList; import java.util.Arrays; import java.util.List; import java.util.Map; @@ -44,6 +45,39 @@ abstract class ModuleOrBuilderAbstract<B extends ModuleOrBuilderAbstract> { ModuleOrBuilderAbstract() {} + public B withAdditionalDependency(final Module dependency) { + withTransitiveFrom(dependency); + return (B) this; + } + + public B withAdditionalDependencies(final Set<Module> dependencies) { + for (final Module dependency : dependencies) { + withAdditionalDependency(dependency); + } + return (B) this; + } + + public B withAdditionalDependencies(final Module... dependencies) { + return withAdditionalDependencies(Sets.newHashSet(dependencies)); + } + + void withTransitiveFrom(final Module module) { + withAdditionalModules(asClasses(Module.Util.transitiveDependenciesOf(module))); + withAdditionalModules(Module.Util.transitiveAdditionalModulesOf(module)); + withAdditionalServices(Module.Util.transitiveAdditionalServicesOf(module)); + withConfigurationPropertyResources(Module.Util.transitivePropertyResourcesOf(module)); + withConfigurationProperties(Module.Util.transitiveIndividualConfigPropsOf(module)); + } + + private static Class[] asClasses(final List<Module> dependencies) { + final List<Class<? extends Module>> list = new ArrayList<>(); + for (Module dependency : dependencies) { + Class<? extends Module> aClass = dependency.getClass(); + list.add(aClass); + } + return list.toArray(new Class[] {}); + } + public B withAdditionalModules(final Class<?>... modules) { return withAdditionalModules(Arrays.asList(modules)); } -- To stop receiving notification emails like this one, please contact danhayw...@apache.org.