From a40b1f436d9c0c93018e060ecdab905059123db0 Mon Sep 17 00:00:00 2001 From: babel88 Date: Wed, 11 Oct 2017 08:11:01 +0300 Subject: [PATCH 01/11] removed injectFields map as its used in only one method --- .project | 17 ++ .settings/org.eclipse.core.resources.prefs | 2 + .settings/org.eclipse.m2e.core.prefs | 4 + feather/.classpath | 26 ++ feather/.project | 23 ++ .../org.eclipse.core.resources.prefs | 4 + feather/.settings/org.eclipse.jdt.core.prefs | 5 + feather/.settings/org.eclipse.m2e.core.prefs | 4 + .../java/org/codejargon/feather/Feather.java | 122 +++++++- .../codejargon/feather/FeatherException.java | 7 +- .../java/org/codejargon/feather/Provides.java | 6 +- feather/target/classes/META-INF/MANIFEST.MF | 5 + .../feather/pom.properties | 7 + .../org.codejargon.feather/feather/pom.xml | 19 ++ .../org/codejargon/feather/Feather$1.class | Bin 0 -> 647 bytes .../org/codejargon/feather/Feather$2.class | Bin 0 -> 1619 bytes .../org/codejargon/feather/Feather$3.class | Bin 0 -> 1686 bytes .../org/codejargon/feather/Feather$4.class | Bin 0 -> 1479 bytes .../org/codejargon/feather/Feather$5.class | Bin 0 -> 1107 bytes .../org/codejargon/feather/Feather$6.class | Bin 0 -> 1018 bytes .../org/codejargon/feather/Feather.class | Bin 0 -> 14157 bytes .../codejargon/feather/FeatherException.class | Bin 0 -> 631 bytes .../classes/org/codejargon/feather/Key.class | Bin 0 -> 3499 bytes .../org/codejargon/feather/Provides.class | Bin 0 -> 392 bytes .../feather/AmbiguousModuleTest$Module.class | Bin 0 -> 677 bytes .../feather/AmbiguousModuleTest.class | Bin 0 -> 753 bytes .../CircularDependencyTest$Circle1.class | Bin 0 -> 756 bytes .../CircularDependencyTest$Circle2.class | Bin 0 -> 756 bytes ...arDependencyTest$CircleWithProvider1.class | Bin 0 -> 1053 bytes ...arDependencyTest$CircleWithProvider2.class | Bin 0 -> 1185 bytes .../feather/CircularDependencyTest.class | Bin 0 -> 1824 bytes .../feather/DependencyTest$Plain.class | Bin 0 -> 407 bytes .../feather/DependencyTest$Unknown.class | Bin 0 -> 496 bytes .../codejargon/feather/DependencyTest.class | Bin 0 -> 1516 bytes .../feather/FieldInjectionTest$A.class | Bin 0 -> 411 bytes .../feather/FieldInjectionTest$Target.class | Bin 0 -> 783 bytes .../feather/FieldInjectionTest.class | Bin 0 -> 1116 bytes .../ModuleOverrideTest$FooModule.class | Bin 0 -> 602 bytes ...ModuleOverrideTest$FooOverrideModule.class | Bin 0 -> 687 bytes .../feather/ModuleOverrideTest$Plain.class | Bin 0 -> 423 bytes .../ModuleOverrideTest$PlainStub.class | Bin 0 -> 482 bytes ...OverrideTest$PlainStubOverrideModule.class | Bin 0 -> 950 bytes .../feather/ModuleOverrideTest.class | Bin 0 -> 1531 bytes ...NamedDependencyTest$HelloWorldModule.class | Bin 0 -> 772 bytes .../feather/NamedDependencyTest.class | Bin 0 -> 1154 bytes ...PojoProvidedThroughModuleTest$Module.class | Bin 0 -> 804 bytes .../PojoProvidedThroughModuleTest$Pojo.class | Bin 0 -> 556 bytes .../PojoProvidedThroughModuleTest.class | Bin 0 -> 1189 bytes .../PolymorphicDependencyTest$Foo.class | Bin 0 -> 249 bytes .../PolymorphicDependencyTest$FooA.class | Bin 0 -> 590 bytes .../PolymorphicDependencyTest$FooB.class | Bin 0 -> 590 bytes .../PolymorphicDependencyTest$Module.class | Bin 0 -> 1317 bytes .../feather/PolymorphicDependencyTest.class | Bin 0 -> 1385 bytes .../feather/ProviderInjectionTest$A.class | Bin 0 -> 1027 bytes .../feather/ProviderInjectionTest$B.class | Bin 0 -> 423 bytes .../feather/ProviderInjectionTest.class | Bin 0 -> 1116 bytes .../feather/QualifiedDependencyTest$A.class | Bin 0 -> 450 bytes .../feather/QualifiedDependencyTest$B.class | Bin 0 -> 450 bytes .../QualifiedDependencyTest$Dummy.class | Bin 0 -> 1079 bytes ...ualifiedDependencyTest$DummyTestUnit.class | Bin 0 -> 984 bytes .../feather/QualifiedDependencyTest$Foo.class | Bin 0 -> 243 bytes .../QualifiedDependencyTest$FooA.class | Bin 0 -> 512 bytes .../QualifiedDependencyTest$FooB.class | Bin 0 -> 512 bytes .../QualifiedDependencyTest$Module.class | Bin 0 -> 1484 bytes .../feather/QualifiedDependencyTest.class | Bin 0 -> 2476 bytes .../feather/SingletonTest$Plain.class | Bin 0 -> 403 bytes .../feather/SingletonTest$SingletonObj.class | Bin 0 -> 491 bytes .../codejargon/feather/SingletonTest.class | Bin 0 -> 1539 bytes .../feather/TransitiveDependencyTest$A.class | Bin 0 -> 891 bytes .../feather/TransitiveDependencyTest$B.class | Bin 0 -> 891 bytes .../feather/TransitiveDependencyTest$C.class | Bin 0 -> 435 bytes .../feather/TransitiveDependencyTest.class | Bin 0 -> 1346 bytes performance-test/.classpath | 31 ++ performance-test/.project | 34 +++ .../org.eclipse.core.resources.prefs | 4 + .../.settings/org.eclipse.jdt.core.prefs | 5 + .../.settings/org.eclipse.m2e.core.prefs | 4 + .../target/classes/META-INF/MANIFEST.MF | 5 + .../feather-perftest/pom.properties | 7 + .../feather-perftest/pom.xml | 70 +++++ .../target/test-classes/log4j.xml | 20 ++ .../org/codejargon/feather/A.class | Bin 0 -> 579 bytes .../org/codejargon/feather/B.class | Bin 0 -> 579 bytes .../org/codejargon/feather/C.class | Bin 0 -> 681 bytes .../org/codejargon/feather/D1.class | Bin 0 -> 555 bytes .../org/codejargon/feather/D2.class | Bin 0 -> 582 bytes .../org/codejargon/feather/E.class | Bin 0 -> 437 bytes .../StartupComparisonTest$DaggerModule.class | Bin 0 -> 727 bytes .../feather/StartupComparisonTest.class | Bin 0 -> 4674 bytes .../org/codejargon/feather/StopWatch.class | Bin 0 -> 980 bytes pom.xml | 286 +++++++++--------- 91 files changed, 560 insertions(+), 157 deletions(-) create mode 100644 .project create mode 100644 .settings/org.eclipse.core.resources.prefs create mode 100644 .settings/org.eclipse.m2e.core.prefs create mode 100644 feather/.classpath create mode 100644 feather/.project create mode 100644 feather/.settings/org.eclipse.core.resources.prefs create mode 100644 feather/.settings/org.eclipse.jdt.core.prefs create mode 100644 feather/.settings/org.eclipse.m2e.core.prefs create mode 100644 feather/target/classes/META-INF/MANIFEST.MF create mode 100644 feather/target/classes/META-INF/maven/org.codejargon.feather/feather/pom.properties create mode 100644 feather/target/classes/META-INF/maven/org.codejargon.feather/feather/pom.xml create mode 100644 feather/target/classes/org/codejargon/feather/Feather$1.class create mode 100644 feather/target/classes/org/codejargon/feather/Feather$2.class create mode 100644 feather/target/classes/org/codejargon/feather/Feather$3.class create mode 100644 feather/target/classes/org/codejargon/feather/Feather$4.class create mode 100644 feather/target/classes/org/codejargon/feather/Feather$5.class create mode 100644 feather/target/classes/org/codejargon/feather/Feather$6.class create mode 100644 feather/target/classes/org/codejargon/feather/Feather.class create mode 100644 feather/target/classes/org/codejargon/feather/FeatherException.class create mode 100644 feather/target/classes/org/codejargon/feather/Key.class create mode 100644 feather/target/classes/org/codejargon/feather/Provides.class create mode 100644 feather/target/test-classes/org/codejargon/feather/AmbiguousModuleTest$Module.class create mode 100644 feather/target/test-classes/org/codejargon/feather/AmbiguousModuleTest.class create mode 100644 feather/target/test-classes/org/codejargon/feather/CircularDependencyTest$Circle1.class create mode 100644 feather/target/test-classes/org/codejargon/feather/CircularDependencyTest$Circle2.class create mode 100644 feather/target/test-classes/org/codejargon/feather/CircularDependencyTest$CircleWithProvider1.class create mode 100644 feather/target/test-classes/org/codejargon/feather/CircularDependencyTest$CircleWithProvider2.class create mode 100644 feather/target/test-classes/org/codejargon/feather/CircularDependencyTest.class create mode 100644 feather/target/test-classes/org/codejargon/feather/DependencyTest$Plain.class create mode 100644 feather/target/test-classes/org/codejargon/feather/DependencyTest$Unknown.class create mode 100644 feather/target/test-classes/org/codejargon/feather/DependencyTest.class create mode 100644 feather/target/test-classes/org/codejargon/feather/FieldInjectionTest$A.class create mode 100644 feather/target/test-classes/org/codejargon/feather/FieldInjectionTest$Target.class create mode 100644 feather/target/test-classes/org/codejargon/feather/FieldInjectionTest.class create mode 100644 feather/target/test-classes/org/codejargon/feather/ModuleOverrideTest$FooModule.class create mode 100644 feather/target/test-classes/org/codejargon/feather/ModuleOverrideTest$FooOverrideModule.class create mode 100644 feather/target/test-classes/org/codejargon/feather/ModuleOverrideTest$Plain.class create mode 100644 feather/target/test-classes/org/codejargon/feather/ModuleOverrideTest$PlainStub.class create mode 100644 feather/target/test-classes/org/codejargon/feather/ModuleOverrideTest$PlainStubOverrideModule.class create mode 100644 feather/target/test-classes/org/codejargon/feather/ModuleOverrideTest.class create mode 100644 feather/target/test-classes/org/codejargon/feather/NamedDependencyTest$HelloWorldModule.class create mode 100644 feather/target/test-classes/org/codejargon/feather/NamedDependencyTest.class create mode 100644 feather/target/test-classes/org/codejargon/feather/PojoProvidedThroughModuleTest$Module.class create mode 100644 feather/target/test-classes/org/codejargon/feather/PojoProvidedThroughModuleTest$Pojo.class create mode 100644 feather/target/test-classes/org/codejargon/feather/PojoProvidedThroughModuleTest.class create mode 100644 feather/target/test-classes/org/codejargon/feather/PolymorphicDependencyTest$Foo.class create mode 100644 feather/target/test-classes/org/codejargon/feather/PolymorphicDependencyTest$FooA.class create mode 100644 feather/target/test-classes/org/codejargon/feather/PolymorphicDependencyTest$FooB.class create mode 100644 feather/target/test-classes/org/codejargon/feather/PolymorphicDependencyTest$Module.class create mode 100644 feather/target/test-classes/org/codejargon/feather/PolymorphicDependencyTest.class create mode 100644 feather/target/test-classes/org/codejargon/feather/ProviderInjectionTest$A.class create mode 100644 feather/target/test-classes/org/codejargon/feather/ProviderInjectionTest$B.class create mode 100644 feather/target/test-classes/org/codejargon/feather/ProviderInjectionTest.class create mode 100644 feather/target/test-classes/org/codejargon/feather/QualifiedDependencyTest$A.class create mode 100644 feather/target/test-classes/org/codejargon/feather/QualifiedDependencyTest$B.class create mode 100644 feather/target/test-classes/org/codejargon/feather/QualifiedDependencyTest$Dummy.class create mode 100644 feather/target/test-classes/org/codejargon/feather/QualifiedDependencyTest$DummyTestUnit.class create mode 100644 feather/target/test-classes/org/codejargon/feather/QualifiedDependencyTest$Foo.class create mode 100644 feather/target/test-classes/org/codejargon/feather/QualifiedDependencyTest$FooA.class create mode 100644 feather/target/test-classes/org/codejargon/feather/QualifiedDependencyTest$FooB.class create mode 100644 feather/target/test-classes/org/codejargon/feather/QualifiedDependencyTest$Module.class create mode 100644 feather/target/test-classes/org/codejargon/feather/QualifiedDependencyTest.class create mode 100644 feather/target/test-classes/org/codejargon/feather/SingletonTest$Plain.class create mode 100644 feather/target/test-classes/org/codejargon/feather/SingletonTest$SingletonObj.class create mode 100644 feather/target/test-classes/org/codejargon/feather/SingletonTest.class create mode 100644 feather/target/test-classes/org/codejargon/feather/TransitiveDependencyTest$A.class create mode 100644 feather/target/test-classes/org/codejargon/feather/TransitiveDependencyTest$B.class create mode 100644 feather/target/test-classes/org/codejargon/feather/TransitiveDependencyTest$C.class create mode 100644 feather/target/test-classes/org/codejargon/feather/TransitiveDependencyTest.class create mode 100644 performance-test/.classpath create mode 100644 performance-test/.project create mode 100644 performance-test/.settings/org.eclipse.core.resources.prefs create mode 100644 performance-test/.settings/org.eclipse.jdt.core.prefs create mode 100644 performance-test/.settings/org.eclipse.m2e.core.prefs create mode 100644 performance-test/target/classes/META-INF/MANIFEST.MF create mode 100644 performance-test/target/classes/META-INF/maven/org.codejargon.feather/feather-perftest/pom.properties create mode 100644 performance-test/target/classes/META-INF/maven/org.codejargon.feather/feather-perftest/pom.xml create mode 100644 performance-test/target/test-classes/log4j.xml create mode 100644 performance-test/target/test-classes/org/codejargon/feather/A.class create mode 100644 performance-test/target/test-classes/org/codejargon/feather/B.class create mode 100644 performance-test/target/test-classes/org/codejargon/feather/C.class create mode 100644 performance-test/target/test-classes/org/codejargon/feather/D1.class create mode 100644 performance-test/target/test-classes/org/codejargon/feather/D2.class create mode 100644 performance-test/target/test-classes/org/codejargon/feather/E.class create mode 100644 performance-test/target/test-classes/org/codejargon/feather/StartupComparisonTest$DaggerModule.class create mode 100644 performance-test/target/test-classes/org/codejargon/feather/StartupComparisonTest.class create mode 100644 performance-test/target/test-classes/org/codejargon/feather/StopWatch.class diff --git a/.project b/.project new file mode 100644 index 0000000..ae31195 --- /dev/null +++ b/.project @@ -0,0 +1,17 @@ + + + feather-parent + + + + + + org.eclipse.m2e.core.maven2Builder + + + + + + org.eclipse.m2e.core.maven2Nature + + diff --git a/.settings/org.eclipse.core.resources.prefs b/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 0000000..99f26c0 --- /dev/null +++ b/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +encoding/=UTF-8 diff --git a/.settings/org.eclipse.m2e.core.prefs b/.settings/org.eclipse.m2e.core.prefs new file mode 100644 index 0000000..f897a7f --- /dev/null +++ b/.settings/org.eclipse.m2e.core.prefs @@ -0,0 +1,4 @@ +activeProfiles= +eclipse.preferences.version=1 +resolveWorkspaceProjects=true +version=1 diff --git a/feather/.classpath b/feather/.classpath new file mode 100644 index 0000000..f619a53 --- /dev/null +++ b/feather/.classpath @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/feather/.project b/feather/.project new file mode 100644 index 0000000..bd9f541 --- /dev/null +++ b/feather/.project @@ -0,0 +1,23 @@ + + + feather + + + + + + org.eclipse.jdt.core.javabuilder + + + + + org.eclipse.m2e.core.maven2Builder + + + + + + org.eclipse.jdt.core.javanature + org.eclipse.m2e.core.maven2Nature + + diff --git a/feather/.settings/org.eclipse.core.resources.prefs b/feather/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 0000000..f9fe345 --- /dev/null +++ b/feather/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,4 @@ +eclipse.preferences.version=1 +encoding//src/main/java=UTF-8 +encoding//src/test/java=UTF-8 +encoding/=UTF-8 diff --git a/feather/.settings/org.eclipse.jdt.core.prefs b/feather/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 0000000..ec4300d --- /dev/null +++ b/feather/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,5 @@ +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7 +org.eclipse.jdt.core.compiler.compliance=1.7 +org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning +org.eclipse.jdt.core.compiler.source=1.7 diff --git a/feather/.settings/org.eclipse.m2e.core.prefs b/feather/.settings/org.eclipse.m2e.core.prefs new file mode 100644 index 0000000..f897a7f --- /dev/null +++ b/feather/.settings/org.eclipse.m2e.core.prefs @@ -0,0 +1,4 @@ +activeProfiles= +eclipse.preferences.version=1 +resolveWorkspaceProjects=true +version=1 diff --git a/feather/src/main/java/org/codejargon/feather/Feather.java b/feather/src/main/java/org/codejargon/feather/Feather.java index d024f2d..a0169e9 100644 --- a/feather/src/main/java/org/codejargon/feather/Feather.java +++ b/feather/src/main/java/org/codejargon/feather/Feather.java @@ -1,18 +1,38 @@ package org.codejargon.feather; -import javax.inject.*; +import javax.inject.Provider; +import javax.inject.Singleton; +import javax.inject.Inject; +import javax.inject.Qualifier; import java.lang.annotation.Annotation; +import java.lang.reflect.Method; +import java.lang.reflect.Constructor; +import java.lang.reflect.Field; import java.lang.reflect.*; -import java.util.*; +import java.util.Arrays; +import java.util.Collections; +import java.util.HashSet; +import java.util.LinkedHashSet; +import java.util.Map; +import java.util.Set; import java.util.concurrent.ConcurrentHashMap; +/** + * + * @author edwin.njeru + * + */ public class Feather { private final Map> providers = new ConcurrentHashMap<>(); private final Map singletons = new ConcurrentHashMap<>(); - private final Map injectFields = new ConcurrentHashMap<>(0); + //private final Map injectFields = new ConcurrentHashMap<>(0); /** * Constructs Feather with configuration modules + * + * @param varargs of modules classes + * + * @return an instance of Feather */ public static Feather with(Object... modules) { return new Feather(Arrays.asList(modules)); @@ -20,6 +40,9 @@ public static Feather with(Object... modules) { /** * Constructs Feather with configuration modules + * + * @param An {@code Iterable} collection of configuration modules + * @return */ public static Feather with(Iterable modules) { return new Feather(modules); @@ -73,12 +96,15 @@ public Provider provider(Key key) { /** * Injects fields to the target object + * + * @param target Object */ public void injectFields(Object target) { - if (!injectFields.containsKey(target.getClass())) { + /*if (!injectFields.containsKey(target.getClass())) { injectFields.put(target.getClass(), injectFields(target.getClass())); - } - for (Object[] f: injectFields.get(target.getClass())) { + }*/ + //for (Object[] f: injectFields.get(target.getClass())) { + for (Object[] f: injectFields(target.getClass())) { Field field = (Field) f[0]; Key key = (Key) f[2]; try { @@ -89,10 +115,11 @@ public void injectFields(Object target) { } } - @SuppressWarnings("unchecked") + @SuppressWarnings({ "unchecked", "rawtypes" }) private Provider provider(final Key key, Set chain) { if (!providers.containsKey(key)) { - final Constructor constructor = constructor(key); + @SuppressWarnings("rawtypes") + final Constructor constructor = constructor(key); final Provider[] paramProviders = paramProviders(key, constructor.getParameterTypes(), constructor.getGenericParameterTypes(), constructor.getParameterAnnotations(), chain); providers.put(key, singletonProvider(key, key.type.getAnnotation(Singleton.class), new Provider() { @Override @@ -109,7 +136,8 @@ public Object get() { return (Provider) providers.get(key); } - private void providerMethod(final Object module, final Method m) { + @SuppressWarnings("unchecked") + private void providerMethod(final Object module, final Method m) { final Key key = Key.of(m.getReturnType(), qualifier(m.getAnnotations())); if (providers.containsKey(key)) { throw new FeatherException(String.format("%s has multiple providers, module %s", key.toString(), module.getClass())); @@ -192,6 +220,10 @@ public Object get() { return providers; } + /** + * @return an array of fully-constructed and injected instances fetched from an + * array of @param paramProviders, which are then used as parameters + */ private static Object[] params(Provider[] paramProviders) { Object[] params = new Object[paramProviders.length]; for (int i = 0; i < paramProviders.length; ++i) { @@ -200,7 +232,16 @@ private static Object[] params(Provider[] paramProviders) { return params; } - private static Set append(Set set, Key newKey) { + /** + * Appends a @{code Key} @param newKey to an existing {@code Set} @param set of + * keys, and returns a {@code Set} of key containing the new {@code Key}. + * If the {@code Set} of {@code Key} is null, a serializable immutable set containing only + * the @param newKey is returned + * + * @return Set append {@code Key} {@code Set} + */ + @SuppressWarnings("rawtypes") + private static Set append(Set set, Key newKey) { if (set != null && !set.isEmpty()) { Set appended = new LinkedHashSet<>(set); appended.add(newKey); @@ -210,6 +251,14 @@ private static Set append(Set set, Key newKey) { } } + /** + * Creates a map represented as a two-dimensional array of {@code Inject} annotated + * fields with their corresponding {@code Provider} types, or Parameterised types or + * type arguments. + * + * @param Class target + * @return two-dimensional Object[][] array + */ private static Object[][] injectFields(Class target) { Set fields = fields(target); Object[][] fs = new Object[fields.size()][]; @@ -227,6 +276,13 @@ private static Object[][] injectFields(Class target) { return fs; } + /** + * Returns accessible set of fields ({@code Field}) in a given class type + * which are annotated with the {@code Inject} {@code Annotation} + * + * @param Class type + * @return Set fields + */ private static Set fields(Class type) { Class current = type; Set fields = new HashSet<>(); @@ -242,7 +298,16 @@ private static Set fields(Class type) { return fields; } - private static String chain(Set chain, Key lastKey) { + /** + * Returns a String representing a concatenation of Keys from a {@code Set} + * of {@code Key} and appends the last {@code Key} + * + * @param Set chain + * @param {@code Key} lastKey + * @return "->" concatenated string of {@code Key} names + */ + @SuppressWarnings("rawtypes") + private static String chain(Set chain, Key lastKey) { StringBuilder chainString = new StringBuilder(); for (Key key : chain) { chainString.append(key.toString()).append(" -> "); @@ -250,7 +315,17 @@ private static String chain(Set chain, Key lastKey) { return chainString.append(lastKey.toString()).toString(); } - private static Constructor constructor(Key key) { + /** + * Fetches a constructor which is annotated with {@code Inject} from a {@code Key}. + * If such a constructor does not exist, the noargs constructor is used instead. + * If both do not exist and a module provider does not also exist then a + * {@code FeatherException} is thrown + * + * @param {@code Key} + * @return {@code Constructor} + */ + @SuppressWarnings("rawtypes") + private static Constructor constructor(Key key) { Constructor inject = null; Constructor noarg = null; for (Constructor c : key.type.getDeclaredConstructors()) { @@ -273,6 +348,13 @@ private static Constructor constructor(Key key) { } } + /** + * Creates a hashSet of methods from a given type which are annotated with the + * {@code Provides} annotation + * + * @param Class type + * @return Set containing {@code Provides} annotation + */ private static Set providers(Class type) { Class current = type; Set providers = new HashSet<>(); @@ -288,6 +370,14 @@ private static Set providers(Class type) { return providers; } + /** + * Fetches a {@code Qualifier} {@code Annotation} from an array of annotations. + * If a {@code Qualifier} {@code Annotation} is not found in the array, a null pointer + * is returned + * + * @param annotations + * @return {@code Qualifier} {@code Annotation} + */ private static Annotation qualifier(Annotation[] annotations) { for (Annotation annotation : annotations) { if (annotation.annotationType().isAnnotationPresent(Qualifier.class)) { @@ -297,6 +387,14 @@ private static Annotation qualifier(Annotation[] annotations) { return null; } + /** + * Checks is a Provider exists in a subclass of the current class we are currently + * looping through + * + * @param {@code Method} + * @param Set of discoveredMethods + * @return boolean whether or not a provider exists in a subclass + */ private static boolean providerInSubClass(Method method, Set discoveredMethods) { for (Method discovered : discoveredMethods) { if (discovered.getName().equals(method.getName()) && Arrays.equals(method.getParameterTypes(), discovered.getParameterTypes())) { diff --git a/feather/src/main/java/org/codejargon/feather/FeatherException.java b/feather/src/main/java/org/codejargon/feather/FeatherException.java index c52f1db..a9469e2 100644 --- a/feather/src/main/java/org/codejargon/feather/FeatherException.java +++ b/feather/src/main/java/org/codejargon/feather/FeatherException.java @@ -1,7 +1,12 @@ package org.codejargon.feather; public class FeatherException extends RuntimeException { - FeatherException(String message) { + /** + * + */ + private static final long serialVersionUID = -1606897572808444593L; + + FeatherException(String message) { super(message); } diff --git a/feather/src/main/java/org/codejargon/feather/Provides.java b/feather/src/main/java/org/codejargon/feather/Provides.java index 309a7bc..544899b 100644 --- a/feather/src/main/java/org/codejargon/feather/Provides.java +++ b/feather/src/main/java/org/codejargon/feather/Provides.java @@ -1,6 +1,10 @@ package org.codejargon.feather; -import java.lang.annotation.*; +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + @Retention(RetentionPolicy.RUNTIME) @Target(ElementType.METHOD) diff --git a/feather/target/classes/META-INF/MANIFEST.MF b/feather/target/classes/META-INF/MANIFEST.MF new file mode 100644 index 0000000..c5baa62 --- /dev/null +++ b/feather/target/classes/META-INF/MANIFEST.MF @@ -0,0 +1,5 @@ +Manifest-Version: 1.0 +Built-By: edwin.njeru +Build-Jdk: 1.8.0_144 +Created-By: Maven Integration for Eclipse + diff --git a/feather/target/classes/META-INF/maven/org.codejargon.feather/feather/pom.properties b/feather/target/classes/META-INF/maven/org.codejargon.feather/feather/pom.properties new file mode 100644 index 0000000..9dd0c33 --- /dev/null +++ b/feather/target/classes/META-INF/maven/org.codejargon.feather/feather/pom.properties @@ -0,0 +1,7 @@ +#Generated by Maven Integration for Eclipse +#Wed Oct 11 08:03:07 EAT 2017 +version=1.0.1-SNAPSHOT +groupId=org.codejargon.feather +m2e.projectName=feather +m2e.projectLocation=C\:\\Users\\edwin.njeru\\Documents\\NetBeansProjects\\feather\\feather +artifactId=feather diff --git a/feather/target/classes/META-INF/maven/org.codejargon.feather/feather/pom.xml b/feather/target/classes/META-INF/maven/org.codejargon.feather/feather/pom.xml new file mode 100644 index 0000000..5b3aa20 --- /dev/null +++ b/feather/target/classes/META-INF/maven/org.codejargon.feather/feather/pom.xml @@ -0,0 +1,19 @@ + + + 4.0.0 + + org.codejargon.feather + feather-parent + 1.0.1-SNAPSHOT + + feather + Feather + + + javax.inject + javax.inject + 1 + + + \ No newline at end of file diff --git a/feather/target/classes/org/codejargon/feather/Feather$1.class b/feather/target/classes/org/codejargon/feather/Feather$1.class new file mode 100644 index 0000000000000000000000000000000000000000..36424f25c7b588c2ac3d14a20e0afc4517fbe74a GIT binary patch literal 647 zcmah`O-lnY5Pj*^uC1$9t>2$$54DPGQBbIO5e1=sfYN)qjoXwp3)xltS$Yt`gFnC@ zCC=0yiU$oOlX>%I=4JBv_5J~1534RR0&B4i{UC0uuC!rn{5vJnj4tPLBmPD*ur; zn*!MrlA4FWs0SCr1vnV@kVjF#sW4%@p^dtHxNj+YD_fBgm~6y>jGEGF_WNL#B?_$n z)3aP7iB70efl_6&@p}psEZoEoHc)4pTY3Gd?J$wFoSGnt6K%o^m3HE`i$#HzzemE4 zSr(YB3^Y4Wm1XU9exP@5jIt+@OcIq~jYi?n9)c(qc_Q?+8QOUi2pyr@A^D6Hs#~w{ zs&5#3>2W3)>qR(wACu&Jl*8y0N@VGSG1ITIO_pPs>NB6<>|75y7|6`@GabzKSaX;s Qo5cc_utGQ1#8qg011_V1SwN8jCM6`qPnYG=E|lG7_wq{kp#CCF zctxXr_eUA$ZfmJZYm@DL?97>&GiUb4&(GfgOkhbv4MWs%GluDGh%N4B9NX9wTxNx9 z%oWywaScI+$QIw@MvmJVV|jf`m{LQCp-tT$7?!PWj5n^cXKe_VAtbYwH*lN4Q`OO@ z7@GHZZoqVGPrAFNbjZ6ebrH-Jn>mG@yf7f27Uh%YF5meb(_`p(>-+ta4%utUep?(e zbXQ7fK^&4{Xxg$Z`GjFFR>`o)%hZ38tdvY8SQS6M$`DLaE9${;RfmQ;wQJK+kFeTZ z)6oE3?K*WdqA833uIp$lnN;xLat#a2==i+5hHHe|V zQZ}XL6DNU;kPNM{cv-~-4NQeGfLj^{8G5VtS;r7!40YTzh36|{G**eBc;Q94*eFl} zBN~Poda7ze$0)`a8f>vYPm1EUNem1XL;ZnxNi`Zsu|w4hnLRK?URsV_hjAh$$?YK- zwfs=h;!;Ehy)f?LzJ_}YT@|pX*E$~HArT^-v~(>y^EbhTTdMmJrZrF($_B9TPRC=A zP(z!JyThqLld-b?6x}ajvb^q65ChMYik>qhEvy`n-I(~_Ipi#%VHVmR&Wx~7=3lvwqm@WvD@sd?5mbB;&+EDD)*Hgqf?MXcpZ zUz(YUbE*cakixFCazZnKL|W7g`YTPK zzta5CXS9Z%W<<#P3hiFext7+h#PA7P5+f&QO^lwPJ<%CFK}X^YU7viP9{LaazC;v` z&`W2XFvt^q6d$y|f&L=u5#^xbj3kZ;?-=dpxOs~B$J7@XYb|$zUlCXf(0#`#Cer7a z96rO-?><@+<@SPVQSq8+1>Vukd&>8NAG5uHTZ|b&H)b$Po^xaw0$bL6@0WC{q1xtY R4bsTJ#v<*)WT!Hw-!C^9uOI*b literal 0 HcmV?d00001 diff --git a/feather/target/classes/org/codejargon/feather/Feather$3.class b/feather/target/classes/org/codejargon/feather/Feather$3.class new file mode 100644 index 0000000000000000000000000000000000000000..6ca9fd7664c828da1df919501472874e50ad6abd GIT binary patch literal 1686 zcmah}+fvg|6kUgw24lcd@B*S%1Zjg96z_OPP^4V64l|5Thj3^ECFvvq;msMp!Uy#i zbcUj%qrUr5j{77L0$9vUvd?9owf9+j?fm-v^#_0Ajyzk;%nTfaJyto&o2qnSCC>jDp%JH%a$v~jO(mf3&Lec`DM%N86@z+ z!RW&bjcdHpv%=6>*a_i^#fn6n6n@!RASX3&au!xAf*}+043i;`jP$5-m#_Ry!(%w{ zGH~6OA^9uPe_3oWbk)moLTr#@>b7ND{#}MQxq6NfRl~8o_S_)06J=a4vwAUPGWl7C z1_+yhJIXN zXyT?Ryg)+(xq4jX!;QEshgDp}paO%6Ur$dOF5xm2*0R@}Wzy5l-2Qz3f&7nKDY(MW zckqQq*G*CNEyr%cHR5rE+kJl4vOS;MzQui!?e(&+EWezsM(v~G25u?1Ni9(anY5r` z7`KTg-zoa8WtaBS9?9?`dY)J=(Z!3wNZ#Jx_SZ zQlBO0ZA4=_E!z@EXJk_bmRd5f)R2LtcBKDr1HG-t(5W^WP0>6>Hmmp7(5_#o;g~*9 z!wJ13SwpAZ(O5&5{u!q~1t-taR}B!T)A1JFG}j1;&f^?<$TIZeJbfkhYsyGQ8`L)m zb(26h(fI{^TNwCQ_=cgm%+=&~B<2#d-nE76#V@$i{~04c1H=qrjM436%oei1J6d^< wc62Z$md;>5iG1wloJsGua`5OoVizm@K~6>3Y`4&|@-2aJiY zQKIvMCX)EUpJa^j+%jOvHf++KbI*Ow`#Jsf_v<$Rlei(l$1rHwB}KD}d`-1WmZ?19 zs$1r^vam}NQxXCUu{Cv5RSeZEDa)&CTyrG^8M=k^xuTmwqTI8sO})r%hM-&4oy0g9 z&mC?(%OGv4Mq-_BG4!vZQWg!$=}6A;l2!W@qn0Mg}7cVa+mK zRW}_fHPtNHm_h1s7;PAn(T@RPY+S|!&QsDG6-s)#iAEC}jUr)cN*KMsFxn2^jEI+YD_>G#u|h1Bn=BRL%o`%4n}X8 znqfJ*Sz6+5*(%DI#Wfl_Au+gXnFkwJY}ud2QO@tFw;b{2VNpc#ZPVoTyrDV{cQ8oP z?x(j6{#Z;b0uYOfHSj1c0sUrt^hR)mP*LLM=o}#0mCkGc3I5OIY4`R71xOiQTC!1 G^!x)^XM5uS literal 0 HcmV?d00001 diff --git a/feather/target/classes/org/codejargon/feather/Feather$5.class b/feather/target/classes/org/codejargon/feather/Feather$5.class new file mode 100644 index 0000000000000000000000000000000000000000..4cd91d91bcf37e8694f28e5affd6b93bf69fab9f GIT binary patch literal 1107 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 R5f=YY%INQ9)^}Kc|3C7oMvDLd literal 0 HcmV?d00001 diff --git a/feather/target/classes/org/codejargon/feather/FeatherException.class b/feather/target/classes/org/codejargon/feather/FeatherException.class new file mode 100644 index 0000000000000000000000000000000000000000..c18f2565164a24c14aa11940780b07c3ad81a18c GIT binary patch literal 631 zcma)&-7W(`6vzLEwkxGtA6t|QuF#6Ta7lVoB$Wp7(fhH+cBGw^*QBA>UA19wwa&Y0kt&TN0)l zq0b`)59a!-nTlH~BCI$5d9-bU(~(gmf*$dg3!(gn;ScAtmI?2y0Bc*{IqT~Z(!NL{ zX1af73E9&yF}~ba_9*V~jc-~JtbmvZewUC&hF6EH5sdKzdoA3V;IAszwv#DWy2w5B zGWlMjpG$MHz;&^o!W5>t;yh+B%M8nMzgTsiXlFX*%0?H(Vb~;Z%J*Q){n!BJ3}6oC MvB0COw$)wy1h|=v=l}o! literal 0 HcmV?d00001 diff --git a/feather/target/classes/org/codejargon/feather/Key.class b/feather/target/classes/org/codejargon/feather/Key.class new file mode 100644 index 0000000000000000000000000000000000000000..6ca9882fde3d3f6c78b9341db79937fcc701d557 GIT binary patch literal 3499 zcmbVOTT@e46#jM+NC*c|KtM$itx6Iw73+;q1g#e;q7|g|QtJT@a4;m8i`Do3g1*)F zmKPuFOhv4nPM_#Ze^RGY`>nlClEbALbtad+*IIk6?^|o_bBZa$ky&N+5r!O11BI#0t0DePFZAKS^aotaNwpI&rk3JRgZ(`83t=U7E` zA#LaLDTTTTcRphmiaF}rHtPo`CsRXW^r&d3-8t9EDV*G5l<-OHOeR~f3odbul$Y8^ zC}S@%Mzha&qL6bl^YmXk=w{r)kizL6pV~mICh#1@rW77*IcdOeK0f#^Xnlu#Awn0J z^eBR8w$OkUg6mKyh7*L{}-2eY8%^dltuN9cUL)ADq=HWGaS&sn0_L+r? zLMAfr6!hJR;xbN!ab?3Z!30)N*^R^4!_KMp(0R(lRq55ixI7dh3wC}%Mxq{sqk`au zg=-j>us4{ZoRcr6`SekvG%jRK;4nC>+bdNu((^?(J?rEm_(~x#d@zbzxFa*-?xqBL zS&L1H#n%?@;~NIDmzSLko4C(ki;}4?l^bHEBCv@~$C|M)iNOd+MGZ$W4>ybj&h83K zolgskQqTtGcfws-PCIgWB1kJh4rMH4MIWYKG?Ir$7II*lgmn{K=LA0D2U%*EEg+fS z+I(?t&V8Z~oyZn*GtMPfo*ofC=8p+3g`Vv%n9rBz9^LG%AYUPZ*db3U?!w#!5aFKB ztMWd|J)c_CMX2S7=C84Aq6YY$`w;(I0R4pM zsZM)oL<^d*m(sX7k5264j-EU`vJxZ#EfWku?C1J`#@$N$E-}~k5#lxWQQFthrn`*u zpvHNbUd5*V4b<(pQm=661-AyC&;@pBIF>QfAfN+QBoSJP^TTE5N3`?1v=*4gd15=~ zo!WVuG4q^DMog}SS4Agbj7}zi1Uy;}*rNm9^a5I%O>-=<4V^>2i27|rd)4nC^ePbz zG0{oH2;(Hmae8%}XWR?1{=}b%#MjXGBJmnYPKnqmPX2(Fc;XMlUgNC78a`b?L)@s> za88mN(zV~i8iEW$=pmOl+8O02dU2diKGj zGyIh<{F^AHoAdF+PpAn!PpqRczKRP8et$$w@Hug+Yw=&u+RHDoKNBJMZR>1U{!!ef z#Z4=S%4Xd&=r9Hyly$7)(lhKd29$?`D+q<2GpwIzKd;9Lbl@c0`84_naU5qgQPa5j za--)liqA=4AEt1XzX4qolMbV$j?>cfrdAGDHxdo4e~VaWprte1!1Xejj> z5UQ(uQQOhAcfrtXkUxruIryL?Ckv62*%wB>w?d~`-^+8%_%J(TghbB!>NVieh@c-g zF~RtijuM@K7s$NbZ-pBX6RLVkky!_nn%cOf4~|@q$tvq9OzsQ3b?kqGTeq9Pe1+Qv z?!D#*tGKs{=@lFnV(aMC7PH2JMCVHSn&yXNqN5p8vb2U}+ORR?bfrsWZh+JIBChyY k-uGBu#BLPyeW|b%U5O>T@?h6UnCAm13Pn8jrsTK(0cqb2GXMYp literal 0 HcmV?d00001 diff --git a/feather/target/classes/org/codejargon/feather/Provides.class b/feather/target/classes/org/codejargon/feather/Provides.class new file mode 100644 index 0000000000000000000000000000000000000000..5cc312040c35940bb8a1c88dc950e99146b27ccc GIT binary patch literal 392 zcmaiw&q~8U5XQf$w$W;}9z{g)(4#qc^dy*Kp|vGOFP^sP7&mNpCD{b}Y94$5A4;4G z+DpL0&d#6j_YKVF*ZT*6D;x!A5zbtZg{fO`u8Pdr@P(CsuaUrOjcxT;8bs0|Z(zm}J4j&K}T*6Srd=~B-PZ@7|h zK5q1m*|RXtUK852GL_g4{*lg{(dkNnAbz}0Mw5te+KeP}0rsN2Xr4!gm$E)ty|IWo qlPI~H-VO+aEqQG@D$qjk6L+vH|B2LHne8$5(Zj(yeFiZO(f-Acni5QWe7$F#N9+E#7#s^CQ{Xb>+IK?FgFKiJayO}b6Dq`R=$^ttp(@WKc1 zp~Q(56{)BM=FDU#-ZX-^oko$i1kcSg_>vM833#}dP;CzZHL zroJ$J?ni>5=IMY(18!tmzrW1cv5XlGy?+mOMAjp%85*6g_c>qB8mU4$Y~3cx%BdL0 zSd!nVQrdDWwIaLrPj)v(&*V_VM+H=f?{iZ?ouSmzi3!BHOz+WLu&n)b0EY5~Qo@`? zJdQ=|pvAEJ_j}P!=PO4W<>?oUi%)=ld@J+gSBb64H%g@ z6_{&lqdw-Nu1XJOH&FufZ5zv^BU4@2)5nS%=uF^s`~DR*370nu6dIAqccr< z%NXmV)7B8)7{iA->y3(*2&k#^6Skpx0vorb-kS_%_dHf71*z#_L163tg}$0h(MO27 zkEdAjuqd#63t*Zqz%xAOJkPWn2)teY+WvR;&ATdQfBu2Z(^&24V(^RqS?imEDiG`& zqtcy3W|`uos*{Sb2JV&r1t?MDJ}Es~5pThJX7duYi?Q3MEZls=EM+j&13aK5@Q~gT z=BUroYVbUYF+ZlY7*Yg=m7gddm46^Sy2RsyZ+PO;^sn*gKemgTe-^_lqpI`4E0FJP2!eBV|^}u%hz8G;m@RfZpcsLZ=Zc6P=Jg%?A zgHU~;+~> zO@m%)VGb#VoFkREo{W1!cQ~;!0jakY_Vw>`Ihz(f#xs4U9l0|uO1xDTiSq8<| R3G;Mf*uW;`l?cm7e*^SS%OC&% literal 0 HcmV?d00001 diff --git a/feather/target/test-classes/org/codejargon/feather/CircularDependencyTest$Circle2.class b/feather/target/test-classes/org/codejargon/feather/CircularDependencyTest$Circle2.class new file mode 100644 index 0000000000000000000000000000000000000000..784ca95edd77ee8e07792840b4b740d2b7406acb GIT binary patch literal 756 zcmbVKT}uK%6g{(UZrY}0S(z0CQEJqp5kW-|h9F2miSOe&>Bu@8vuo7P>LG$2`T_l@ z=_s<8jq@?z%(ah76V)$Eyrytyv0JFBp=SQpxa&;k-0s zjdF*fa6eX|9Epw$WY-hdO8FrVrLO{pd@Gv##gQtS+G)l>oy|JwkVXQFHY{Wq5~Xq{ z1-hw?IV2gfEvdxqc+?fT&8aFwuI0Pj>u@b2K6RSmKvJ98B&g9K=?8zTUD1$Hi{js_ zIF9bXU^kT#y6*8H5P^llj2o?5C^8)VYiG3X$#bA}PpukuNv;IFFOnwGEVd|&c^F6$ zOHw3FxIkZndSxwF$2r=&%{;sVd8-DN>mM4o1Df9R*6ww+<}odPt2hB RI$@5i4QyhI@)+SZQoku~%R2x7 literal 0 HcmV?d00001 diff --git a/feather/target/test-classes/org/codejargon/feather/CircularDependencyTest$CircleWithProvider1.class b/feather/target/test-classes/org/codejargon/feather/CircularDependencyTest$CircleWithProvider1.class new file mode 100644 index 0000000000000000000000000000000000000000..f2808f83c093416dbc57a6e8a30d3028d4a2baa0 GIT binary patch literal 1053 zcmb_b+invv5IwU=vq=a|X(>?3RVq>wF5861BBUxPQl$tGROz$h42h$y7kQlu{(#Q` z353K0AHYW;##`RV3rZf=XJ%}lv5(LG`u*c4fTy?@BO)ASZj$J1%roUCnN8lY@>6z6 z&p16#m3zVO*^b%jk0+e_y--g1)cEOZmz|q2yH1QUVPmGwRgx+@NnVX+tUX~%|FgDB z=na-_*gYgvo*8TWb3%WA1$?a`Vdu@N7iOud6U_kussO3`;ZtLZk8Mu zAg3tzM7KIhxZFUDbwX*sHLO9@XkZN$LUUj&znq_q*qtb0C2S5dts6$nhIzs=@ObKe9Jb{CuLNl=;4IJTBuFI9QYd5m4c z8<9fl8po|0A*AX`0+Qn*Y;i_b^ujoJwcvCFM^wa z(0)tmAPKpCEe?h12^Adgi`bN{IuswI8NAcck?aZGaFJyw4*3!HL$3P%Zg(gG!*DCO z zw}%n7JqB+_DWO{-k7E(Lcrb-6sJmEYSpTo_ zq?TP?Ct8sS+6Gps!x`FJ>ZWZop-Ym3939#n*ohcvuE8UV^|(%WgU(0taR>{wUzn?{ z{Y2?INg3Qu?KbL5WbulkY+#gYL&=3*mEE&6oZW~Tff4W(cW+2eKXgOA}BoI!GuM0$S1dJh! zmN=TwEYOj+9JyNF-jv>&v1vH6qRt9YsZ8y6golMCFy?*AoyH-JZS=)B^WI@AK zf$UkFISxk0k{FBQ8m`kZ!!)JukIo9bO*PW_$2k20-8dnCjge-7jAK&6#5wqyR&GuS zy!wCN(zP`2>z1SXSU*forWG@o)u0RXs5&@tAdWet+3iKi4(m?Usg@XS;HHKJHkrz9 zwa2o)FTEg+TevOI#yaC{)eTn5woRtvRakvkGU_qWR3Wi=1#;(*O@Y`8x9pj6#Zu4E zQ2iv%D6a+Lj~z#Pm5z{nE;MzRN;Et;V+S&3H4y%FRpEZAwz{inTmgg4R~sCKdQv%R zoawZJwrS!6qVM<C@yD$O>}D_@dFEJ?C_ zMe@ni0Y(py`iNMgq@Ub_HSPr2?%;04pA2t?u!wt# YlQ;v^vV<1gr_ItPX&=&#)8^3f1B;&cz5oCK literal 0 HcmV?d00001 diff --git a/feather/target/test-classes/org/codejargon/feather/DependencyTest$Plain.class b/feather/target/test-classes/org/codejargon/feather/DependencyTest$Plain.class new file mode 100644 index 0000000000000000000000000000000000000000..bfa7faa2ba376c3a56622436b27dd9507e1e5c79 GIT binary patch literal 407 zcmb7AO-sW-5Pj3;!^UW9>(zsx;0Kz6N5xA;5Q++x-Z$x(ZipM%qy>MLC&7b1z#k<} z7BAlP^4`2R%w>YXec=t)-*ni=Ksa*aTNt7D E4X4#&tN;K2 literal 0 HcmV?d00001 diff --git a/feather/target/test-classes/org/codejargon/feather/DependencyTest$Unknown.class b/feather/target/test-classes/org/codejargon/feather/DependencyTest$Unknown.class new file mode 100644 index 0000000000000000000000000000000000000000..645232e1b14cf9e2598858c6f610825454998503 GIT binary patch literal 496 zcmb7B!A=4(6r94s%8G&@de&fqCb|cYs27Zh$wm(#_p;QbxW1ZhSL0`SGV$OC_)*5U zN@9!`y}ap6r+w4cxA&J<0EgK0Q4-iUHVI=hRdZ<*L*ccOZl-K_s_qm`6~&JumAUQ} z-H>@8AD%#SF7IWSN=m}Z$y~)wpn9Z9yAy#07pR{TDLY7ImZ{7~M_}hqkp%q31hEBvJbwTf1<#_&)n|6h zSYoW~J!9#K7bPrn4L-$fc<7?eeB;Z66|6F2I~r(y9$jNrLJMuifE9stcGo@tC(L~o literal 0 HcmV?d00001 diff --git a/feather/target/test-classes/org/codejargon/feather/DependencyTest.class b/feather/target/test-classes/org/codejargon/feather/DependencyTest.class new file mode 100644 index 0000000000000000000000000000000000000000..a80b2d6d9a8d949f4d0bde0ac18982eb074e0f94 GIT binary patch literal 1516 zcma)6TT|0O7(LqpDJ4KDcThwHDc5)dFF|G)lo@6!GK%=%Q%F|`mQ5!~x%@0&6rIr@ z;E!@V+XiT%3_LVncDs8n-=59if4}|!c!F035(49Xuw%J?LGC%hj<2jQ(usCuV7-OXY$rm7&*!%^x*rlioAWf z<%J%xmzDA(C-Qtn=u8EAuS~U;He{!fMUR1QfsrdnSF4>c(ThG>JM^Mmf%)9${KYod zlUM1EA#4K!0@GLU)OUJpqv&`_s~a*gj9UUJ@66$Nu7-T2=!7A;FUd(`1fvG-(6y$l znqCe=8AK-T;+{Y|cXG7uN9*NcQJ}XLw|cg=K2IY~gTUx@7OAro_y=A=23q`tiE-ov zrfQLE6(3oi(iyTg;$3zdrZ8h*nsT(IOAAcQVvb4Mkqll>u7PnHE9vf?LJIU(x^oGN z3F@oQ;c@9Si>r;dEMC=sM#pC_k-;ddugX7E?2J4r(W)#6To;u$N3JaC%rZ021ZHoR znUAMT=?{K6aOJ9}uUdD#v^m{X0dq|$8B~r!@?tbs@zqrlW|O~>JV94}I@|vp zgD1Fsj@nU?U?N4NF5+nPzUr#6NFjxzi`bunM@p63GX wJ#(&Uf!;q|bUsKaLj)bJah^Gok&0y`@SIo)yueG=EZ_P`X7e-_SQpXyAJx%kC;$Ke literal 0 HcmV?d00001 diff --git a/feather/target/test-classes/org/codejargon/feather/FieldInjectionTest$A.class b/feather/target/test-classes/org/codejargon/feather/FieldInjectionTest$A.class new file mode 100644 index 0000000000000000000000000000000000000000..8aa94090441bac6bd19f5d4cb119d87bd0d37b5a GIT binary patch literal 411 zcmb7A!AiqG5Pj1ojg8UPD(F@4U=`hiM@1-wLLunE()%VI(+zPKHfjIMliX02+%Rr-%ew}kk~Y;4XmV58zk%bJQG!c)&@q`{ZH$&4yAVE0p{eN1gO{m?@bfl(oph7kDWJha15@ugW zsPxQ^Cr8B^oJ0z97S5Gc(FGyhXbuROOV(aM8cR0vC=iN0rRDW(I+Q_Q@K8dz=exoi zh(MYAr__+nw3(EK-no$s(K$#JmHYSa9C5mH7nqs5uQ9Ak=+ zP2#x7nZrno*~2&3FY)JPj;0w{MUkVOG@yhPpp-+I>k0XQF(JQV?fDnE5|dMLbv=$% SY%rEtK@D5jVHL!X!`JMsviFJ0Y+VvMAcvK%QZ% zFO?W9F2*7p^06-%%KgCO{)mUtoL4_{dL|==R{zR`x(wIP4b3RwDJBd%Zx%|+3o(+B zBOw=%nRYQ@cK-eh6Jc6-C4Iu8m#nG1xNhN!%W)snYldm65r1&qfUg3|nU?=Qb**3Nk)jXq&_bQWHkBq?_o7II+QuWpf0M_jL7)c<-)FE^1IJKHCAU(L zMoq_}FdV1GuCq#nq+uz&4Hls%PNkW_>iU2mnWmD$XG)3i#5Y7E3ogy%)w|YXVD#ma zq&NUQ3wmuphIaHEXtn6%l4WE!4lhyo9J@=j8aGhHHCpW?fb1rnXw=D@!PY9uA!~p> z&_9!4FZ&(YC2sV;q5AF;JFi;pFSyfQVt`-hIhm?EA;-8-NBX9vp^-Hi19VV=?0<(8`|(Zl}WdcY3@CMRzHTkz>&p zkv(Z^y?*tOU?|M^lKUZ7f!`g@#KV+zJ>ubj8yUx&$Aq2Ah~cvHkI|YWKGB+?RI7Kk6ZWi;DxhTLaiOf7i-C+J zDc&fhEw@rD60H6v_+a#sju17|*kj1{^umlpTgD5Nf8OaLmSxD@DkV%S zpZ8(Nd>tEA&`$JYfI}V~lB`FOPsj+9XD>)UuhLnvaT++q4%ytgfN+;0U=MjBDUcUe n?GwgC=j6vdZn5}8;9yHr|3>3(XdE1@s!BK{%&wY`aE#0+_mPj9 literal 0 HcmV?d00001 diff --git a/feather/target/test-classes/org/codejargon/feather/ModuleOverrideTest$FooOverrideModule.class b/feather/target/test-classes/org/codejargon/feather/ModuleOverrideTest$FooOverrideModule.class new file mode 100644 index 0000000000000000000000000000000000000000..fd526a5adcb3e652ed8f08937c2b193bfcf1e515 GIT binary patch literal 687 zcmb7BT}uK%6g}gr>zZYnW!96>Lk6~lk5&+Z5ZDJPzK=StBkK&zuKuoi3VP@V^rND? zeo!GnzT9)q+&kxfeSE&X1E}HHMvS4Zjpz3DK#aNZv~q`nha+L!J3W~C;$bF?kps~Y zL3q;Cdc_w}8*zr(MgohE49QEWWO&VBomRRG@dkB}h6N{s1d*W)IFbRwRcoUreos-SCWcxw6izFxF`seQ=gM>2p^?g?VCiY9LOBs# z8Az&pqm&MLD7B)(<-ZC)8a<=E1@#p6NWaGoL%OY}rZ1W@8mG9v;Pa?BL*`Z~VH!RU z0uk6aWT^amItGWXv|4g*?P4f{x}oy}G4g2DWNl(DAtOwjy(0B852wjSVW5gFvYAB! z;WjZ~2U!x?B`?a#5k^8)@}oaiKL1P*!?(=E4;gDI6GLI1wT}bBJmp&`q6CLTia3Jv E1-81Zj{pDw literal 0 HcmV?d00001 diff --git a/feather/target/test-classes/org/codejargon/feather/ModuleOverrideTest$Plain.class b/feather/target/test-classes/org/codejargon/feather/ModuleOverrideTest$Plain.class new file mode 100644 index 0000000000000000000000000000000000000000..769146cd9e66d14edf6831eb6ee242f26c48ca36 GIT binary patch literal 423 zcmb7AO-sW-6r64IVPmwl3Ox%RtOpnIsCX#|LbQUV_f7IlH>|s`N&3G$2_F0b{wQ&? zc=Mu{nK$!zZ)e}<*ZT*6OB}@*FmPilUYL?m$q7$&vY3a*5%_%g4lXc?kwsbzb^Fg%^F8G?mdnP7-fiVzXQIFp(lx|f{nO5}(S_>vjyGCe);To{_{RGLwct**@Y5KLrsh+!~D;0 zF@*jIIEMSEyCNJr6OqH%Deg58p1on`)fodM4*NDR!>+^B*P-J*-{1E*#>8>r#}9Cb F(KjyFX;J_H literal 0 HcmV?d00001 diff --git a/feather/target/test-classes/org/codejargon/feather/ModuleOverrideTest$PlainStub.class b/feather/target/test-classes/org/codejargon/feather/ModuleOverrideTest$PlainStub.class new file mode 100644 index 0000000000000000000000000000000000000000..23b83f979180b9fa03039d0fede4295e25886a28 GIT binary patch literal 482 zcmb7AO-sX25S(qkOpMk>MertgupZ2zcv8F+1fhOFOYbkq+P)GKcuD%dJP98B0sbg) z6U2)bdzpE&yN}tO&#(6n03#fF=n+PxS;T3X@k*IRS;Wt*>Lr`_zRa4OAJ=S*&UnUE zefpFuT}Vx`uK5Z)C9n{lqHiYpHhVfb%9 zg41P1@P9MI3FL4I9>OvJSI`p`cN%cc->~&6g&qRIwhbI(TQKb2j_^*`-|euEJ>f{^ OEex;^U#12)fd35$WqiZ{ literal 0 HcmV?d00001 diff --git a/feather/target/test-classes/org/codejargon/feather/ModuleOverrideTest$PlainStubOverrideModule.class b/feather/target/test-classes/org/codejargon/feather/ModuleOverrideTest$PlainStubOverrideModule.class new file mode 100644 index 0000000000000000000000000000000000000000..705b5441620ef978abf601d2cb80804fc1eeb5ab GIT binary patch literal 950 zcmbtSO-~y!5PcI8wh4g*XbImm5(h%1?g7yY6;c!l2`L2xD0e4u6Gs~xdA<2v?Wqz6 zegHoTb-YPI2vPBInP+?6JbT9P_U`%yz#cva$Pntr_QH6B^BTKlFf*yYf8{`a5rt zJE*<3imzNbPqb4**;29MuIgGFC!8{xo2ovicV^9q#~yQiK7FzuJ7NDh{{Mc9H3}Cd zu^oA&{FEzC$zT2N5sJrJOWTM<9LqSsG9i5B&;zUzYA-J04@pfGV1uyt;<5)P@_6oD z$(`M=A3GFPunXDrK!#WBK8^wJLPlcD?f$`s-)XwQ(Wik;%y2A@35>J6Bg~=1BIOBd zp3w_^<4lGz^W~S1cu=XPDof++M8z`}u$b0-O!=R%#JI|jtY8Ie$YY&xlaURCE#&_K D!gUAT literal 0 HcmV?d00001 diff --git a/feather/target/test-classes/org/codejargon/feather/ModuleOverrideTest.class b/feather/target/test-classes/org/codejargon/feather/ModuleOverrideTest.class new file mode 100644 index 0000000000000000000000000000000000000000..f87a908c86170238d8aec4f08e19ac024ea62af5 GIT binary patch literal 1531 zcmb7ETTc@~7(LS#wp&-A3xZrk5Rev>6_JY;(Ly9KsbVZ4A-=e6hcZo>)!kVLKg$;( z8ja8XDC4)?wiGH6Ugqrdn>puvm+9|6-+lsEz=nnhL)vl6R?#W(itUyiY3*@a?Q_?9 zt;#nRAMEb;ou^u&@6ZQ~SbWn9W_;P=;Z+#6NLa;<9+$uqxM& zL+=cO?|rGn0pAgxAfc?3jQ`7welzUsjMh1sNY^Shz%|y^UwaHQZsa zu6Z#??XH0_j5EZA^pq`&)Y7R`i}Q`D?RjLpEtg;{CJansiY}MAsvTtLO|_m4ZznK~ zw1yOQDsUJ!D(iXNRR(4-%V3ZQ?OuKM?J6~Ny468Ao0)b8!Gvn{8D|*#Uu|i^4w?_) z$Q4R)nyuV{wTg#7AS@ot@hGZKxLr3i$(7EP&AoAw- zc_SDHr9^)|pp~wolU9v(79k_-m^nfG3w=b8pfv~sI&RQvga-(3(vG2vq7ii0PxTN6 zL?4MXLO2=wf#`1ZJCeI6=*^#^FJ}(Tnj>E^`U|w)JH`DoovxZG1151#5Obi{AM(`o zOo~0gL(*lK`=_#~yInS|hW0#ZF9h1=6VfF`bEy$pq0qC|&_y%77)BqK=&_w8zg#yH lL52)Qu!`q|GnDc?*;=DQtq{H-93gy3I7FBwOcJg`{|oW}jSc_+ literal 0 HcmV?d00001 diff --git a/feather/target/test-classes/org/codejargon/feather/NamedDependencyTest$HelloWorldModule.class b/feather/target/test-classes/org/codejargon/feather/NamedDependencyTest$HelloWorldModule.class new file mode 100644 index 0000000000000000000000000000000000000000..ec914ea25eda7df4eb25f5eb52e1089f7e9a59f6 GIT binary patch literal 772 zcmbtS%T8M{5IxSDG(bp0cor0iML=rrqDxvNM1`o7LRC<@cJ3V#M~+?j`bO%zKN84y_Im<_ z6Q-{skA)hFC`xpFEzs=j zcki@bdZ)~Q%Nw6EWT z8{F|cC z=;#mdM>*bYqE@6cJY;X~ZgS4K=idGC^UHStYj|S9U|0ykhFc5jqQ%2Tpxi^jO$3y_e2z%$TAGK_y_L#Ts7R+)t0Em41-UllJPT!Orcm|$Zisvg$(jG z1~AAlRFX>UwvVbJ+~ZYWFgT^4#{CKprOwmMY}}L)!&2$|iadrfrG@UODCVjr_GR3B z71Z0BWa3R*#qvm0WF(1YL#ZI^@PvD z2=W%LV$8%S!&D!rt;Aj%$?WNt-^8BCls7!SAn;z&vfnyo~~i z3^|!Lh+(DBuQ2^nv4GT@y=Gpq8FAZ6k_A7~5Ee%V3i_%3i#0bDx?!-zz-@ z`5(4e$>AQ&?6#cAVU4P8N(M6>e}?IPDu3J0V3mV*SQA@PPuutz7iL*EmE`RxCBm+U zLeJjm(V^Cm4!VKSG{}3$)tF2NW+-#&C&F4Gg7U z4O7%W5rG;M*RtP`Immp)$iWFNmpiypawZp@>&{dM)1Pstg9T?r=c|A6zqAgr1YyG= ns#zjhB^oVZG=WYfI8@DjtdkT259rjuLp-8r(as1xkCFcc?MEvh literal 0 HcmV?d00001 diff --git a/feather/target/test-classes/org/codejargon/feather/PojoProvidedThroughModuleTest$Module.class b/feather/target/test-classes/org/codejargon/feather/PojoProvidedThroughModuleTest$Module.class new file mode 100644 index 0000000000000000000000000000000000000000..8f2aaaade73b0268335b6d6af0d4f7363e6400b9 GIT binary patch literal 804 zcmbu7%Sr<=6o&uQ>e#W~#@72C7uAKcup6lgA_zjgprzn4ZR0d$OeB->xpXBc_y9hX zc+wVhql>yZm&uv$oct#rpRex#_OR|D!%)#C3Y)qmI^0BBg?ED6wlLw9?&vF{A7x9l zYHg#_sC}+mX)J0Yv0J^+LzZEx!ykDVa}|Y`jgDwqhLHoQq&;F7Ds9&pvL}T1F@#(m z!x&+htV$&=())%mHQtB?Lr~RC9@n{%F7JQL+O|v>4y*qdu|n-1=qiLMZ4U-=N)Tq@ zI#pKQi@HoC&3LSow%kgsXvB?Q$vp*=iia77{edpx`j4VWYTjw>Bfy-Kah{=As(x#K zV~tc%#p&(e=+rdDsdUP2{<+9q2VlsbDJ9HF%#%bU9#$C2gN#a>?>!6>-L=IAXliUvzN2_jp;i6SA3*AV?jZhG(7FxQWCevg>%)lh+f4LCBg&*KY ziFcylLU7R;W|(vC%(?g6`S^T$2XKKs8x@8tr9;nGfrz;dRqD+J&m*C|k&4wwtAz|i zFp0D(!suQFMIt65%TG+yhQ-i|`GR{1Pebo<77IUTsLqvQ*c|>w#<`Yh*k`C+%T(q! z4DIgUaBs?B-BKkEs#tSj!zHn9Z(0XK!^H|}49%fT#Y6El6MDjDi7<(j&yy+F(%>J` z$|IRE^oL8kqiUV8Dzq;K(xf^5w;|`oEQ5QOrb6E)Jj+C8V~62#nF6Q}CL4~(c$NN& zOd9v)iBVrxiK!DBph6RHPG4!AymIs}?*?t>{a#mku|WQ{3RL_?AX{79 z5y-8vu8k~;B@7`iFxF6kY$p4AGTe6ed?`?AXwUU`+)$ag|7R}ls7T;t<2u~xggGGj zrjAef3ru}Tf>`a#9Th3!tOkLO-B{^>Fy$UhHz9M!G{*u3d33;rWJ_T2A`F(xD)^MFE z;Vx#`tO}yo4LojRp>~GKn(sytnfymi!0M|+VD5_XaF`{tjnh?Fcpy-}7VlJkHmWGv zc!-*XM_isMmF{jeiewmEKq( zAlS~kAdq2iIFjngr?j|E^BDI*@$>TntuUgewHP_{f_`Y}7=>>pGJP$J}^Ed9H(yP{BBEv*E`wQ6<+-NLUroLnP(5$FR087s_T-NtatAE+m_RoH$tBUahN(Qf;XwlaW#FiF`9pt>qXnOe=Yp zLQ9j2{kbC5FeFENbBfYZ6T|Fh#iC0xOm@bQ+i2-Md5#go^4~EG{V*p2f(TD_*Te9O O5qRJvI1Dk8DEP@vhpPe4627NsOX^x#1Mp|qQv+0+;rvKmAy6cXY~~H&=2TG zMRQlLJtWJ{%(pwtH#6Vo*ZT*6Q#4%U7|yjB1(6<#2{$9Hf+xZ4SeW2m$BU^pv$2eB z#7wB6P|>0%65H%(-E!eDR44qI2QgQp;BGJxk#$jII9sM5L-9%~X|Eab2Zw!z#=~4$ zITd}G$U!VxN@>fj)GA@9hbi$(AXQ2lbTfC!;IwHB4|%Nma8Y8Ygi?vy`E(#mk5d(f zTBsu)_qmZN{(W@pSW?-GaGB0qMC?84xrszarWCt>Ztgg3o5AlYB}_Z!Ng@&#TMQ@v zC8jNr3N&%51@=IgZh>TFbZB3Pt`; c5~^6wa%!2~z$W<`pF literal 0 HcmV?d00001 diff --git a/feather/target/test-classes/org/codejargon/feather/PolymorphicDependencyTest$FooB.class b/feather/target/test-classes/org/codejargon/feather/PolymorphicDependencyTest$FooB.class new file mode 100644 index 0000000000000000000000000000000000000000..544d56cc1aa6bf86f6296b48e18e19a97ce17fb4 GIT binary patch literal 590 zcmbVJO-lnY5Pj*#Zo96wR;%_R2p+V8E2wx-1Y0Q-78NbMr)z9ewn@pRVts1j7)1I}jJX+V6+8)UN5TYmI-XConT}+1 zEv7;}3Kh+JBC)$2ty?Y%4An7z=0VKWFt{CzMPyw#3@3{eWN$N1v4s-S?Pz-mVubvzmORCFeLp%SQeY#_s~jI_&tPv(=Mjs;$KGRoT*5K_Q4 z7AH8gwzc2PRL4`dP9`SNW7XBM=5<=e*hD7U8s4Thmo&0d-B&T|*E`PBPrf$JPybks zRiD#^sSGDHOSI_eITiBd=CaLwy7X$9U1?``MYLzK3E5<~=|TC_PNF~^YS%S8a~t%D zGf<%N-WU}fgffm*?BTA!^M!kfetD<~JYBSs?Vr}x1zs##TX(NSyBv6Ul##(1P6k48 z_F+*2Rq^M8kqw0+qsPoA3SwdJE0(`-kVBc#Edy0tVXVwH5U(-=RM3gNEi+qS$1Pe++tRE55g!r^9Lp#lOw(f_9Cx4SK zKr|Yk{ZYod-Kq^{AK+!q&YhWa?!9wnfByRN9l#>W3Q`R7u2(Z{_kcGnujWegkXu2W zd*&P0IcmCIt1j$kyv5}Km-f*v_X7nPhC;*oV4033Yv$|y2Dbx-?5dC=SYt>V#VSK) zlQ>nRk=M|JEJI&KNd78p?sIR~+IKjEUU6;9sal?h=AB?Bs0*KAp>p25N(@8I&_i}xXl`_VVIirQ3Q2{W#e7tY-3Bsq)v1wDBbIHG(jiv8Yj10mmF|| zVd)}AbGXUC$|`Q*wt@+Ukpz|({7Azj?l7d>Lx!@^RpF*%`F^P@uoHMf){;vmvQpIB zDGdgS3^^hFz>+qZY2HZcQ*@}{Z!FOqbCC-1XzQuIX+ zo<@acCLts2nLa`8b9-5(FAmz< z^zWTuVCNK9D*DKbKB|wMV*D6)e_-?&)2Eozm!jx{Gtqx3=*SRVFLV+#NNx>uOZxQ0BI2-gYw37;bW8zZ)Ks{jB1 literal 0 HcmV?d00001 diff --git a/feather/target/test-classes/org/codejargon/feather/ProviderInjectionTest$A.class b/feather/target/test-classes/org/codejargon/feather/ProviderInjectionTest$A.class new file mode 100644 index 0000000000000000000000000000000000000000..24c4c1c29c1a281a338cbb75ba4ce5254e7d3948 GIT binary patch literal 1027 zcmbVLU279T6g`uq&4*hXqit;btVT$pbPGPF6q14vSX68YzD~AdI$=9oW;aFum4YJp z;1BReiDx#A5U3C9!|eS&_s*TOzkdJt3E(B#WfTPVVmtN2_*BiLoyNxhpk#WctpC== zm-kCwm z_0-68Zk533`mBQ>*HFX$A#v9aw9)CIK&x{-YQH-c2>ucLkCqN@=iS_-`dp25q9>6W z7!#+`Z7UJjS{-AtNDf*$;-sjVF^5S+^@4Msz`_+!)xee7T z?e5ZA23DB0=jbBfjf_$DD3VE{k}@6%yvRcZ0YQd7$;;{?>xS6n6BPMpaNX`5D9f}8 zsPK@sa8I`I+G?S{~;c; K`7Y&CRQ~{yNe@H- literal 0 HcmV?d00001 diff --git a/feather/target/test-classes/org/codejargon/feather/ProviderInjectionTest$B.class b/feather/target/test-classes/org/codejargon/feather/ProviderInjectionTest$B.class new file mode 100644 index 0000000000000000000000000000000000000000..5f3a051a246d062673d9dbeb60dd24f48db7da3a GIT binary patch literal 423 zcmb7A!AiqG5Pj1ojg8UP>Zv!ugNk$okBWyDghEik()%VI(+zPKHfjIMliyqk5k`coU8WIe zic`2v-4)@O{DuxAr$noP@bUwD@2=26?9ki582b*B_8mGtX#K+$2N*hz+wVs>M*kNr CL1|wA literal 0 HcmV?d00001 diff --git a/feather/target/test-classes/org/codejargon/feather/ProviderInjectionTest.class b/feather/target/test-classes/org/codejargon/feather/ProviderInjectionTest.class new file mode 100644 index 0000000000000000000000000000000000000000..5979d2083105393ce041cf901c25d9cafdd00176 GIT binary patch literal 1116 zcmb7ET~8B16g|@xwq3SRD^Ni|(4t$wE`GkOF)1V@O`2+yG%-F+w_`iaGHZ6X=-={1 z(M033KgxKgT@|JKz{}j7xijaSd*{sl`1$1gdSb}KexRH;g2w|9 zI?u!4RQ5#JR72s#GEm1NiVfr#N<)6i9iOYd^Q^0r46{$9lJQf9tX=Cc2`L zGni#qXh|j7qm!-(k9pS@4CPkfalgYusprXJE*{8;q29WTCYKbw{YR|mF|528saT$f zj*KJ`G?WTruFD|&(ind@BFT=f$~95OqJgUn8!603ldf1;!ZOwOPR0X=0(qZm- zB8sZ}3{5*tX^Myh`@JK_miXfkcMdmEHE@ezNt0jLU|}1#$s2t^R#~*CO0==~}KcFUEISox018P-2zi{T7+ y{u0cO)fAB@xHSUPM9UL^geXs@zl%B%W=N&hy^nho%k)*D)%z&W--Mn63cmn*(jr&@ literal 0 HcmV?d00001 diff --git a/feather/target/test-classes/org/codejargon/feather/QualifiedDependencyTest$A.class b/feather/target/test-classes/org/codejargon/feather/QualifiedDependencyTest$A.class new file mode 100644 index 0000000000000000000000000000000000000000..c8d12910cc1ad9d8047aa56da29c8ff8ed312b88 GIT binary patch literal 450 zcmb7B%TB{E5S%TPlu{mr3rI+CKsh!@963ciq)I$P;qE5e;>g%2aVq+29QXh}3b6sH z<$@3gduP3~v!nI<$Lkw_BWwj|5Dr~2j#8I#u8Og<(TJ6Q&Df^X z0hj(D4zNhr$kjweM%i(6JWwox zok~NH++Pj)muG}d-&!tCj4Dem19S#K>>Zo!#wS~6gRcMp literal 0 HcmV?d00001 diff --git a/feather/target/test-classes/org/codejargon/feather/QualifiedDependencyTest$Dummy.class b/feather/target/test-classes/org/codejargon/feather/QualifiedDependencyTest$Dummy.class new file mode 100644 index 0000000000000000000000000000000000000000..58f9cdafb61340b60e9c33ffaf726c4ed0912d15 GIT binary patch literal 1079 zcmbVLU2oGc6g}=&(onVz7_c!mwsmMN(lQMM4Gk($bQVvRpmGQCi- z|86EjJ=SV;q&_M$QYN@OS4rABnnls2gNi_NDnCg-lxE_e4yP(e1@=_cN2~NDXwNhoO37j7?>#tw{uy`&qr8eQmN@{o@>%cI$e~ znT%zmQWakdJ}6pIm&}zzUaN;P78`KTf2XzSCYM_dmz+zt;bux>FDn6I2mpgqM z$Z#NIo%vUbmGnZhf#*eQ$faT(t_%W|B&~gcu<+H+N!mqo&n5Lf*jXH?p3Zt(`^S^o z%XATF92=wJ!%!xPN*p{C*f02ux(+r3_KHObh^|2O>RE3K92ARhu~RC`8Jm>0%wLN# zX8O`9(RSc+wN9@_&m-R8aF`bj8aFw5JXj)nogY}}Jo%2Luk=c|&3PfGJV6DgBss$! zuHBuV#xkw!^YV0}>Ea&llQ-ksAqrx(^9@U1Xw2!d8i2PsO_s8Rm3&^s1L7)^tzjLH Q9=klZ&W`HXBDQMoUvsM|?*IS* literal 0 HcmV?d00001 diff --git a/feather/target/test-classes/org/codejargon/feather/QualifiedDependencyTest$DummyTestUnit.class b/feather/target/test-classes/org/codejargon/feather/QualifiedDependencyTest$DummyTestUnit.class new file mode 100644 index 0000000000000000000000000000000000000000..07c74ca5b4d97e74379ca9e63a6b8b77ffd595c8 GIT binary patch literal 984 zcmbtT!EVz)5PjpMu^U_(3I$pMv?ZXHLtOzks!CC-N|hoIwB){VCh11bF0$9C{VR}= zkT~!Gd=z5VMM6DrusC?0XY4ogW_I@HukSwqyu_0b0b$?f(^^VH$btPPzq{xX>nsQO} z_6TnK|B~(0rTfV*f^av+0$POjsV(!AkG1c*`;T4N^=CndPmJOGFjGarMTiH4y_)CV z5Al$&TaQJcK4IzF6hmyvF4W7@lip(2%=92>ciXL-E?;MS_d+1QL_o5F3k^ z2$JB!^KV%CQhi<)>xsZAI%4CiA8-pRKqta&+>wYUKNY+pf5qx&2?Y2{9#-U_ir%a2 aeXI$ti@tSq@#tA3Jjw- literal 0 HcmV?d00001 diff --git a/feather/target/test-classes/org/codejargon/feather/QualifiedDependencyTest$Foo.class b/feather/target/test-classes/org/codejargon/feather/QualifiedDependencyTest$Foo.class new file mode 100644 index 0000000000000000000000000000000000000000..c89d3962ac3c04f05cfd1b79947dffdc98ec2b88 GIT binary patch literal 243 zcmb79OA5j;6rAU$t<{AGaOt`MJ%UnjC88II>1%BXi6pJy)m(T04<)AVUHBF=1H%mS zUhl^fz#7vS1H#I>N+?@!BVA>UC|R}_cH+=UU6(Z%TfVX>*r@x7eY?!9jWHt38+nsL zOH+ycxnb23(xdI1;=I;OSo|o+`W#`lGltzpOYhmom=Lo6h7g8fN(2NE-sx|E@fRb+ Mfz#j+5~NY`0bjgC!~g&Q literal 0 HcmV?d00001 diff --git a/feather/target/test-classes/org/codejargon/feather/QualifiedDependencyTest$FooA.class b/feather/target/test-classes/org/codejargon/feather/QualifiedDependencyTest$FooA.class new file mode 100644 index 0000000000000000000000000000000000000000..3972e473a996f93d91f105202986a3c8c8e163c7 GIT binary patch literal 512 zcmb7BO-sW-5Pj1&iLKGr){l!9!9(@XfW?y{luAJ;idcHzrqgyy+?7ot__I6-9{d6R zC~*?JdML}j-S=jhnK%3W^Z5m!kD~w;Lf^V&6x%tkm0Ma9Em&nMcF|+561~tozvUM; zb2jnYgwyPFWbGh8jnG=FR~047ETf0nn&T{hPq^4T9l^iWMrSvKYWHkPs12o^2CCQ& z5nzkZ9Bae(`SXn3M9mT=w8u79$y7OA@ISGZt#nGb9BBQ_|M>3} zt_k6tG3fe)>=SyM6&0^CN%30D6DJTZ+mnwWS>jr-E-WfJ;GKV<@h(CIp`b4^ h(8Z2mSl&JCqFKgUCGMduXItKT=-|LF5_WKi`Y*w3gq{EZ literal 0 HcmV?d00001 diff --git a/feather/target/test-classes/org/codejargon/feather/QualifiedDependencyTest$FooB.class b/feather/target/test-classes/org/codejargon/feather/QualifiedDependencyTest$FooB.class new file mode 100644 index 0000000000000000000000000000000000000000..1162cc32e0f450bf90c85733c11419b39e6f8b35 GIT binary patch literal 512 zcmb7BO-sW-5Pj1&iLKGr){l!9!Gnr4VDY4QXr&+&MJ&B<(`maU?#d<+{8^p^5B>mu zlsE}qJ(OkN?t8P$%$xoG`TPRV!$E)wp=aG9itUV7$}Oyk=B%wECtR$bj^JNwqq7@A_2hIys12l@2CCQ$ z5nzMR9BIS%`SX3~ zt_k6tG3*A3N>fe)>=L@`6&0^CN%30D6Gsp(+mnwWS>jr-E-WfJ;GKP-@h(CIp`b4^ haE>j(u)KTNMzf5!O58zP&bGYw(7~QxB%HElAQirLHW+s*RD_9}1 z-~;$5#BoxgZXz_Zn0xH;J;(Q6U;Fo;pT7X?!uL=RcxvOZAJ|Y$WIVRUA1Rq0so4K8 zm60B46~0nmlnIpyz8~wBK=63vHxy3Q9&wD+Sf*>F9epFt${%C zfWlQQp;E&#N&+i=ZPeT8@leHwau_LrwZ08xG?1}&^V6Tj^hhTH&-=N8+Y=B{;Bzx8 zy=QG_ua$$v9oIijO{$O8Kqs1sbd0g7Otm%4qrOP;eQZy3s1ovb7WphXhz?1`5hLaq zX64QjWtE0GtJKX~rOa7&PqXai%hJ)SpX@XaR8PBh+gMP}w(Dhq+G}G}d=SYbQHh7! z0#7owV8_E_`EMAyS6`zPCu4YmMpDXoW=z;1Rn`>yEv$it&te1`7$ zgwp&?K^=^UPZMZ`doO4`&U~UEE^qxn`8x*%RB7EZu#a=JwYdZFJZHcKtk7$fqbl(t zagCo7dq&R!v9SHk*)vKnXG&M+tN)Y=xP;3y^($~|XEm?=SF^W3^E%dNaom{2a1$HE i9cFY3cTnFf;~ud=d_a6yDx*o|}me93^wUUNnj4dh%25VyagEUGKv8hC>iL|NhhYh?Wn<2X`EbXLU z`Zx7U%+zVe&;C)Jp0~R}3~py&820Yl_wK#topaxPumAn)9{}_CNkc?n&S~$J8ctIl znC(5sF6~Ow-Iwjsldjpab}iXllRrzlDecD5mh8A1Vgi!~=C5X{W!ihC$2$kI;R=i| zS+?aa3q*7IxyW^U6Lo&|v)2{7Whq7*UEGDVgw&R+v<=C8?^l}_@3A?0rR@Pt$ z+!-!$cEf3QTij_96A4_zl!lbROh}Nb&#jIRF-?wsv)p}V%ssE2<+Gd*BOnMtupbG` zhvW&-E?ae+iiS%9w}*GsaGAOc=~qeM3O>>Bu|PV+^`Sh{k;PSkh_fqjFV{!LYRl|& z$^#!l$ziOrQsKIe9P$EjD<}mb&xJ9nobr7+{EB9rC<;1?xXCzs()F+iT*&pW^#LYO z!lxQ;v8L1}{gSG5IwPmH+U4g6p?D!1#bKcXZ zjEasGtWqDd!Qe&i|V~{J@2|@hq|Hj5QT{fyFSo!rZ-GGeC+hw$)r8Wb$i) zrBRqvt?U_lS^^LJmh@0Z4I8XMU#_ak#~QrY&vL+NzOK9;D^|Z1a7Ux^6u_vIE{{ZI zFRMUe)9JPwvTCVYCKDpSoNBowW!<)A+bc44Ux*6-JO^W*JObxDdm5XU8&zlHR(;er zTs!Vx0k{Ir^I`>JeB-6Zr^Zo!c!Btze2E~zr(pRp5$w1|7~Sn*O2grGu8@0+-$8`ceMw*HqV!Gj;*M~Rcg zi??3hoA-v9eY4*`pI-p3agv}%m^H2vW%I0R>8i$x7bX2hIkD8XGRil0rCL9IGE&GT%MXoRBV?tt-`?4txKlzUrb9vU_WlTNv54s!cEA=ISu1SIL7c7y>DT9 literal 0 HcmV?d00001 diff --git a/feather/target/test-classes/org/codejargon/feather/SingletonTest$SingletonObj.class b/feather/target/test-classes/org/codejargon/feather/SingletonTest$SingletonObj.class new file mode 100644 index 0000000000000000000000000000000000000000..4f10dc48b3d20ecb3a5fd0dc42b9f08053fe0c7c GIT binary patch literal 491 zcmb7AO-lnY5Pj*_+O^tRKhUGlgL*JXkBT4#L0A-Q={;TJHf1}3Y_|BfJP98B0sbg) zvPiw^A#d^~lbJW~^XvTszz_!!Y62J5Wiqu-dZAoqNj_`k=i14!p)A+l(nJ@2ux1al zMTCYxZ=qI7=87`ODV=(O)|DaSuLbHSr&EE(h?~Z!quoIhErD)gNZ*&snRXL3%e6p1 zv8l?Z%9+4_k_|sMg}^ZRx3Eircx+3T>RVH_U#ku~oCn1MM~@|Wv(!^l7#?~eyzip^F~JP`AUe&nK>0?P4G8Z&5sb_W%F@ literal 0 HcmV?d00001 diff --git a/feather/target/test-classes/org/codejargon/feather/SingletonTest.class b/feather/target/test-classes/org/codejargon/feather/SingletonTest.class new file mode 100644 index 0000000000000000000000000000000000000000..b89346b9c90e1e2589833e17fbf0710f2ec02d12 GIT binary patch literal 1539 zcma)6YflqF6g|@xwk<2v3N3F?5z0eWM0^!V2$963B9VqKep<@fZc}D)cZ(W-m0uK1 z^auE(jAwSsQYj6j$=sbgGw0lM=1%|o{rMZfDmFC41ZEt!YE+y%Bu0^pl(%sf!=jn+Wv+>yfD8nkk}$l8gZm_^q^N@ zpkzyHr+IW>xn=X9VF_eQPQ`5Oo35?qtz^Ql*`B~`={mI(1$61is6K&_w@vBWN7laW z*#zB`((z5-b|f(~0cO3)G7Y7qm_`G`It(6oDnHtwy4>3O8?s3wg`Olz2; zXvG+6-t;`n^>y6F9bN}da<=36FF!QR2JM+^M-Feb*omy}R%X_?otpsLoxs?SOujto=)u zA6f6_b7WM|IMIx@6*tI}-gBC6#oD%m_ZBUy&C5y_9epLG zIQ|RqQ`{^qX7k@L5{{>sILGb}3h76Z7)rrzl)x z8zkEh*>YE~Endp@h1DtZrp~pIXX*9Q4?GYE#};WkurEuOfl-ok3$6T6=SeqL z)){ZE^e6pY+jDKxpIzz1{dSKegS3D!Cx*B^3BE6|8i!RE>KoH^KjRSoA|fnb}KkF^RHDQ|;W&2f=Xm z;#-G}IX+BK{gzGgRG*qq)Yku6{XYDgpmt`h&QHe5IqhP+6eKe?nX|#Ec|FIlwHeyR zHk(r5%(4NYGqfVwG0MaWy%N1D@d?){&mv;Ad52o_-7V@j^dc;CU!1b6qlo8>+aMdT z{`eZtuu6|{Qw3QnV~uw*<=iC-?-rWBP`{?}NEc+mz(5luBhrR_1DnJZT7nmNMX4>~ H8&v)RU5V_6 literal 0 HcmV?d00001 diff --git a/feather/target/test-classes/org/codejargon/feather/TransitiveDependencyTest$B.class b/feather/target/test-classes/org/codejargon/feather/TransitiveDependencyTest$B.class new file mode 100644 index 0000000000000000000000000000000000000000..b49029627dbe646cba3f25649bc3bb24cb60f679 GIT binary patch literal 891 zcmbVKQA-;^5dP*8b4i*SYt`1aRs{u={XkRCb%NDyUhA*O*u2i@xBzA?$LzX}5}q~?Vo^}q zYxQejZw)MOazHmgpmsH?{GDR%h`M;npZR)5Gsprt@c0Ti52N)U|^5>f;OR{FEEIA@tNy1PW;v#5|L_y9f% zakgkF(#-7aY9F)TKc8O!W;lw_BV0D76h*V-N}96K;+dseu@RY(+A60ue9Nz_m#mAo zjIEod5dy-vk{c;%sY~&gS6n#4;96YF3=@PH5Jq#Q`CL7 zcM>SY3A|jGH(P_>PxKIbY|FqDyB?D+4n6O6_5BV<7<-Pp_5&PZ F_zRLFZeRca literal 0 HcmV?d00001 diff --git a/feather/target/test-classes/org/codejargon/feather/TransitiveDependencyTest.class b/feather/target/test-classes/org/codejargon/feather/TransitiveDependencyTest.class new file mode 100644 index 0000000000000000000000000000000000000000..2368dc675b03913b19fba4ac62e2e955df56109f GIT binary patch literal 1346 zcmbVMQEw7K5dH>e5Ad*vR%|VmDphD}uNA8%7!$xWF+og}@Z!^QU115`Gj~gkKg$;- zCK{jpQN}qyZ8Y~Fx!lg}&dfL8%+B2RAD_PhsN#`@7{T%UzT9v8%aX0<+)R*R}SHFv`;mo}GdZ$IRCWQ>vwr!xamc37ZjNk7re}v5Kpl+&g6kgroB7*58Gw zRic>BA!-(`aefhTqN-l1haA^!T*n3>sdQk3cDab#<#QC8BM}75;2%3}dON0E)@5uIS9PlF456D13`7D&7i(%xQ(YhwYfP3C$B6$@qVlkk#eZBh>c z=^Gn6*d=7R%DiiPrac~w2&?DsU^Wl6a0aaTED?%Pb^g^91QLX5lv!kH>tWx&^2WX^ zk5xESg(%bguqg=kGp(gRZ4}9)Ky`i_79K2cGfj4FVhcR-{67I={KccrtHnEqC9z!E z`Gn+$sXEPTs0Pxwz^gqoV42|^;Ua5eSeaX8S%yG;J_`dB;$IM-;8JThm;Z>hZ^%F2 zo1iek)&#fz1jr%5#u+3TF2`US$WDV5XCU)nNgm`q+~uG-*6uUg7(WN>8N(s&v0P{S SJnO4Saq|-Hvpiz?5UHOQTXMkw literal 0 HcmV?d00001 diff --git a/performance-test/.classpath b/performance-test/.classpath new file mode 100644 index 0000000..d46faf1 --- /dev/null +++ b/performance-test/.classpath @@ -0,0 +1,31 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/performance-test/.project b/performance-test/.project new file mode 100644 index 0000000..0c6383b --- /dev/null +++ b/performance-test/.project @@ -0,0 +1,34 @@ + + + feather-perftest + + + + + + org.eclipse.jdt.core.javabuilder + + + + + org.eclipse.m2e.core.maven2Builder + + + + + org.springframework.ide.eclipse.core.springbuilder + + + + + org.springframework.ide.eclipse.boot.validation.springbootbuilder + + + + + + org.springframework.ide.eclipse.core.springnature + org.eclipse.jdt.core.javanature + org.eclipse.m2e.core.maven2Nature + + diff --git a/performance-test/.settings/org.eclipse.core.resources.prefs b/performance-test/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 0000000..f022440 --- /dev/null +++ b/performance-test/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,4 @@ +eclipse.preferences.version=1 +encoding//src/test/java=UTF-8 +encoding//src/test/resources=UTF-8 +encoding/=UTF-8 diff --git a/performance-test/.settings/org.eclipse.jdt.core.prefs b/performance-test/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 0000000..714351a --- /dev/null +++ b/performance-test/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,5 @@ +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 +org.eclipse.jdt.core.compiler.compliance=1.8 +org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning +org.eclipse.jdt.core.compiler.source=1.8 diff --git a/performance-test/.settings/org.eclipse.m2e.core.prefs b/performance-test/.settings/org.eclipse.m2e.core.prefs new file mode 100644 index 0000000..f897a7f --- /dev/null +++ b/performance-test/.settings/org.eclipse.m2e.core.prefs @@ -0,0 +1,4 @@ +activeProfiles= +eclipse.preferences.version=1 +resolveWorkspaceProjects=true +version=1 diff --git a/performance-test/target/classes/META-INF/MANIFEST.MF b/performance-test/target/classes/META-INF/MANIFEST.MF new file mode 100644 index 0000000..c5baa62 --- /dev/null +++ b/performance-test/target/classes/META-INF/MANIFEST.MF @@ -0,0 +1,5 @@ +Manifest-Version: 1.0 +Built-By: edwin.njeru +Build-Jdk: 1.8.0_144 +Created-By: Maven Integration for Eclipse + diff --git a/performance-test/target/classes/META-INF/maven/org.codejargon.feather/feather-perftest/pom.properties b/performance-test/target/classes/META-INF/maven/org.codejargon.feather/feather-perftest/pom.properties new file mode 100644 index 0000000..bbb68e0 --- /dev/null +++ b/performance-test/target/classes/META-INF/maven/org.codejargon.feather/feather-perftest/pom.properties @@ -0,0 +1,7 @@ +#Generated by Maven Integration for Eclipse +#Wed Oct 11 08:02:30 EAT 2017 +version=1.0.1-SNAPSHOT +groupId=org.codejargon.feather +m2e.projectName=feather-perftest +m2e.projectLocation=C\:\\Users\\edwin.njeru\\Documents\\NetBeansProjects\\feather\\performance-test +artifactId=feather-perftest diff --git a/performance-test/target/classes/META-INF/maven/org.codejargon.feather/feather-perftest/pom.xml b/performance-test/target/classes/META-INF/maven/org.codejargon.feather/feather-perftest/pom.xml new file mode 100644 index 0000000..fe45e67 --- /dev/null +++ b/performance-test/target/classes/META-INF/maven/org.codejargon.feather/feather-perftest/pom.xml @@ -0,0 +1,70 @@ + + + 4.0.0 + + org.codejargon.feather + feather-parent + 1.0.1-SNAPSHOT + + jar + feather-perftest + Feather performance test + + + org.codejargon.feather + feather + ${project.version} + test + + + com.google.inject + guice + 4.0 + test + + + org.picocontainer + picocontainer + 2.15 + test + + + com.squareup.dagger + dagger + 1.2.2 + test + + + com.squareup.dagger + dagger-compiler + 1.2.2 + test + true + + + org.springframework + spring-context + 4.2.1.RELEASE + + + log4j + log4j + 1.2.17 + runtime + + + + + + org.apache.maven.plugins + maven-compiler-plugin + 3.3 + + 1.8 + 1.8 + + + + + \ No newline at end of file diff --git a/performance-test/target/test-classes/log4j.xml b/performance-test/target/test-classes/log4j.xml new file mode 100644 index 0000000..410bd5d --- /dev/null +++ b/performance-test/target/test-classes/log4j.xml @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/performance-test/target/test-classes/org/codejargon/feather/A.class b/performance-test/target/test-classes/org/codejargon/feather/A.class new file mode 100644 index 0000000000000000000000000000000000000000..0b7c6cbea673bfe876209efa2220829df5428903 GIT binary patch literal 579 zcmZ`$O-}+b5Pe;~1d+uL6fhpV2`2R7O=E&2Bql@?G2F{qpa|`zTM&Pi2V>&FAK;HN z&aTFj9NL*Toq2Cw`uX+#0pJXWId}|JW5+x&4{|E(*l0eI!cC;*?Htk!<*8T-J`;M( zZ--MEI0iOksQ1=PU7a&zFO*j9lHurNeOqI|P`g`br{;2?A~l@Jw${c8r;LsmD!o{F z#g&d#`E?SAJl&yH3rJzBh#X1`sguSa58AYd46+Pyo_;bwrfe9rIWR_yKAh~>KjZ64&Ozu+jW8@^Zm}HF1Z@@#IP?lZ_ z6gTN~spe5EG~ZBcp1#6=A>?73?oz^1LK;5Jm5B}5|LMjq_6X5jqQIzHA>`3}tl(32 LK(R_nwFvcZ@raAJ literal 0 HcmV?d00001 diff --git a/performance-test/target/test-classes/org/codejargon/feather/B.class b/performance-test/target/test-classes/org/codejargon/feather/B.class new file mode 100644 index 0000000000000000000000000000000000000000..86234ae93c2c995822bdf1ad7857dec3bfb9d9b4 GIT binary patch literal 579 zcmZ`$O-}+b5Pe;~1d+uL6fhpV2`2R7O=BV?Bql@?G2F{qpa|`zTM&Pi2V>&FAK;HN z&aTFj9NL*Toq2Cw`uX+#0pJXWId}|JW5+x&4{|E(*l0eI!cC;*?Htk!<*8T-J`;M( zZ--MEI0hCl)O%~DI_C`83#FC2WH>rm-_{r~)b1AAskt1eNDXK5N^9eUQ$|M&m0qm8 z;!4M={5lClp6<}91*EW5L=Gi})JbEI2W?tJ23ZEbr?k9T%!kt63u0y1>6t*x2EwWs z{}$73qDW?~kv3@+`etDR*;O%1w%v+1VrV9&qR=Wm9$7J$PsTp-$Vn@Wdk!VCU+_NF>(@HOfp91H{c;pC`&H| ziko!0RP!hnnr|pJPha7`5c051cPU{hAq}7A%ESij|8!#)dxU5%QD9W95c23fR`4l1 LpjaiPT7>#H`*VxE literal 0 HcmV?d00001 diff --git a/performance-test/target/test-classes/org/codejargon/feather/C.class b/performance-test/target/test-classes/org/codejargon/feather/C.class new file mode 100644 index 0000000000000000000000000000000000000000..3337200b608c72a1eb973dfd81ce87f8b86f9f9c GIT binary patch literal 681 zcmaJ;U279T6g{&^lP1O{jaK{NSKrzw9U6R*N};S23PHh2z{kmUnogR`EVGlg{wyDg z;DbNFA0?hy#V1pSow?`UbI-Y#{rT(r4*;+6ypBX*-TAT1+?k#zKXz80YZWfEmuVeU zfzCu-DLGYkEI*7UItv2H*}lNmU_slv{ewv9-$m(@QhRHx35No2cJ7c`Sn40_4h1$o z&TTL=Jv4yGjN%j4wW|%|4mlIg`wf*qG40IHc#E$XZqMgm0G$N zXA|g^Ek*8)9iMwO)7Q>l$|7j5UHFn~nYvl-thRv?d;cY8&IWxGr24nJJk4CL*|2n_ zrgPdga_>T^hiz_G;m=Rdjmt9X##Q+Wo(7t%+#{+HwfNrW_nEoa)9!u4O7G<@R(r2* z@!%^{3D$UbQH^EZ9ZIZXg_%dpy!g|G$5AHat) z-d5vE7VW)fdd_!m+t07}4*+MVX5cYYjU98}Jj$uCW25;<3OA9KcbXX_8H!V}6nrN1 znBNVj(svB$bETELWH_$%)`YvQ(*dFH7uu=09H>wYXYxvG>vFzF_W;79BB>NIHt zqx9iAN0$t_zFAmbUaM$MrqgUht1{H%Oc+?D$0IA|^4ZuY9y)2IaW8@7Z8Hyymf8`c z@vqr8+R2sU;_p-NzHb6afz(pW7Bnv#SmRgB| zjN-~JCO7Bip2uZAzurFp>|?8dKw#6lfeh^}4V4>MBkxH0dvdbVE+8vV8>*?2BV`8i zvOlEI3kVXZcW2N}4+Qdu+Gu|yu)RBbtkGldtBLV?Og$az{)mo^v0iy?O)Rk5O`M;k zHi@e|PYa7@PdIA{87!1hKt&+4+vpX+Nz2F~FHr4jLl={ApWKaNRe`0h4b`ZpoKEm> zGwbg)+icBB*lDv_>Do?QNM|~cDRkPcB$GfhCB>1`W^m`!m>#Wrkg+F6);~uiPwY6d zhKy&8*1yA{HJ+ZlRDV0m>(EBTgxpk(ChS*?ob{<5c6h%G|1{nuSu(wGAj}~^kx`ys zN?hmpJL6u!wbXn=xw-d>>I>{rCe-{T#)iha&p{6L!iG>Yb6t9VtG4X zQRD@}3vIN&6sRAc%mf-Ep6#HHb{7Fcf!;(Lx+&5*xqCHFNMJCrkxFLD=~Dj`8-A&C zfy2pv|DOwVrnYbqUF$L>9G{lU2prrM#_N=3I@g?cWsLR8Yil@eSjFX;(6j=+cDbAp)- w2pOBKWTk;%_=eUi7i#D*mTjPg4aRQu4wyHq{#J!O^qG6?-)0`LXD7$*H?_BI00000 literal 0 HcmV?d00001 diff --git a/performance-test/target/test-classes/org/codejargon/feather/StartupComparisonTest$DaggerModule.class b/performance-test/target/test-classes/org/codejargon/feather/StartupComparisonTest$DaggerModule.class new file mode 100644 index 0000000000000000000000000000000000000000..e12b98cec8a228d909d5eae4f9d2f2bc2f3e2b2e GIT binary patch literal 727 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 C@TF1! literal 0 HcmV?d00001 diff --git a/performance-test/target/test-classes/org/codejargon/feather/StopWatch.class b/performance-test/target/test-classes/org/codejargon/feather/StopWatch.class new file mode 100644 index 0000000000000000000000000000000000000000..7471d6e7d978d3c8b82724804dc48c3bebd1621a GIT binary patch literal 980 zcmah|+iuf95Ix&Cb?Ta?O)uObEfkXUV(z85LPAJ9RDmK=6;(WKoo(vMSyvmo5+A?^ z!2=W|_y9f%ah#+il`3IbJ3F(pbIuu$fB*UM3&106*ccHg$EM{4aZ?>i(~7mXuViwd zjMqrwqxUii4s2KglZWzHdXdyEZ)@*R1&P4uMySK&xj?Q`-4U=}vW9~k#$4nvDp0J4 zTD?izd&+Ffy+{d^>Tw{W9cjYM?+2~qAnXV%)c?oBCuBQ}qAa^wsSgM>5)@n6^w zOk>WZdW;CyTwKQu`fmmU!lNXNnN=Es?&Am) z*wOB{6POt~KkYk*Am2%(p&GHtekB;I3v=F%PD3-hmPBIGJ2+ zdLFHy&DXx6@VR^JaLtav3*%hfUIOg}dSjSCk&*23Cwil_D<_zIvGg5t0^F@xUvRZ_ zGyfC0-CV7)Yt30@b%OcE3GRNy$^c}JJcta7MI06^qJU+V%s^|5vM?U<56zwxJjN5k XTBu?TPpP7a8(8PgV)Pj^M&SPioh9W7 literal 0 HcmV?d00001 diff --git a/pom.xml b/pom.xml index e7652c1..ca3fc41 100644 --- a/pom.xml +++ b/pom.xml @@ -1,148 +1,148 @@ - 4.0.0 - org.codejargon.feather - feather-parent - 1.0.1-SNAPSHOT - pom - Feather Parent - https://github.com/zsoltherpai/feather - - feather - - + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> + 4.0.0 + org.codejargon.feather + feather-parent + 1.0.1-SNAPSHOT + pom + Feather Parent + https://github.com/zsoltherpai/feather + + feather + + Feather is an ultra-lightweight dependency injection (JSR-330) library for Java and Android. - - - The Apache Software License, Version 2.0 - http://www.apache.org/licenses/LICENSE-2.0.txt - repo - - - - - Zsolt Herpai - zsolt.herpai@gmail.com - - - - UTF-8 - 1.7 - 1.7 - - - scm:git:https://github.com/zsoltherpai/feather.git - scm:git:git@github.com:zsoltherpai/feather.git - https://github.com/zsoltherpai/feather - - - - junit - junit - 4.12 - test - - - org.mockito - mockito-core - 1.9.5 - test - - - - - ossrh-release - - - ossrh - https://oss.sonatype.org/content/repositories/snapshots - - - ossrh - https://oss.sonatype.org/service/local/staging/deploy/maven2/ - - - - - - org.apache.maven.plugins - maven-source-plugin - 2.2.1 - - - attach-sources - - jar-no-fork - - - - - - org.apache.maven.plugins - maven-javadoc-plugin - 2.9.1 - - - attach-javadocs - - jar - - - - - - org.sonatype.plugins - nexus-staging-maven-plugin - 1.6.3 - true - - ossrh - https://oss.sonatype.org/ - true - - - - org.apache.maven.plugins - maven-gpg-plugin - 1.5 - - - sign-artifacts - verify - - sign - - - - - - org.apache.maven.plugins - maven-compiler-plugin - 3.3 - - true - false - 1.7 - 1.7 - - - - - - - - - - org.apache.maven.plugins - maven-compiler-plugin - 3.3 - - 1.7 - 1.7 - - - - + + + The Apache Software License, Version 2.0 + http://www.apache.org/licenses/LICENSE-2.0.txt + repo + + + + + Zsolt Herpai + zsolt.herpai@gmail.com + + + + UTF-8 + 1.7 + 1.7 + + + scm:git:https://github.com/zsoltherpai/feather.git + scm:git:git@github.com:zsoltherpai/feather.git + https://github.com/zsoltherpai/feather + + + + junit + junit + 4.12 + test + + + org.mockito + mockito-core + 1.9.5 + test + + + + + ossrh-release + + + ossrh + https://oss.sonatype.org/content/repositories/snapshots + + + ossrh + https://oss.sonatype.org/service/local/staging/deploy/maven2/ + + + + + + org.apache.maven.plugins + maven-source-plugin + 2.2.1 + + + attach-sources + + jar-no-fork + + + + + + org.apache.maven.plugins + maven-javadoc-plugin + 2.9.1 + + + attach-javadocs + + jar + + + + + + org.sonatype.plugins + nexus-staging-maven-plugin + 1.6.3 + true + + ossrh + https://oss.sonatype.org/ + true + + + + org.apache.maven.plugins + maven-gpg-plugin + 1.5 + + + sign-artifacts + verify + + sign + + + + + + org.apache.maven.plugins + maven-compiler-plugin + 3.3 + + true + false + 1.7 + 1.7 + + + + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + 3.3 + + 1.7 + 1.7 + + + + \ No newline at end of file From 966bad720631a103d7b44c1c0e7cc8bb0d866590 Mon Sep 17 00:00:00 2001 From: Edwin Njeru Date: Wed, 11 Oct 2017 08:20:58 +0300 Subject: [PATCH 02/11] Create .travis.yml --- .travis.yml | 1 + 1 file changed, 1 insertion(+) create mode 100644 .travis.yml diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 0000000..dff5f3a --- /dev/null +++ b/.travis.yml @@ -0,0 +1 @@ +language: java From 0a8e670a36de6914a42447bbc8bc1e1dda937154 Mon Sep 17 00:00:00 2001 From: Edwin Njeru Date: Wed, 11 Oct 2017 08:22:26 +0300 Subject: [PATCH 03/11] Update README.md --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index b721212..ec43214 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,5 @@ #### About Feather +[![Build Status](https://travis-ci.org/ghacupha/feather.svg?branch=master)](https://travis-ci.org/ghacupha/feather) [Feather](http://zsoltherpai.github.io/feather) is an ultra-lightweight dependency injection ([JSR-330](https://jcp.org/en/jsr/detail?id=330 "JSR-330")) library for Java and Android. Dependency injection frameworks are often perceived as "magical" and complex. Feather - with just a few hundred lines of code - is probably the easiest, tiniest, most obvious one, From 8d4a13fad8b8bcc10a0c42c6c8967fc7d725513d Mon Sep 17 00:00:00 2001 From: Edwin Njeru Date: Wed, 11 Oct 2017 08:22:58 +0300 Subject: [PATCH 04/11] Update README.md --- README.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index ec43214..efd3b29 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,7 @@ -#### About Feather [![Build Status](https://travis-ci.org/ghacupha/feather.svg?branch=master)](https://travis-ci.org/ghacupha/feather) + +#### About Feather + [Feather](http://zsoltherpai.github.io/feather) is an ultra-lightweight dependency injection ([JSR-330](https://jcp.org/en/jsr/detail?id=330 "JSR-330")) library for Java and Android. Dependency injection frameworks are often perceived as "magical" and complex. Feather - with just a few hundred lines of code - is probably the easiest, tiniest, most obvious one, From ac0c3913c8fb32251eb18d6b50f681fcc3dddcdd Mon Sep 17 00:00:00 2001 From: Edwin Njeru Date: Wed, 18 Apr 2018 09:38:26 +0300 Subject: [PATCH 05/11] ignored IDE file in the project --- .gitignore | 83 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 83 insertions(+) create mode 100644 .gitignore diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..c33ec0f --- /dev/null +++ b/.gitignore @@ -0,0 +1,83 @@ +# +# Created with help from www.gitignore.io +# + + +####################################################################### +# Intellij +# Created by https://www.gitignore.io/api/intellij +# +# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio and Webstorm +# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839 + +## File-based project format: +*.iws + +## Plugin-specific files: + +# IntelliJ +/out/ +/.idea/ + +# mpeltonen/sbt-idea plugin +.idea_modules/ + +# JIRA plugin +atlassian-ide-plugin.xml + +# Crashlytics plugin (for Android Studio and IntelliJ) +com_crashlytics_export_strings.xml +crashlytics.properties +crashlytics-build.properties +fabric.properties + +### Intellij Patch ### +*.iml +*.ipr + + +####################################################################### +# Maven +# Created by https://www.gitignore.io/api/maven +# +target/ +pom.xml.tag +pom.xml.releaseBackup +pom.xml.versionsBackup +pom.xml.next +release.properties +dependency-reduced-pom.xml +buildNumber.properties +.mvn/timing.properties + + +####################################################################### +# OSX +# Created by https://www.gitignore.io/api/osx +# +.DS_Store +.AppleDouble +.LSOverride + +# Icon must end with two \r +Icon + + +# Thumbnails +._* + +# Files that might appear in the root of a volume +.DocumentRevisions-V100 +.fseventsd +.Spotlight-V100 +.TemporaryItems +.Trashes +.VolumeIcon.icns + +# Directories potentially created on remote AFP share +.AppleDB +.AppleDesktop +Network Trash Folder +Temporary Items +.apdisk + From 67f9afc3f79bc2d6c2576c7313b42b1f7ff86272 Mon Sep 17 00:00:00 2001 From: Edwin Njeru Date: Wed, 18 Apr 2018 09:40:50 +0300 Subject: [PATCH 06/11] ignored IDE file in the project --- .project | 17 ---------- .settings/org.eclipse.core.resources.prefs | 2 -- .settings/org.eclipse.m2e.core.prefs | 4 --- README.md | 1 - feather/.classpath | 26 -------------- feather/.project | 23 ------------- .../org.eclipse.core.resources.prefs | 4 --- feather/.settings/org.eclipse.jdt.core.prefs | 5 --- feather/.settings/org.eclipse.m2e.core.prefs | 4 --- performance-test/.classpath | 31 ----------------- performance-test/.project | 34 ------------------- .../org.eclipse.core.resources.prefs | 4 --- .../.settings/org.eclipse.jdt.core.prefs | 5 --- .../.settings/org.eclipse.m2e.core.prefs | 4 --- 14 files changed, 164 deletions(-) delete mode 100644 .project delete mode 100644 .settings/org.eclipse.core.resources.prefs delete mode 100644 .settings/org.eclipse.m2e.core.prefs delete mode 100644 feather/.classpath delete mode 100644 feather/.project delete mode 100644 feather/.settings/org.eclipse.core.resources.prefs delete mode 100644 feather/.settings/org.eclipse.jdt.core.prefs delete mode 100644 feather/.settings/org.eclipse.m2e.core.prefs delete mode 100644 performance-test/.classpath delete mode 100644 performance-test/.project delete mode 100644 performance-test/.settings/org.eclipse.core.resources.prefs delete mode 100644 performance-test/.settings/org.eclipse.jdt.core.prefs delete mode 100644 performance-test/.settings/org.eclipse.m2e.core.prefs diff --git a/.project b/.project deleted file mode 100644 index ae31195..0000000 --- a/.project +++ /dev/null @@ -1,17 +0,0 @@ - - - feather-parent - - - - - - org.eclipse.m2e.core.maven2Builder - - - - - - org.eclipse.m2e.core.maven2Nature - - diff --git a/.settings/org.eclipse.core.resources.prefs b/.settings/org.eclipse.core.resources.prefs deleted file mode 100644 index 99f26c0..0000000 --- a/.settings/org.eclipse.core.resources.prefs +++ /dev/null @@ -1,2 +0,0 @@ -eclipse.preferences.version=1 -encoding/=UTF-8 diff --git a/.settings/org.eclipse.m2e.core.prefs b/.settings/org.eclipse.m2e.core.prefs deleted file mode 100644 index f897a7f..0000000 --- a/.settings/org.eclipse.m2e.core.prefs +++ /dev/null @@ -1,4 +0,0 @@ -activeProfiles= -eclipse.preferences.version=1 -resolveWorkspaceProjects=true -version=1 diff --git a/README.md b/README.md index efd3b29..ef511f0 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,3 @@ -[![Build Status](https://travis-ci.org/ghacupha/feather.svg?branch=master)](https://travis-ci.org/ghacupha/feather) #### About Feather diff --git a/feather/.classpath b/feather/.classpath deleted file mode 100644 index f619a53..0000000 --- a/feather/.classpath +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/feather/.project b/feather/.project deleted file mode 100644 index bd9f541..0000000 --- a/feather/.project +++ /dev/null @@ -1,23 +0,0 @@ - - - feather - - - - - - org.eclipse.jdt.core.javabuilder - - - - - org.eclipse.m2e.core.maven2Builder - - - - - - org.eclipse.jdt.core.javanature - org.eclipse.m2e.core.maven2Nature - - diff --git a/feather/.settings/org.eclipse.core.resources.prefs b/feather/.settings/org.eclipse.core.resources.prefs deleted file mode 100644 index f9fe345..0000000 --- a/feather/.settings/org.eclipse.core.resources.prefs +++ /dev/null @@ -1,4 +0,0 @@ -eclipse.preferences.version=1 -encoding//src/main/java=UTF-8 -encoding//src/test/java=UTF-8 -encoding/=UTF-8 diff --git a/feather/.settings/org.eclipse.jdt.core.prefs b/feather/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index ec4300d..0000000 --- a/feather/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,5 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7 -org.eclipse.jdt.core.compiler.compliance=1.7 -org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning -org.eclipse.jdt.core.compiler.source=1.7 diff --git a/feather/.settings/org.eclipse.m2e.core.prefs b/feather/.settings/org.eclipse.m2e.core.prefs deleted file mode 100644 index f897a7f..0000000 --- a/feather/.settings/org.eclipse.m2e.core.prefs +++ /dev/null @@ -1,4 +0,0 @@ -activeProfiles= -eclipse.preferences.version=1 -resolveWorkspaceProjects=true -version=1 diff --git a/performance-test/.classpath b/performance-test/.classpath deleted file mode 100644 index d46faf1..0000000 --- a/performance-test/.classpath +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/performance-test/.project b/performance-test/.project deleted file mode 100644 index 0c6383b..0000000 --- a/performance-test/.project +++ /dev/null @@ -1,34 +0,0 @@ - - - feather-perftest - - - - - - org.eclipse.jdt.core.javabuilder - - - - - org.eclipse.m2e.core.maven2Builder - - - - - org.springframework.ide.eclipse.core.springbuilder - - - - - org.springframework.ide.eclipse.boot.validation.springbootbuilder - - - - - - org.springframework.ide.eclipse.core.springnature - org.eclipse.jdt.core.javanature - org.eclipse.m2e.core.maven2Nature - - diff --git a/performance-test/.settings/org.eclipse.core.resources.prefs b/performance-test/.settings/org.eclipse.core.resources.prefs deleted file mode 100644 index f022440..0000000 --- a/performance-test/.settings/org.eclipse.core.resources.prefs +++ /dev/null @@ -1,4 +0,0 @@ -eclipse.preferences.version=1 -encoding//src/test/java=UTF-8 -encoding//src/test/resources=UTF-8 -encoding/=UTF-8 diff --git a/performance-test/.settings/org.eclipse.jdt.core.prefs b/performance-test/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index 714351a..0000000 --- a/performance-test/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,5 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 -org.eclipse.jdt.core.compiler.compliance=1.8 -org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning -org.eclipse.jdt.core.compiler.source=1.8 diff --git a/performance-test/.settings/org.eclipse.m2e.core.prefs b/performance-test/.settings/org.eclipse.m2e.core.prefs deleted file mode 100644 index f897a7f..0000000 --- a/performance-test/.settings/org.eclipse.m2e.core.prefs +++ /dev/null @@ -1,4 +0,0 @@ -activeProfiles= -eclipse.preferences.version=1 -resolveWorkspaceProjects=true -version=1 From 8b2b571b04a02ebcaa08b9f3a14ad1dbf11c000b Mon Sep 17 00:00:00 2001 From: Edwin Njeru Date: Wed, 18 Apr 2018 09:51:38 +0300 Subject: [PATCH 07/11] added phases to the travis configuration --- .gitignore | 1 + .travis.yml | 17 +++++ feather/target/classes/META-INF/MANIFEST.MF | 5 -- .../feather/pom.properties | 7 -- .../org.codejargon.feather/feather/pom.xml | 19 ----- .../org/codejargon/feather/Feather$1.class | Bin 647 -> 0 bytes .../org/codejargon/feather/Feather$2.class | Bin 1619 -> 0 bytes .../org/codejargon/feather/Feather$3.class | Bin 1686 -> 0 bytes .../org/codejargon/feather/Feather$4.class | Bin 1479 -> 0 bytes .../org/codejargon/feather/Feather$5.class | Bin 1107 -> 0 bytes .../org/codejargon/feather/Feather$6.class | Bin 1018 -> 0 bytes .../org/codejargon/feather/Feather.class | Bin 14157 -> 0 bytes .../codejargon/feather/FeatherException.class | Bin 631 -> 0 bytes .../classes/org/codejargon/feather/Key.class | Bin 3499 -> 0 bytes .../org/codejargon/feather/Provides.class | Bin 392 -> 0 bytes .../feather/AmbiguousModuleTest$Module.class | Bin 677 -> 0 bytes .../feather/AmbiguousModuleTest.class | Bin 753 -> 0 bytes .../CircularDependencyTest$Circle1.class | Bin 756 -> 0 bytes .../CircularDependencyTest$Circle2.class | Bin 756 -> 0 bytes ...arDependencyTest$CircleWithProvider1.class | Bin 1053 -> 0 bytes ...arDependencyTest$CircleWithProvider2.class | Bin 1185 -> 0 bytes .../feather/CircularDependencyTest.class | Bin 1824 -> 0 bytes .../feather/DependencyTest$Plain.class | Bin 407 -> 0 bytes .../feather/DependencyTest$Unknown.class | Bin 496 -> 0 bytes .../codejargon/feather/DependencyTest.class | Bin 1516 -> 0 bytes .../feather/FieldInjectionTest$A.class | Bin 411 -> 0 bytes .../feather/FieldInjectionTest$Target.class | Bin 783 -> 0 bytes .../feather/FieldInjectionTest.class | Bin 1116 -> 0 bytes .../ModuleOverrideTest$FooModule.class | Bin 602 -> 0 bytes ...ModuleOverrideTest$FooOverrideModule.class | Bin 687 -> 0 bytes .../feather/ModuleOverrideTest$Plain.class | Bin 423 -> 0 bytes .../ModuleOverrideTest$PlainStub.class | Bin 482 -> 0 bytes ...OverrideTest$PlainStubOverrideModule.class | Bin 950 -> 0 bytes .../feather/ModuleOverrideTest.class | Bin 1531 -> 0 bytes ...NamedDependencyTest$HelloWorldModule.class | Bin 772 -> 0 bytes .../feather/NamedDependencyTest.class | Bin 1154 -> 0 bytes ...PojoProvidedThroughModuleTest$Module.class | Bin 804 -> 0 bytes .../PojoProvidedThroughModuleTest$Pojo.class | Bin 556 -> 0 bytes .../PojoProvidedThroughModuleTest.class | Bin 1189 -> 0 bytes .../PolymorphicDependencyTest$Foo.class | Bin 249 -> 0 bytes .../PolymorphicDependencyTest$FooA.class | Bin 590 -> 0 bytes .../PolymorphicDependencyTest$FooB.class | Bin 590 -> 0 bytes .../PolymorphicDependencyTest$Module.class | Bin 1317 -> 0 bytes .../feather/PolymorphicDependencyTest.class | Bin 1385 -> 0 bytes .../feather/ProviderInjectionTest$A.class | Bin 1027 -> 0 bytes .../feather/ProviderInjectionTest$B.class | Bin 423 -> 0 bytes .../feather/ProviderInjectionTest.class | Bin 1116 -> 0 bytes .../feather/QualifiedDependencyTest$A.class | Bin 450 -> 0 bytes .../feather/QualifiedDependencyTest$B.class | Bin 450 -> 0 bytes .../QualifiedDependencyTest$Dummy.class | Bin 1079 -> 0 bytes ...ualifiedDependencyTest$DummyTestUnit.class | Bin 984 -> 0 bytes .../feather/QualifiedDependencyTest$Foo.class | Bin 243 -> 0 bytes .../QualifiedDependencyTest$FooA.class | Bin 512 -> 0 bytes .../QualifiedDependencyTest$FooB.class | Bin 512 -> 0 bytes .../QualifiedDependencyTest$Module.class | Bin 1484 -> 0 bytes .../feather/QualifiedDependencyTest.class | Bin 2476 -> 0 bytes .../feather/SingletonTest$Plain.class | Bin 403 -> 0 bytes .../feather/SingletonTest$SingletonObj.class | Bin 491 -> 0 bytes .../codejargon/feather/SingletonTest.class | Bin 1539 -> 0 bytes .../feather/TransitiveDependencyTest$A.class | Bin 891 -> 0 bytes .../feather/TransitiveDependencyTest$B.class | Bin 891 -> 0 bytes .../feather/TransitiveDependencyTest$C.class | Bin 435 -> 0 bytes .../feather/TransitiveDependencyTest.class | Bin 1346 -> 0 bytes .../target/classes/META-INF/MANIFEST.MF | 5 -- .../feather-perftest/pom.properties | 7 -- .../feather-perftest/pom.xml | 70 ------------------ .../target/test-classes/log4j.xml | 20 ----- .../org/codejargon/feather/A.class | Bin 579 -> 0 bytes .../org/codejargon/feather/B.class | Bin 579 -> 0 bytes .../org/codejargon/feather/C.class | Bin 681 -> 0 bytes .../org/codejargon/feather/D1.class | Bin 555 -> 0 bytes .../org/codejargon/feather/D2.class | Bin 582 -> 0 bytes .../org/codejargon/feather/E.class | Bin 437 -> 0 bytes .../StartupComparisonTest$DaggerModule.class | Bin 727 -> 0 bytes .../feather/StartupComparisonTest.class | Bin 4674 -> 0 bytes .../org/codejargon/feather/StopWatch.class | Bin 980 -> 0 bytes 76 files changed, 18 insertions(+), 133 deletions(-) delete mode 100644 feather/target/classes/META-INF/MANIFEST.MF delete mode 100644 feather/target/classes/META-INF/maven/org.codejargon.feather/feather/pom.properties delete mode 100644 feather/target/classes/META-INF/maven/org.codejargon.feather/feather/pom.xml delete mode 100644 feather/target/classes/org/codejargon/feather/Feather$1.class delete mode 100644 feather/target/classes/org/codejargon/feather/Feather$2.class delete mode 100644 feather/target/classes/org/codejargon/feather/Feather$3.class delete mode 100644 feather/target/classes/org/codejargon/feather/Feather$4.class delete mode 100644 feather/target/classes/org/codejargon/feather/Feather$5.class delete mode 100644 feather/target/classes/org/codejargon/feather/Feather$6.class delete mode 100644 feather/target/classes/org/codejargon/feather/Feather.class delete mode 100644 feather/target/classes/org/codejargon/feather/FeatherException.class delete mode 100644 feather/target/classes/org/codejargon/feather/Key.class delete mode 100644 feather/target/classes/org/codejargon/feather/Provides.class delete mode 100644 feather/target/test-classes/org/codejargon/feather/AmbiguousModuleTest$Module.class delete mode 100644 feather/target/test-classes/org/codejargon/feather/AmbiguousModuleTest.class delete mode 100644 feather/target/test-classes/org/codejargon/feather/CircularDependencyTest$Circle1.class delete mode 100644 feather/target/test-classes/org/codejargon/feather/CircularDependencyTest$Circle2.class delete mode 100644 feather/target/test-classes/org/codejargon/feather/CircularDependencyTest$CircleWithProvider1.class delete mode 100644 feather/target/test-classes/org/codejargon/feather/CircularDependencyTest$CircleWithProvider2.class delete mode 100644 feather/target/test-classes/org/codejargon/feather/CircularDependencyTest.class delete mode 100644 feather/target/test-classes/org/codejargon/feather/DependencyTest$Plain.class delete mode 100644 feather/target/test-classes/org/codejargon/feather/DependencyTest$Unknown.class delete mode 100644 feather/target/test-classes/org/codejargon/feather/DependencyTest.class delete mode 100644 feather/target/test-classes/org/codejargon/feather/FieldInjectionTest$A.class delete mode 100644 feather/target/test-classes/org/codejargon/feather/FieldInjectionTest$Target.class delete mode 100644 feather/target/test-classes/org/codejargon/feather/FieldInjectionTest.class delete mode 100644 feather/target/test-classes/org/codejargon/feather/ModuleOverrideTest$FooModule.class delete mode 100644 feather/target/test-classes/org/codejargon/feather/ModuleOverrideTest$FooOverrideModule.class delete mode 100644 feather/target/test-classes/org/codejargon/feather/ModuleOverrideTest$Plain.class delete mode 100644 feather/target/test-classes/org/codejargon/feather/ModuleOverrideTest$PlainStub.class delete mode 100644 feather/target/test-classes/org/codejargon/feather/ModuleOverrideTest$PlainStubOverrideModule.class delete mode 100644 feather/target/test-classes/org/codejargon/feather/ModuleOverrideTest.class delete mode 100644 feather/target/test-classes/org/codejargon/feather/NamedDependencyTest$HelloWorldModule.class delete mode 100644 feather/target/test-classes/org/codejargon/feather/NamedDependencyTest.class delete mode 100644 feather/target/test-classes/org/codejargon/feather/PojoProvidedThroughModuleTest$Module.class delete mode 100644 feather/target/test-classes/org/codejargon/feather/PojoProvidedThroughModuleTest$Pojo.class delete mode 100644 feather/target/test-classes/org/codejargon/feather/PojoProvidedThroughModuleTest.class delete mode 100644 feather/target/test-classes/org/codejargon/feather/PolymorphicDependencyTest$Foo.class delete mode 100644 feather/target/test-classes/org/codejargon/feather/PolymorphicDependencyTest$FooA.class delete mode 100644 feather/target/test-classes/org/codejargon/feather/PolymorphicDependencyTest$FooB.class delete mode 100644 feather/target/test-classes/org/codejargon/feather/PolymorphicDependencyTest$Module.class delete mode 100644 feather/target/test-classes/org/codejargon/feather/PolymorphicDependencyTest.class delete mode 100644 feather/target/test-classes/org/codejargon/feather/ProviderInjectionTest$A.class delete mode 100644 feather/target/test-classes/org/codejargon/feather/ProviderInjectionTest$B.class delete mode 100644 feather/target/test-classes/org/codejargon/feather/ProviderInjectionTest.class delete mode 100644 feather/target/test-classes/org/codejargon/feather/QualifiedDependencyTest$A.class delete mode 100644 feather/target/test-classes/org/codejargon/feather/QualifiedDependencyTest$B.class delete mode 100644 feather/target/test-classes/org/codejargon/feather/QualifiedDependencyTest$Dummy.class delete mode 100644 feather/target/test-classes/org/codejargon/feather/QualifiedDependencyTest$DummyTestUnit.class delete mode 100644 feather/target/test-classes/org/codejargon/feather/QualifiedDependencyTest$Foo.class delete mode 100644 feather/target/test-classes/org/codejargon/feather/QualifiedDependencyTest$FooA.class delete mode 100644 feather/target/test-classes/org/codejargon/feather/QualifiedDependencyTest$FooB.class delete mode 100644 feather/target/test-classes/org/codejargon/feather/QualifiedDependencyTest$Module.class delete mode 100644 feather/target/test-classes/org/codejargon/feather/QualifiedDependencyTest.class delete mode 100644 feather/target/test-classes/org/codejargon/feather/SingletonTest$Plain.class delete mode 100644 feather/target/test-classes/org/codejargon/feather/SingletonTest$SingletonObj.class delete mode 100644 feather/target/test-classes/org/codejargon/feather/SingletonTest.class delete mode 100644 feather/target/test-classes/org/codejargon/feather/TransitiveDependencyTest$A.class delete mode 100644 feather/target/test-classes/org/codejargon/feather/TransitiveDependencyTest$B.class delete mode 100644 feather/target/test-classes/org/codejargon/feather/TransitiveDependencyTest$C.class delete mode 100644 feather/target/test-classes/org/codejargon/feather/TransitiveDependencyTest.class delete mode 100644 performance-test/target/classes/META-INF/MANIFEST.MF delete mode 100644 performance-test/target/classes/META-INF/maven/org.codejargon.feather/feather-perftest/pom.properties delete mode 100644 performance-test/target/classes/META-INF/maven/org.codejargon.feather/feather-perftest/pom.xml delete mode 100644 performance-test/target/test-classes/log4j.xml delete mode 100644 performance-test/target/test-classes/org/codejargon/feather/A.class delete mode 100644 performance-test/target/test-classes/org/codejargon/feather/B.class delete mode 100644 performance-test/target/test-classes/org/codejargon/feather/C.class delete mode 100644 performance-test/target/test-classes/org/codejargon/feather/D1.class delete mode 100644 performance-test/target/test-classes/org/codejargon/feather/D2.class delete mode 100644 performance-test/target/test-classes/org/codejargon/feather/E.class delete mode 100644 performance-test/target/test-classes/org/codejargon/feather/StartupComparisonTest$DaggerModule.class delete mode 100644 performance-test/target/test-classes/org/codejargon/feather/StartupComparisonTest.class delete mode 100644 performance-test/target/test-classes/org/codejargon/feather/StopWatch.class diff --git a/.gitignore b/.gitignore index c33ec0f..02cf4b1 100644 --- a/.gitignore +++ b/.gitignore @@ -18,6 +18,7 @@ # IntelliJ /out/ /.idea/ +/target/ # mpeltonen/sbt-idea plugin .idea_modules/ diff --git a/.travis.yml b/.travis.yml index dff5f3a..16b3c05 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1 +1,18 @@ language: java +install: true + +script: +- mvn verify +- mvn compile +- mvn test +- mvn validate +- mvn jar:jar +- mvn jar:test-jar +- mvn source:jar +- mvn source:test-jar +- mvn spotbugs:check +- mvn surefire:test +- mvn clean package +- mvn clean install +jdk: + - oraclejdk8 diff --git a/feather/target/classes/META-INF/MANIFEST.MF b/feather/target/classes/META-INF/MANIFEST.MF deleted file mode 100644 index c5baa62..0000000 --- a/feather/target/classes/META-INF/MANIFEST.MF +++ /dev/null @@ -1,5 +0,0 @@ -Manifest-Version: 1.0 -Built-By: edwin.njeru -Build-Jdk: 1.8.0_144 -Created-By: Maven Integration for Eclipse - diff --git a/feather/target/classes/META-INF/maven/org.codejargon.feather/feather/pom.properties b/feather/target/classes/META-INF/maven/org.codejargon.feather/feather/pom.properties deleted file mode 100644 index 9dd0c33..0000000 --- a/feather/target/classes/META-INF/maven/org.codejargon.feather/feather/pom.properties +++ /dev/null @@ -1,7 +0,0 @@ -#Generated by Maven Integration for Eclipse -#Wed Oct 11 08:03:07 EAT 2017 -version=1.0.1-SNAPSHOT -groupId=org.codejargon.feather -m2e.projectName=feather -m2e.projectLocation=C\:\\Users\\edwin.njeru\\Documents\\NetBeansProjects\\feather\\feather -artifactId=feather diff --git a/feather/target/classes/META-INF/maven/org.codejargon.feather/feather/pom.xml b/feather/target/classes/META-INF/maven/org.codejargon.feather/feather/pom.xml deleted file mode 100644 index 5b3aa20..0000000 --- a/feather/target/classes/META-INF/maven/org.codejargon.feather/feather/pom.xml +++ /dev/null @@ -1,19 +0,0 @@ - - - 4.0.0 - - org.codejargon.feather - feather-parent - 1.0.1-SNAPSHOT - - feather - Feather - - - javax.inject - javax.inject - 1 - - - \ No newline at end of file diff --git a/feather/target/classes/org/codejargon/feather/Feather$1.class b/feather/target/classes/org/codejargon/feather/Feather$1.class deleted file mode 100644 index 36424f25c7b588c2ac3d14a20e0afc4517fbe74a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 647 zcmah`O-lnY5Pj*^uC1$9t>2$$54DPGQBbIO5e1=sfYN)qjoXwp3)xltS$Yt`gFnC@ zCC=0yiU$oOlX>%I=4JBv_5J~1534RR0&B4i{UC0uuC!rn{5vJnj4tPLBmPD*ur; zn*!MrlA4FWs0SCr1vnV@kVjF#sW4%@p^dtHxNj+YD_fBgm~6y>jGEGF_WNL#B?_$n z)3aP7iB70efl_6&@p}psEZoEoHc)4pTY3Gd?J$wFoSGnt6K%o^m3HE`i$#HzzemE4 zSr(YB3^Y4Wm1XU9exP@5jIt+@OcIq~jYi?n9)c(qc_Q?+8QOUi2pyr@A^D6Hs#~w{ zs&5#3>2W3)>qR(wACu&Jl*8y0N@VGSG1ITIO_pPs>NB6<>|75y7|6`@GabzKSaX;s Qo5cc_utGQ1#8qg011_V1SwN8jCM6`qPnYG=E|lG7_wq{kp#CCF zctxXr_eUA$ZfmJZYm@DL?97>&GiUb4&(GfgOkhbv4MWs%GluDGh%N4B9NX9wTxNx9 z%oWywaScI+$QIw@MvmJVV|jf`m{LQCp-tT$7?!PWj5n^cXKe_VAtbYwH*lN4Q`OO@ z7@GHZZoqVGPrAFNbjZ6ebrH-Jn>mG@yf7f27Uh%YF5meb(_`p(>-+ta4%utUep?(e zbXQ7fK^&4{Xxg$Z`GjFFR>`o)%hZ38tdvY8SQS6M$`DLaE9${;RfmQ;wQJK+kFeTZ z)6oE3?K*WdqA833uIp$lnN;xLat#a2==i+5hHHe|V zQZ}XL6DNU;kPNM{cv-~-4NQeGfLj^{8G5VtS;r7!40YTzh36|{G**eBc;Q94*eFl} zBN~Poda7ze$0)`a8f>vYPm1EUNem1XL;ZnxNi`Zsu|w4hnLRK?URsV_hjAh$$?YK- zwfs=h;!;Ehy)f?LzJ_}YT@|pX*E$~HArT^-v~(>y^EbhTTdMmJrZrF($_B9TPRC=A zP(z!JyThqLld-b?6x}ajvb^q65ChMYik>qhEvy`n-I(~_Ipi#%VHVmR&Wx~7=3lvwqm@WvD@sd?5mbB;&+EDD)*Hgqf?MXcpZ zUz(YUbE*cakixFCazZnKL|W7g`YTPK zzta5CXS9Z%W<<#P3hiFext7+h#PA7P5+f&QO^lwPJ<%CFK}X^YU7viP9{LaazC;v` z&`W2XFvt^q6d$y|f&L=u5#^xbj3kZ;?-=dpxOs~B$J7@XYb|$zUlCXf(0#`#Cer7a z96rO-?><@+<@SPVQSq8+1>Vukd&>8NAG5uHTZ|b&H)b$Po^xaw0$bL6@0WC{q1xtY R4bsTJ#v<*)WT!Hw-!C^9uOI*b diff --git a/feather/target/classes/org/codejargon/feather/Feather$3.class b/feather/target/classes/org/codejargon/feather/Feather$3.class deleted file mode 100644 index 6ca9fd7664c828da1df919501472874e50ad6abd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1686 zcmah}+fvg|6kUgw24lcd@B*S%1Zjg96z_OPP^4V64l|5Thj3^ECFvvq;msMp!Uy#i zbcUj%qrUr5j{77L0$9vUvd?9owf9+j?fm-v^#_0Ajyzk;%nTfaJyto&o2qnSCC>jDp%JH%a$v~jO(mf3&Lec`DM%N86@z+ z!RW&bjcdHpv%=6>*a_i^#fn6n6n@!RASX3&au!xAf*}+043i;`jP$5-m#_Ry!(%w{ zGH~6OA^9uPe_3oWbk)moLTr#@>b7ND{#}MQxq6NfRl~8o_S_)06J=a4vwAUPGWl7C z1_+yhJIXN zXyT?Ryg)+(xq4jX!;QEshgDp}paO%6Ur$dOF5xm2*0R@}Wzy5l-2Qz3f&7nKDY(MW zckqQq*G*CNEyr%cHR5rE+kJl4vOS;MzQui!?e(&+EWezsM(v~G25u?1Ni9(anY5r` z7`KTg-zoa8WtaBS9?9?`dY)J=(Z!3wNZ#Jx_SZ zQlBO0ZA4=_E!z@EXJk_bmRd5f)R2LtcBKDr1HG-t(5W^WP0>6>Hmmp7(5_#o;g~*9 z!wJ13SwpAZ(O5&5{u!q~1t-taR}B!T)A1JFG}j1;&f^?<$TIZeJbfkhYsyGQ8`L)m zb(26h(fI{^TNwCQ_=cgm%+=&~B<2#d-nE76#V@$i{~04c1H=qrjM436%oei1J6d^< wc62Z$md;>5iG1wloJsGua`5OoVizm@K~6>3Y`4&|@-2aJiY zQKIvMCX)EUpJa^j+%jOvHf++KbI*Ow`#Jsf_v<$Rlei(l$1rHwB}KD}d`-1WmZ?19 zs$1r^vam}NQxXCUu{Cv5RSeZEDa)&CTyrG^8M=k^xuTmwqTI8sO})r%hM-&4oy0g9 z&mC?(%OGv4Mq-_BG4!vZQWg!$=}6A;l2!W@qn0Mg}7cVa+mK zRW}_fHPtNHm_h1s7;PAn(T@RPY+S|!&QsDG6-s)#iAEC}jUr)cN*KMsFxn2^jEI+YD_>G#u|h1Bn=BRL%o`%4n}X8 znqfJ*Sz6+5*(%DI#Wfl_Au+gXnFkwJY}ud2QO@tFw;b{2VNpc#ZPVoTyrDV{cQ8oP z?x(j6{#Z;b0uYOfHSj1c0sUrt^hR)mP*LLM=o}#0mCkGc3I5OIY4`R71xOiQTC!1 G^!x)^XM5uS diff --git a/feather/target/classes/org/codejargon/feather/Feather$5.class b/feather/target/classes/org/codejargon/feather/Feather$5.class deleted file mode 100644 index 4cd91d91bcf37e8694f28e5affd6b93bf69fab9f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1107 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 R5f=YY%INQ9)^}Kc|3C7oMvDLd diff --git a/feather/target/classes/org/codejargon/feather/FeatherException.class b/feather/target/classes/org/codejargon/feather/FeatherException.class deleted file mode 100644 index c18f2565164a24c14aa11940780b07c3ad81a18c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 631 zcma)&-7W(`6vzLEwkxGtA6t|QuF#6Ta7lVoB$Wp7(fhH+cBGw^*QBA>UA19wwa&Y0kt&TN0)l zq0b`)59a!-nTlH~BCI$5d9-bU(~(gmf*$dg3!(gn;ScAtmI?2y0Bc*{IqT~Z(!NL{ zX1af73E9&yF}~ba_9*V~jc-~JtbmvZewUC&hF6EH5sdKzdoA3V;IAszwv#DWy2w5B zGWlMjpG$MHz;&^o!W5>t;yh+B%M8nMzgTsiXlFX*%0?H(Vb~;Z%J*Q){n!BJ3}6oC MvB0COw$)wy1h|=v=l}o! diff --git a/feather/target/classes/org/codejargon/feather/Key.class b/feather/target/classes/org/codejargon/feather/Key.class deleted file mode 100644 index 6ca9882fde3d3f6c78b9341db79937fcc701d557..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3499 zcmbVOTT@e46#jM+NC*c|KtM$itx6Iw73+;q1g#e;q7|g|QtJT@a4;m8i`Do3g1*)F zmKPuFOhv4nPM_#Ze^RGY`>nlClEbALbtad+*IIk6?^|o_bBZa$ky&N+5r!O11BI#0t0DePFZAKS^aotaNwpI&rk3JRgZ(`83t=U7E` zA#LaLDTTTTcRphmiaF}rHtPo`CsRXW^r&d3-8t9EDV*G5l<-OHOeR~f3odbul$Y8^ zC}S@%Mzha&qL6bl^YmXk=w{r)kizL6pV~mICh#1@rW77*IcdOeK0f#^Xnlu#Awn0J z^eBR8w$OkUg6mKyh7*L{}-2eY8%^dltuN9cUL)ADq=HWGaS&sn0_L+r? zLMAfr6!hJR;xbN!ab?3Z!30)N*^R^4!_KMp(0R(lRq55ixI7dh3wC}%Mxq{sqk`au zg=-j>us4{ZoRcr6`SekvG%jRK;4nC>+bdNu((^?(J?rEm_(~x#d@zbzxFa*-?xqBL zS&L1H#n%?@;~NIDmzSLko4C(ki;}4?l^bHEBCv@~$C|M)iNOd+MGZ$W4>ybj&h83K zolgskQqTtGcfws-PCIgWB1kJh4rMH4MIWYKG?Ir$7II*lgmn{K=LA0D2U%*EEg+fS z+I(?t&V8Z~oyZn*GtMPfo*ofC=8p+3g`Vv%n9rBz9^LG%AYUPZ*db3U?!w#!5aFKB ztMWd|J)c_CMX2S7=C84Aq6YY$`w;(I0R4pM zsZM)oL<^d*m(sX7k5264j-EU`vJxZ#EfWku?C1J`#@$N$E-}~k5#lxWQQFthrn`*u zpvHNbUd5*V4b<(pQm=661-AyC&;@pBIF>QfAfN+QBoSJP^TTE5N3`?1v=*4gd15=~ zo!WVuG4q^DMog}SS4Agbj7}zi1Uy;}*rNm9^a5I%O>-=<4V^>2i27|rd)4nC^ePbz zG0{oH2;(Hmae8%}XWR?1{=}b%#MjXGBJmnYPKnqmPX2(Fc;XMlUgNC78a`b?L)@s> za88mN(zV~i8iEW$=pmOl+8O02dU2diKGj zGyIh<{F^AHoAdF+PpAn!PpqRczKRP8et$$w@Hug+Yw=&u+RHDoKNBJMZR>1U{!!ef z#Z4=S%4Xd&=r9Hyly$7)(lhKd29$?`D+q<2GpwIzKd;9Lbl@c0`84_naU5qgQPa5j za--)liqA=4AEt1XzX4qolMbV$j?>cfrdAGDHxdo4e~VaWprte1!1Xejj> z5UQ(uQQOhAcfrtXkUxruIryL?Ckv62*%wB>w?d~`-^+8%_%J(TghbB!>NVieh@c-g zF~RtijuM@K7s$NbZ-pBX6RLVkky!_nn%cOf4~|@q$tvq9OzsQ3b?kqGTeq9Pe1+Qv z?!D#*tGKs{=@lFnV(aMC7PH2JMCVHSn&yXNqN5p8vb2U}+ORR?bfrsWZh+JIBChyY k-uGBu#BLPyeW|b%U5O>T@?h6UnCAm13Pn8jrsTK(0cqb2GXMYp diff --git a/feather/target/classes/org/codejargon/feather/Provides.class b/feather/target/classes/org/codejargon/feather/Provides.class deleted file mode 100644 index 5cc312040c35940bb8a1c88dc950e99146b27ccc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 392 zcmaiw&q~8U5XQf$w$W;}9z{g)(4#qc^dy*Kp|vGOFP^sP7&mNpCD{b}Y94$5A4;4G z+DpL0&d#6j_YKVF*ZT*6D;x!A5zbtZg{fO`u8Pdr@P(CsuaUrOjcxT;8bs0|Z(zm}J4j&K}T*6Srd=~B-PZ@7|h zK5q1m*|RXtUK852GL_g4{*lg{(dkNnAbz}0Mw5te+KeP}0rsN2Xr4!gm$E)ty|IWo qlPI~H-VO+aEqQG@D$qjk6L+vH|B2LHne8$5(Zj(yeFiZO(f-Acni5QWe7$F#N9+E#7#s^CQ{Xb>+IK?FgFKiJayO}b6Dq`R=$^ttp(@WKc1 zp~Q(56{)BM=FDU#-ZX-^oko$i1kcSg_>vM833#}dP;CzZHL zroJ$J?ni>5=IMY(18!tmzrW1cv5XlGy?+mOMAjp%85*6g_c>qB8mU4$Y~3cx%BdL0 zSd!nVQrdDWwIaLrPj)v(&*V_VM+H=f?{iZ?ouSmzi3!BHOz+WLu&n)b0EY5~Qo@`? zJdQ=|pvAEJ_j}P!=PO4W<>?oUi%)=ld@J+gSBb64H%g@ z6_{&lqdw-Nu1XJOH&FufZ5zv^BU4@2)5nS%=uF^s`~DR*370nu6dIAqccr< z%NXmV)7B8)7{iA->y3(*2&k#^6Skpx0vorb-kS_%_dHf71*z#_L163tg}$0h(MO27 zkEdAjuqd#63t*Zqz%xAOJkPWn2)teY+WvR;&ATdQfBu2Z(^&24V(^RqS?imEDiG`& zqtcy3W|`uos*{Sb2JV&r1t?MDJ}Es~5pThJX7duYi?Q3MEZls=EM+j&13aK5@Q~gT z=BUroYVbUYF+ZlY7*Yg=m7gddm46^Sy2RsyZ+PO;^sn*gKemgTe-^_lqpI`4E0FJP2!eBV|^}u%hz8G;m@RfZpcsLZ=Zc6P=Jg%?A zgHU~;+~> zO@m%)VGb#VoFkREo{W1!cQ~;!0jakY_Vw>`Ihz(f#xs4U9l0|uO1xDTiSq8<| R3G;Mf*uW;`l?cm7e*^SS%OC&% diff --git a/feather/target/test-classes/org/codejargon/feather/CircularDependencyTest$Circle2.class b/feather/target/test-classes/org/codejargon/feather/CircularDependencyTest$Circle2.class deleted file mode 100644 index 784ca95edd77ee8e07792840b4b740d2b7406acb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 756 zcmbVKT}uK%6g{(UZrY}0S(z0CQEJqp5kW-|h9F2miSOe&>Bu@8vuo7P>LG$2`T_l@ z=_s<8jq@?z%(ah76V)$Eyrytyv0JFBp=SQpxa&;k-0s zjdF*fa6eX|9Epw$WY-hdO8FrVrLO{pd@Gv##gQtS+G)l>oy|JwkVXQFHY{Wq5~Xq{ z1-hw?IV2gfEvdxqc+?fT&8aFwuI0Pj>u@b2K6RSmKvJ98B&g9K=?8zTUD1$Hi{js_ zIF9bXU^kT#y6*8H5P^llj2o?5C^8)VYiG3X$#bA}PpukuNv;IFFOnwGEVd|&c^F6$ zOHw3FxIkZndSxwF$2r=&%{;sVd8-DN>mM4o1Df9R*6ww+<}odPt2hB RI$@5i4QyhI@)+SZQoku~%R2x7 diff --git a/feather/target/test-classes/org/codejargon/feather/CircularDependencyTest$CircleWithProvider1.class b/feather/target/test-classes/org/codejargon/feather/CircularDependencyTest$CircleWithProvider1.class deleted file mode 100644 index f2808f83c093416dbc57a6e8a30d3028d4a2baa0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1053 zcmb_b+invv5IwU=vq=a|X(>?3RVq>wF5861BBUxPQl$tGROz$h42h$y7kQlu{(#Q` z353K0AHYW;##`RV3rZf=XJ%}lv5(LG`u*c4fTy?@BO)ASZj$J1%roUCnN8lY@>6z6 z&p16#m3zVO*^b%jk0+e_y--g1)cEOZmz|q2yH1QUVPmGwRgx+@NnVX+tUX~%|FgDB z=na-_*gYgvo*8TWb3%WA1$?a`Vdu@N7iOud6U_kussO3`;ZtLZk8Mu zAg3tzM7KIhxZFUDbwX*sHLO9@XkZN$LUUj&znq_q*qtb0C2S5dts6$nhIzs=@ObKe9Jb{CuLNl=;4IJTBuFI9QYd5m4c z8<9fl8po|0A*AX`0+Qn*Y;i_b^ujoJwcvCFM^wa z(0)tmAPKpCEe?h12^Adgi`bN{IuswI8NAcck?aZGaFJyw4*3!HL$3P%Zg(gG!*DCO z zw}%n7JqB+_DWO{-k7E(Lcrb-6sJmEYSpTo_ zq?TP?Ct8sS+6Gps!x`FJ>ZWZop-Ym3939#n*ohcvuE8UV^|(%WgU(0taR>{wUzn?{ z{Y2?INg3Qu?KbL5WbulkY+#gYL&=3*mEE&6oZW~Tff4W(cW+2eKXgOA}BoI!GuM0$S1dJh! zmN=TwEYOj+9JyNF-jv>&v1vH6qRt9YsZ8y6golMCFy?*AoyH-JZS=)B^WI@AK zf$UkFISxk0k{FBQ8m`kZ!!)JukIo9bO*PW_$2k20-8dnCjge-7jAK&6#5wqyR&GuS zy!wCN(zP`2>z1SXSU*forWG@o)u0RXs5&@tAdWet+3iKi4(m?Usg@XS;HHKJHkrz9 zwa2o)FTEg+TevOI#yaC{)eTn5woRtvRakvkGU_qWR3Wi=1#;(*O@Y`8x9pj6#Zu4E zQ2iv%D6a+Lj~z#Pm5z{nE;MzRN;Et;V+S&3H4y%FRpEZAwz{inTmgg4R~sCKdQv%R zoawZJwrS!6qVM<C@yD$O>}D_@dFEJ?C_ zMe@ni0Y(py`iNMgq@Ub_HSPr2?%;04pA2t?u!wt# YlQ;v^vV<1gr_ItPX&=&#)8^3f1B;&cz5oCK diff --git a/feather/target/test-classes/org/codejargon/feather/DependencyTest$Plain.class b/feather/target/test-classes/org/codejargon/feather/DependencyTest$Plain.class deleted file mode 100644 index bfa7faa2ba376c3a56622436b27dd9507e1e5c79..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 407 zcmb7AO-sW-5Pj3;!^UW9>(zsx;0Kz6N5xA;5Q++x-Z$x(ZipM%qy>MLC&7b1z#k<} z7BAlP^4`2R%w>YXec=t)-*ni=Ksa*aTNt7D E4X4#&tN;K2 diff --git a/feather/target/test-classes/org/codejargon/feather/DependencyTest$Unknown.class b/feather/target/test-classes/org/codejargon/feather/DependencyTest$Unknown.class deleted file mode 100644 index 645232e1b14cf9e2598858c6f610825454998503..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 496 zcmb7B!A=4(6r94s%8G&@de&fqCb|cYs27Zh$wm(#_p;QbxW1ZhSL0`SGV$OC_)*5U zN@9!`y}ap6r+w4cxA&J<0EgK0Q4-iUHVI=hRdZ<*L*ccOZl-K_s_qm`6~&JumAUQ} z-H>@8AD%#SF7IWSN=m}Z$y~)wpn9Z9yAy#07pR{TDLY7ImZ{7~M_}hqkp%q31hEBvJbwTf1<#_&)n|6h zSYoW~J!9#K7bPrn4L-$fc<7?eeB;Z66|6F2I~r(y9$jNrLJMuifE9stcGo@tC(L~o diff --git a/feather/target/test-classes/org/codejargon/feather/DependencyTest.class b/feather/target/test-classes/org/codejargon/feather/DependencyTest.class deleted file mode 100644 index a80b2d6d9a8d949f4d0bde0ac18982eb074e0f94..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1516 zcma)6TT|0O7(LqpDJ4KDcThwHDc5)dFF|G)lo@6!GK%=%Q%F|`mQ5!~x%@0&6rIr@ z;E!@V+XiT%3_LVncDs8n-=59if4}|!c!F035(49Xuw%J?LGC%hj<2jQ(usCuV7-OXY$rm7&*!%^x*rlioAWf z<%J%xmzDA(C-Qtn=u8EAuS~U;He{!fMUR1QfsrdnSF4>c(ThG>JM^Mmf%)9${KYod zlUM1EA#4K!0@GLU)OUJpqv&`_s~a*gj9UUJ@66$Nu7-T2=!7A;FUd(`1fvG-(6y$l znqCe=8AK-T;+{Y|cXG7uN9*NcQJ}XLw|cg=K2IY~gTUx@7OAro_y=A=23q`tiE-ov zrfQLE6(3oi(iyTg;$3zdrZ8h*nsT(IOAAcQVvb4Mkqll>u7PnHE9vf?LJIU(x^oGN z3F@oQ;c@9Si>r;dEMC=sM#pC_k-;ddugX7E?2J4r(W)#6To;u$N3JaC%rZ021ZHoR znUAMT=?{K6aOJ9}uUdD#v^m{X0dq|$8B~r!@?tbs@zqrlW|O~>JV94}I@|vp zgD1Fsj@nU?U?N4NF5+nPzUr#6NFjxzi`bunM@p63GX wJ#(&Uf!;q|bUsKaLj)bJah^Gok&0y`@SIo)yueG=EZ_P`X7e-_SQpXyAJx%kC;$Ke diff --git a/feather/target/test-classes/org/codejargon/feather/FieldInjectionTest$A.class b/feather/target/test-classes/org/codejargon/feather/FieldInjectionTest$A.class deleted file mode 100644 index 8aa94090441bac6bd19f5d4cb119d87bd0d37b5a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 411 zcmb7A!AiqG5Pj1ojg8UPD(F@4U=`hiM@1-wLLunE()%VI(+zPKHfjIMliX02+%Rr-%ew}kk~Y;4XmV58zk%bJQG!c)&@q`{ZH$&4yAVE0p{eN1gO{m?@bfl(oph7kDWJha15@ugW zsPxQ^Cr8B^oJ0z97S5Gc(FGyhXbuROOV(aM8cR0vC=iN0rRDW(I+Q_Q@K8dz=exoi zh(MYAr__+nw3(EK-no$s(K$#JmHYSa9C5mH7nqs5uQ9Ak=+ zP2#x7nZrno*~2&3FY)JPj;0w{MUkVOG@yhPpp-+I>k0XQF(JQV?fDnE5|dMLbv=$% SY%rEtK@D5jVHL!X!`JMsviFJ0Y+VvMAcvK%QZ% zFO?W9F2*7p^06-%%KgCO{)mUtoL4_{dL|==R{zR`x(wIP4b3RwDJBd%Zx%|+3o(+B zBOw=%nRYQ@cK-eh6Jc6-C4Iu8m#nG1xNhN!%W)snYldm65r1&qfUg3|nU?=Qb**3Nk)jXq&_bQWHkBq?_o7II+QuWpf0M_jL7)c<-)FE^1IJKHCAU(L zMoq_}FdV1GuCq#nq+uz&4Hls%PNkW_>iU2mnWmD$XG)3i#5Y7E3ogy%)w|YXVD#ma zq&NUQ3wmuphIaHEXtn6%l4WE!4lhyo9J@=j8aGhHHCpW?fb1rnXw=D@!PY9uA!~p> z&_9!4FZ&(YC2sV;q5AF;JFi;pFSyfQVt`-hIhm?EA;-8-NBX9vp^-Hi19VV=?0<(8`|(Zl}WdcY3@CMRzHTkz>&p zkv(Z^y?*tOU?|M^lKUZ7f!`g@#KV+zJ>ubj8yUx&$Aq2Ah~cvHkI|YWKGB+?RI7Kk6ZWi;DxhTLaiOf7i-C+J zDc&fhEw@rD60H6v_+a#sju17|*kj1{^umlpTgD5Nf8OaLmSxD@DkV%S zpZ8(Nd>tEA&`$JYfI}V~lB`FOPsj+9XD>)UuhLnvaT++q4%ytgfN+;0U=MjBDUcUe n?GwgC=j6vdZn5}8;9yHr|3>3(XdE1@s!BK{%&wY`aE#0+_mPj9 diff --git a/feather/target/test-classes/org/codejargon/feather/ModuleOverrideTest$FooOverrideModule.class b/feather/target/test-classes/org/codejargon/feather/ModuleOverrideTest$FooOverrideModule.class deleted file mode 100644 index fd526a5adcb3e652ed8f08937c2b193bfcf1e515..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 687 zcmb7BT}uK%6g}gr>zZYnW!96>Lk6~lk5&+Z5ZDJPzK=StBkK&zuKuoi3VP@V^rND? zeo!GnzT9)q+&kxfeSE&X1E}HHMvS4Zjpz3DK#aNZv~q`nha+L!J3W~C;$bF?kps~Y zL3q;Cdc_w}8*zr(MgohE49QEWWO&VBomRRG@dkB}h6N{s1d*W)IFbRwRcoUreos-SCWcxw6izFxF`seQ=gM>2p^?g?VCiY9LOBs# z8Az&pqm&MLD7B)(<-ZC)8a<=E1@#p6NWaGoL%OY}rZ1W@8mG9v;Pa?BL*`Z~VH!RU z0uk6aWT^amItGWXv|4g*?P4f{x}oy}G4g2DWNl(DAtOwjy(0B852wjSVW5gFvYAB! z;WjZ~2U!x?B`?a#5k^8)@}oaiKL1P*!?(=E4;gDI6GLI1wT}bBJmp&`q6CLTia3Jv E1-81Zj{pDw diff --git a/feather/target/test-classes/org/codejargon/feather/ModuleOverrideTest$Plain.class b/feather/target/test-classes/org/codejargon/feather/ModuleOverrideTest$Plain.class deleted file mode 100644 index 769146cd9e66d14edf6831eb6ee242f26c48ca36..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 423 zcmb7AO-sW-6r64IVPmwl3Ox%RtOpnIsCX#|LbQUV_f7IlH>|s`N&3G$2_F0b{wQ&? zc=Mu{nK$!zZ)e}<*ZT*6OB}@*FmPilUYL?m$q7$&vY3a*5%_%g4lXc?kwsbzb^Fg%^F8G?mdnP7-fiVzXQIFp(lx|f{nO5}(S_>vjyGCe);To{_{RGLwct**@Y5KLrsh+!~D;0 zF@*jIIEMSEyCNJr6OqH%Deg58p1on`)fodM4*NDR!>+^B*P-J*-{1E*#>8>r#}9Cb F(KjyFX;J_H diff --git a/feather/target/test-classes/org/codejargon/feather/ModuleOverrideTest$PlainStub.class b/feather/target/test-classes/org/codejargon/feather/ModuleOverrideTest$PlainStub.class deleted file mode 100644 index 23b83f979180b9fa03039d0fede4295e25886a28..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 482 zcmb7AO-sX25S(qkOpMk>MertgupZ2zcv8F+1fhOFOYbkq+P)GKcuD%dJP98B0sbg) z6U2)bdzpE&yN}tO&#(6n03#fF=n+PxS;T3X@k*IRS;Wt*>Lr`_zRa4OAJ=S*&UnUE zefpFuT}Vx`uK5Z)C9n{lqHiYpHhVfb%9 zg41P1@P9MI3FL4I9>OvJSI`p`cN%cc->~&6g&qRIwhbI(TQKb2j_^*`-|euEJ>f{^ OEex;^U#12)fd35$WqiZ{ diff --git a/feather/target/test-classes/org/codejargon/feather/ModuleOverrideTest$PlainStubOverrideModule.class b/feather/target/test-classes/org/codejargon/feather/ModuleOverrideTest$PlainStubOverrideModule.class deleted file mode 100644 index 705b5441620ef978abf601d2cb80804fc1eeb5ab..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 950 zcmbtSO-~y!5PcI8wh4g*XbImm5(h%1?g7yY6;c!l2`L2xD0e4u6Gs~xdA<2v?Wqz6 zegHoTb-YPI2vPBInP+?6JbT9P_U`%yz#cva$Pntr_QH6B^BTKlFf*yYf8{`a5rt zJE*<3imzNbPqb4**;29MuIgGFC!8{xo2ovicV^9q#~yQiK7FzuJ7NDh{{Mc9H3}Cd zu^oA&{FEzC$zT2N5sJrJOWTM<9LqSsG9i5B&;zUzYA-J04@pfGV1uyt;<5)P@_6oD z$(`M=A3GFPunXDrK!#WBK8^wJLPlcD?f$`s-)XwQ(Wik;%y2A@35>J6Bg~=1BIOBd zp3w_^<4lGz^W~S1cu=XPDof++M8z`}u$b0-O!=R%#JI|jtY8Ie$YY&xlaURCE#&_K D!gUAT diff --git a/feather/target/test-classes/org/codejargon/feather/ModuleOverrideTest.class b/feather/target/test-classes/org/codejargon/feather/ModuleOverrideTest.class deleted file mode 100644 index f87a908c86170238d8aec4f08e19ac024ea62af5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1531 zcmb7ETTc@~7(LS#wp&-A3xZrk5Rev>6_JY;(Ly9KsbVZ4A-=e6hcZo>)!kVLKg$;( z8ja8XDC4)?wiGH6Ugqrdn>puvm+9|6-+lsEz=nnhL)vl6R?#W(itUyiY3*@a?Q_?9 zt;#nRAMEb;ou^u&@6ZQ~SbWn9W_;P=;Z+#6NLa;<9+$uqxM& zL+=cO?|rGn0pAgxAfc?3jQ`7welzUsjMh1sNY^Shz%|y^UwaHQZsa zu6Z#??XH0_j5EZA^pq`&)Y7R`i}Q`D?RjLpEtg;{CJansiY}MAsvTtLO|_m4ZznK~ zw1yOQDsUJ!D(iXNRR(4-%V3ZQ?OuKM?J6~Ny468Ao0)b8!Gvn{8D|*#Uu|i^4w?_) z$Q4R)nyuV{wTg#7AS@ot@hGZKxLr3i$(7EP&AoAw- zc_SDHr9^)|pp~wolU9v(79k_-m^nfG3w=b8pfv~sI&RQvga-(3(vG2vq7ii0PxTN6 zL?4MXLO2=wf#`1ZJCeI6=*^#^FJ}(Tnj>E^`U|w)JH`DoovxZG1151#5Obi{AM(`o zOo~0gL(*lK`=_#~yInS|hW0#ZF9h1=6VfF`bEy$pq0qC|&_y%77)BqK=&_w8zg#yH lL52)Qu!`q|GnDc?*;=DQtq{H-93gy3I7FBwOcJg`{|oW}jSc_+ diff --git a/feather/target/test-classes/org/codejargon/feather/NamedDependencyTest$HelloWorldModule.class b/feather/target/test-classes/org/codejargon/feather/NamedDependencyTest$HelloWorldModule.class deleted file mode 100644 index ec914ea25eda7df4eb25f5eb52e1089f7e9a59f6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 772 zcmbtS%T8M{5IxSDG(bp0cor0iML=rrqDxvNM1`o7LRC<@cJ3V#M~+?j`bO%zKN84y_Im<_ z6Q-{skA)hFC`xpFEzs=j zcki@bdZ)~Q%Nw6EWT z8{F|cC z=;#mdM>*bYqE@6cJY;X~ZgS4K=idGC^UHStYj|S9U|0ykhFc5jqQ%2Tpxi^jO$3y_e2z%$TAGK_y_L#Ts7R+)t0Em41-UllJPT!Orcm|$Zisvg$(jG z1~AAlRFX>UwvVbJ+~ZYWFgT^4#{CKprOwmMY}}L)!&2$|iadrfrG@UODCVjr_GR3B z71Z0BWa3R*#qvm0WF(1YL#ZI^@PvD z2=W%LV$8%S!&D!rt;Aj%$?WNt-^8BCls7!SAn;z&vfnyo~~i z3^|!Lh+(DBuQ2^nv4GT@y=Gpq8FAZ6k_A7~5Ee%V3i_%3i#0bDx?!-zz-@ z`5(4e$>AQ&?6#cAVU4P8N(M6>e}?IPDu3J0V3mV*SQA@PPuutz7iL*EmE`RxCBm+U zLeJjm(V^Cm4!VKSG{}3$)tF2NW+-#&C&F4Gg7U z4O7%W5rG;M*RtP`Immp)$iWFNmpiypawZp@>&{dM)1Pstg9T?r=c|A6zqAgr1YyG= ns#zjhB^oVZG=WYfI8@DjtdkT259rjuLp-8r(as1xkCFcc?MEvh diff --git a/feather/target/test-classes/org/codejargon/feather/PojoProvidedThroughModuleTest$Module.class b/feather/target/test-classes/org/codejargon/feather/PojoProvidedThroughModuleTest$Module.class deleted file mode 100644 index 8f2aaaade73b0268335b6d6af0d4f7363e6400b9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 804 zcmbu7%Sr<=6o&uQ>e#W~#@72C7uAKcup6lgA_zjgprzn4ZR0d$OeB->xpXBc_y9hX zc+wVhql>yZm&uv$oct#rpRex#_OR|D!%)#C3Y)qmI^0BBg?ED6wlLw9?&vF{A7x9l zYHg#_sC}+mX)J0Yv0J^+LzZEx!ykDVa}|Y`jgDwqhLHoQq&;F7Ds9&pvL}T1F@#(m z!x&+htV$&=())%mHQtB?Lr~RC9@n{%F7JQL+O|v>4y*qdu|n-1=qiLMZ4U-=N)Tq@ zI#pKQi@HoC&3LSow%kgsXvB?Q$vp*=iia77{edpx`j4VWYTjw>Bfy-Kah{=As(x#K zV~tc%#p&(e=+rdDsdUP2{<+9q2VlsbDJ9HF%#%bU9#$C2gN#a>?>!6>-L=IAXliUvzN2_jp;i6SA3*AV?jZhG(7FxQWCevg>%)lh+f4LCBg&*KY ziFcylLU7R;W|(vC%(?g6`S^T$2XKKs8x@8tr9;nGfrz;dRqD+J&m*C|k&4wwtAz|i zFp0D(!suQFMIt65%TG+yhQ-i|`GR{1Pebo<77IUTsLqvQ*c|>w#<`Yh*k`C+%T(q! z4DIgUaBs?B-BKkEs#tSj!zHn9Z(0XK!^H|}49%fT#Y6El6MDjDi7<(j&yy+F(%>J` z$|IRE^oL8kqiUV8Dzq;K(xf^5w;|`oEQ5QOrb6E)Jj+C8V~62#nF6Q}CL4~(c$NN& zOd9v)iBVrxiK!DBph6RHPG4!AymIs}?*?t>{a#mku|WQ{3RL_?AX{79 z5y-8vu8k~;B@7`iFxF6kY$p4AGTe6ed?`?AXwUU`+)$ag|7R}ls7T;t<2u~xggGGj zrjAef3ru}Tf>`a#9Th3!tOkLO-B{^>Fy$UhHz9M!G{*u3d33;rWJ_T2A`F(xD)^MFE z;Vx#`tO}yo4LojRp>~GKn(sytnfymi!0M|+VD5_XaF`{tjnh?Fcpy-}7VlJkHmWGv zc!-*XM_isMmF{jeiewmEKq( zAlS~kAdq2iIFjngr?j|E^BDI*@$>TntuUgewHP_{f_`Y}7=>>pGJP$J}^Ed9H(yP{BBEv*E`wQ6<+-NLUroLnP(5$FR087s_T-NtatAE+m_RoH$tBUahN(Qf;XwlaW#FiF`9pt>qXnOe=Yp zLQ9j2{kbC5FeFENbBfYZ6T|Fh#iC0xOm@bQ+i2-Md5#go^4~EG{V*p2f(TD_*Te9O O5qRJvI1Dk8DEP@vhpPe4627NsOX^x#1Mp|qQv+0+;rvKmAy6cXY~~H&=2TG zMRQlLJtWJ{%(pwtH#6Vo*ZT*6Q#4%U7|yjB1(6<#2{$9Hf+xZ4SeW2m$BU^pv$2eB z#7wB6P|>0%65H%(-E!eDR44qI2QgQp;BGJxk#$jII9sM5L-9%~X|Eab2Zw!z#=~4$ zITd}G$U!VxN@>fj)GA@9hbi$(AXQ2lbTfC!;IwHB4|%Nma8Y8Ygi?vy`E(#mk5d(f zTBsu)_qmZN{(W@pSW?-GaGB0qMC?84xrszarWCt>Ztgg3o5AlYB}_Z!Ng@&#TMQ@v zC8jNr3N&%51@=IgZh>TFbZB3Pt`; c5~^6wa%!2~z$W<`pF diff --git a/feather/target/test-classes/org/codejargon/feather/PolymorphicDependencyTest$FooB.class b/feather/target/test-classes/org/codejargon/feather/PolymorphicDependencyTest$FooB.class deleted file mode 100644 index 544d56cc1aa6bf86f6296b48e18e19a97ce17fb4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 590 zcmbVJO-lnY5Pj*#Zo96wR;%_R2p+V8E2wx-1Y0Q-78NbMr)z9ewn@pRVts1j7)1I}jJX+V6+8)UN5TYmI-XConT}+1 zEv7;}3Kh+JBC)$2ty?Y%4An7z=0VKWFt{CzMPyw#3@3{eWN$N1v4s-S?Pz-mVubvzmORCFeLp%SQeY#_s~jI_&tPv(=Mjs;$KGRoT*5K_Q4 z7AH8gwzc2PRL4`dP9`SNW7XBM=5<=e*hD7U8s4Thmo&0d-B&T|*E`PBPrf$JPybks zRiD#^sSGDHOSI_eITiBd=CaLwy7X$9U1?``MYLzK3E5<~=|TC_PNF~^YS%S8a~t%D zGf<%N-WU}fgffm*?BTA!^M!kfetD<~JYBSs?Vr}x1zs##TX(NSyBv6Ul##(1P6k48 z_F+*2Rq^M8kqw0+qsPoA3SwdJE0(`-kVBc#Edy0tVXVwH5U(-=RM3gNEi+qS$1Pe++tRE55g!r^9Lp#lOw(f_9Cx4SK zKr|Yk{ZYod-Kq^{AK+!q&YhWa?!9wnfByRN9l#>W3Q`R7u2(Z{_kcGnujWegkXu2W zd*&P0IcmCIt1j$kyv5}Km-f*v_X7nPhC;*oV4033Yv$|y2Dbx-?5dC=SYt>V#VSK) zlQ>nRk=M|JEJI&KNd78p?sIR~+IKjEUU6;9sal?h=AB?Bs0*KAp>p25N(@8I&_i}xXl`_VVIirQ3Q2{W#e7tY-3Bsq)v1wDBbIHG(jiv8Yj10mmF|| zVd)}AbGXUC$|`Q*wt@+Ukpz|({7Azj?l7d>Lx!@^RpF*%`F^P@uoHMf){;vmvQpIB zDGdgS3^^hFz>+qZY2HZcQ*@}{Z!FOqbCC-1XzQuIX+ zo<@acCLts2nLa`8b9-5(FAmz< z^zWTuVCNK9D*DKbKB|wMV*D6)e_-?&)2Eozm!jx{Gtqx3=*SRVFLV+#NNx>uOZxQ0BI2-gYw37;bW8zZ)Ks{jB1 diff --git a/feather/target/test-classes/org/codejargon/feather/ProviderInjectionTest$A.class b/feather/target/test-classes/org/codejargon/feather/ProviderInjectionTest$A.class deleted file mode 100644 index 24c4c1c29c1a281a338cbb75ba4ce5254e7d3948..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1027 zcmbVLU279T6g`uq&4*hXqit;btVT$pbPGPF6q14vSX68YzD~AdI$=9oW;aFum4YJp z;1BReiDx#A5U3C9!|eS&_s*TOzkdJt3E(B#WfTPVVmtN2_*BiLoyNxhpk#WctpC== zm-kCwm z_0-68Zk533`mBQ>*HFX$A#v9aw9)CIK&x{-YQH-c2>ucLkCqN@=iS_-`dp25q9>6W z7!#+`Z7UJjS{-AtNDf*$;-sjVF^5S+^@4Msz`_+!)xee7T z?e5ZA23DB0=jbBfjf_$DD3VE{k}@6%yvRcZ0YQd7$;;{?>xS6n6BPMpaNX`5D9f}8 zsPK@sa8I`I+G?S{~;c; K`7Y&CRQ~{yNe@H- diff --git a/feather/target/test-classes/org/codejargon/feather/ProviderInjectionTest$B.class b/feather/target/test-classes/org/codejargon/feather/ProviderInjectionTest$B.class deleted file mode 100644 index 5f3a051a246d062673d9dbeb60dd24f48db7da3a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 423 zcmb7A!AiqG5Pj1ojg8UP>Zv!ugNk$okBWyDghEik()%VI(+zPKHfjIMliyqk5k`coU8WIe zic`2v-4)@O{DuxAr$noP@bUwD@2=26?9ki582b*B_8mGtX#K+$2N*hz+wVs>M*kNr CL1|wA diff --git a/feather/target/test-classes/org/codejargon/feather/ProviderInjectionTest.class b/feather/target/test-classes/org/codejargon/feather/ProviderInjectionTest.class deleted file mode 100644 index 5979d2083105393ce041cf901c25d9cafdd00176..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1116 zcmb7ET~8B16g|@xwq3SRD^Ni|(4t$wE`GkOF)1V@O`2+yG%-F+w_`iaGHZ6X=-={1 z(M033KgxKgT@|JKz{}j7xijaSd*{sl`1$1gdSb}KexRH;g2w|9 zI?u!4RQ5#JR72s#GEm1NiVfr#N<)6i9iOYd^Q^0r46{$9lJQf9tX=Cc2`L zGni#qXh|j7qm!-(k9pS@4CPkfalgYusprXJE*{8;q29WTCYKbw{YR|mF|528saT$f zj*KJ`G?WTruFD|&(ind@BFT=f$~95OqJgUn8!603ldf1;!ZOwOPR0X=0(qZm- zB8sZ}3{5*tX^Myh`@JK_miXfkcMdmEHE@ezNt0jLU|}1#$s2t^R#~*CO0==~}KcFUEISox018P-2zi{T7+ y{u0cO)fAB@xHSUPM9UL^geXs@zl%B%W=N&hy^nho%k)*D)%z&W--Mn63cmn*(jr&@ diff --git a/feather/target/test-classes/org/codejargon/feather/QualifiedDependencyTest$A.class b/feather/target/test-classes/org/codejargon/feather/QualifiedDependencyTest$A.class deleted file mode 100644 index c8d12910cc1ad9d8047aa56da29c8ff8ed312b88..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 450 zcmb7B%TB{E5S%TPlu{mr3rI+CKsh!@963ciq)I$P;qE5e;>g%2aVq+29QXh}3b6sH z<$@3gduP3~v!nI<$Lkw_BWwj|5Dr~2j#8I#u8Og<(TJ6Q&Df^X z0hj(D4zNhr$kjweM%i(6JWwox zok~NH++Pj)muG}d-&!tCj4Dem19S#K>>Zo!#wS~6gRcMp diff --git a/feather/target/test-classes/org/codejargon/feather/QualifiedDependencyTest$Dummy.class b/feather/target/test-classes/org/codejargon/feather/QualifiedDependencyTest$Dummy.class deleted file mode 100644 index 58f9cdafb61340b60e9c33ffaf726c4ed0912d15..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1079 zcmbVLU2oGc6g}=&(onVz7_c!mwsmMN(lQMM4Gk($bQVvRpmGQCi- z|86EjJ=SV;q&_M$QYN@OS4rABnnls2gNi_NDnCg-lxE_e4yP(e1@=_cN2~NDXwNhoO37j7?>#tw{uy`&qr8eQmN@{o@>%cI$e~ znT%zmQWakdJ}6pIm&}zzUaN;P78`KTf2XzSCYM_dmz+zt;bux>FDn6I2mpgqM z$Z#NIo%vUbmGnZhf#*eQ$faT(t_%W|B&~gcu<+H+N!mqo&n5Lf*jXH?p3Zt(`^S^o z%XATF92=wJ!%!xPN*p{C*f02ux(+r3_KHObh^|2O>RE3K92ARhu~RC`8Jm>0%wLN# zX8O`9(RSc+wN9@_&m-R8aF`bj8aFw5JXj)nogY}}Jo%2Luk=c|&3PfGJV6DgBss$! zuHBuV#xkw!^YV0}>Ea&llQ-ksAqrx(^9@U1Xw2!d8i2PsO_s8Rm3&^s1L7)^tzjLH Q9=klZ&W`HXBDQMoUvsM|?*IS* diff --git a/feather/target/test-classes/org/codejargon/feather/QualifiedDependencyTest$DummyTestUnit.class b/feather/target/test-classes/org/codejargon/feather/QualifiedDependencyTest$DummyTestUnit.class deleted file mode 100644 index 07c74ca5b4d97e74379ca9e63a6b8b77ffd595c8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 984 zcmbtT!EVz)5PjpMu^U_(3I$pMv?ZXHLtOzks!CC-N|hoIwB){VCh11bF0$9C{VR}= zkT~!Gd=z5VMM6DrusC?0XY4ogW_I@HukSwqyu_0b0b$?f(^^VH$btPPzq{xX>nsQO} z_6TnK|B~(0rTfV*f^av+0$POjsV(!AkG1c*`;T4N^=CndPmJOGFjGarMTiH4y_)CV z5Al$&TaQJcK4IzF6hmyvF4W7@lip(2%=92>ciXL-E?;MS_d+1QL_o5F3k^ z2$JB!^KV%CQhi<)>xsZAI%4CiA8-pRKqta&+>wYUKNY+pf5qx&2?Y2{9#-U_ir%a2 aeXI$ti@tSq@#tA3Jjw- diff --git a/feather/target/test-classes/org/codejargon/feather/QualifiedDependencyTest$Foo.class b/feather/target/test-classes/org/codejargon/feather/QualifiedDependencyTest$Foo.class deleted file mode 100644 index c89d3962ac3c04f05cfd1b79947dffdc98ec2b88..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 243 zcmb79OA5j;6rAU$t<{AGaOt`MJ%UnjC88II>1%BXi6pJy)m(T04<)AVUHBF=1H%mS zUhl^fz#7vS1H#I>N+?@!BVA>UC|R}_cH+=UU6(Z%TfVX>*r@x7eY?!9jWHt38+nsL zOH+ycxnb23(xdI1;=I;OSo|o+`W#`lGltzpOYhmom=Lo6h7g8fN(2NE-sx|E@fRb+ Mfz#j+5~NY`0bjgC!~g&Q diff --git a/feather/target/test-classes/org/codejargon/feather/QualifiedDependencyTest$FooA.class b/feather/target/test-classes/org/codejargon/feather/QualifiedDependencyTest$FooA.class deleted file mode 100644 index 3972e473a996f93d91f105202986a3c8c8e163c7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 512 zcmb7BO-sW-5Pj1&iLKGr){l!9!9(@XfW?y{luAJ;idcHzrqgyy+?7ot__I6-9{d6R zC~*?JdML}j-S=jhnK%3W^Z5m!kD~w;Lf^V&6x%tkm0Ma9Em&nMcF|+561~tozvUM; zb2jnYgwyPFWbGh8jnG=FR~047ETf0nn&T{hPq^4T9l^iWMrSvKYWHkPs12o^2CCQ& z5nzkZ9Bae(`SXn3M9mT=w8u79$y7OA@ISGZt#nGb9BBQ_|M>3} zt_k6tG3fe)>=SyM6&0^CN%30D6DJTZ+mnwWS>jr-E-WfJ;GKV<@h(CIp`b4^ h(8Z2mSl&JCqFKgUCGMduXItKT=-|LF5_WKi`Y*w3gq{EZ diff --git a/feather/target/test-classes/org/codejargon/feather/QualifiedDependencyTest$FooB.class b/feather/target/test-classes/org/codejargon/feather/QualifiedDependencyTest$FooB.class deleted file mode 100644 index 1162cc32e0f450bf90c85733c11419b39e6f8b35..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 512 zcmb7BO-sW-5Pj1&iLKGr){l!9!Gnr4VDY4QXr&+&MJ&B<(`maU?#d<+{8^p^5B>mu zlsE}qJ(OkN?t8P$%$xoG`TPRV!$E)wp=aG9itUV7$}Oyk=B%wECtR$bj^JNwqq7@A_2hIys12l@2CCQ$ z5nzMR9BIS%`SX3~ zt_k6tG3*A3N>fe)>=L@`6&0^CN%30D6Gsp(+mnwWS>jr-E-WfJ;GKP-@h(CIp`b4^ haE>j(u)KTNMzf5!O58zP&bGYw(7~QxB%HElAQirLHW+s*RD_9}1 z-~;$5#BoxgZXz_Zn0xH;J;(Q6U;Fo;pT7X?!uL=RcxvOZAJ|Y$WIVRUA1Rq0so4K8 zm60B46~0nmlnIpyz8~wBK=63vHxy3Q9&wD+Sf*>F9epFt${%C zfWlQQp;E&#N&+i=ZPeT8@leHwau_LrwZ08xG?1}&^V6Tj^hhTH&-=N8+Y=B{;Bzx8 zy=QG_ua$$v9oIijO{$O8Kqs1sbd0g7Otm%4qrOP;eQZy3s1ovb7WphXhz?1`5hLaq zX64QjWtE0GtJKX~rOa7&PqXai%hJ)SpX@XaR8PBh+gMP}w(Dhq+G}G}d=SYbQHh7! z0#7owV8_E_`EMAyS6`zPCu4YmMpDXoW=z;1Rn`>yEv$it&te1`7$ zgwp&?K^=^UPZMZ`doO4`&U~UEE^qxn`8x*%RB7EZu#a=JwYdZFJZHcKtk7$fqbl(t zagCo7dq&R!v9SHk*)vKnXG&M+tN)Y=xP;3y^($~|XEm?=SF^W3^E%dNaom{2a1$HE i9cFY3cTnFf;~ud=d_a6yDx*o|}me93^wUUNnj4dh%25VyagEUGKv8hC>iL|NhhYh?Wn<2X`EbXLU z`Zx7U%+zVe&;C)Jp0~R}3~py&820Yl_wK#topaxPumAn)9{}_CNkc?n&S~$J8ctIl znC(5sF6~Ow-Iwjsldjpab}iXllRrzlDecD5mh8A1Vgi!~=C5X{W!ihC$2$kI;R=i| zS+?aa3q*7IxyW^U6Lo&|v)2{7Whq7*UEGDVgw&R+v<=C8?^l}_@3A?0rR@Pt$ z+!-!$cEf3QTij_96A4_zl!lbROh}Nb&#jIRF-?wsv)p}V%ssE2<+Gd*BOnMtupbG` zhvW&-E?ae+iiS%9w}*GsaGAOc=~qeM3O>>Bu|PV+^`Sh{k;PSkh_fqjFV{!LYRl|& z$^#!l$ziOrQsKIe9P$EjD<}mb&xJ9nobr7+{EB9rC<;1?xXCzs()F+iT*&pW^#LYO z!lxQ;v8L1}{gSG5IwPmH+U4g6p?D!1#bKcXZ zjEasGtWqDd!Qe&i|V~{J@2|@hq|Hj5QT{fyFSo!rZ-GGeC+hw$)r8Wb$i) zrBRqvt?U_lS^^LJmh@0Z4I8XMU#_ak#~QrY&vL+NzOK9;D^|Z1a7Ux^6u_vIE{{ZI zFRMUe)9JPwvTCVYCKDpSoNBowW!<)A+bc44Ux*6-JO^W*JObxDdm5XU8&zlHR(;er zTs!Vx0k{Ir^I`>JeB-6Zr^Zo!c!Btze2E~zr(pRp5$w1|7~Sn*O2grGu8@0+-$8`ceMw*HqV!Gj;*M~Rcg zi??3hoA-v9eY4*`pI-p3agv}%m^H2vW%I0R>8i$x7bX2hIkD8XGRil0rCL9IGE&GT%MXoRBV?tt-`?4txKlzUrb9vU_WlTNv54s!cEA=ISu1SIL7c7y>DT9 diff --git a/feather/target/test-classes/org/codejargon/feather/SingletonTest$SingletonObj.class b/feather/target/test-classes/org/codejargon/feather/SingletonTest$SingletonObj.class deleted file mode 100644 index 4f10dc48b3d20ecb3a5fd0dc42b9f08053fe0c7c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 491 zcmb7AO-lnY5Pj*_+O^tRKhUGlgL*JXkBT4#L0A-Q={;TJHf1}3Y_|BfJP98B0sbg) zvPiw^A#d^~lbJW~^XvTszz_!!Y62J5Wiqu-dZAoqNj_`k=i14!p)A+l(nJ@2ux1al zMTCYxZ=qI7=87`ODV=(O)|DaSuLbHSr&EE(h?~Z!quoIhErD)gNZ*&snRXL3%e6p1 zv8l?Z%9+4_k_|sMg}^ZRx3Eircx+3T>RVH_U#ku~oCn1MM~@|Wv(!^l7#?~eyzip^F~JP`AUe&nK>0?P4G8Z&5sb_W%F@ diff --git a/feather/target/test-classes/org/codejargon/feather/SingletonTest.class b/feather/target/test-classes/org/codejargon/feather/SingletonTest.class deleted file mode 100644 index b89346b9c90e1e2589833e17fbf0710f2ec02d12..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1539 zcma)6YflqF6g|@xwk<2v3N3F?5z0eWM0^!V2$963B9VqKep<@fZc}D)cZ(W-m0uK1 z^auE(jAwSsQYj6j$=sbgGw0lM=1%|o{rMZfDmFC41ZEt!YE+y%Bu0^pl(%sf!=jn+Wv+>yfD8nkk}$l8gZm_^q^N@ zpkzyHr+IW>xn=X9VF_eQPQ`5Oo35?qtz^Ql*`B~`={mI(1$61is6K&_w@vBWN7laW z*#zB`((z5-b|f(~0cO3)G7Y7qm_`G`It(6oDnHtwy4>3O8?s3wg`Olz2; zXvG+6-t;`n^>y6F9bN}da<=36FF!QR2JM+^M-Feb*omy}R%X_?otpsLoxs?SOujto=)u zA6f6_b7WM|IMIx@6*tI}-gBC6#oD%m_ZBUy&C5y_9epLG zIQ|RqQ`{^qX7k@L5{{>sILGb}3h76Z7)rrzl)x z8zkEh*>YE~Endp@h1DtZrp~pIXX*9Q4?GYE#};WkurEuOfl-ok3$6T6=SeqL z)){ZE^e6pY+jDKxpIzz1{dSKegS3D!Cx*B^3BE6|8i!RE>KoH^KjRSoA|fnb}KkF^RHDQ|;W&2f=Xm z;#-G}IX+BK{gzGgRG*qq)Yku6{XYDgpmt`h&QHe5IqhP+6eKe?nX|#Ec|FIlwHeyR zHk(r5%(4NYGqfVwG0MaWy%N1D@d?){&mv;Ad52o_-7V@j^dc;CU!1b6qlo8>+aMdT z{`eZtuu6|{Qw3QnV~uw*<=iC-?-rWBP`{?}NEc+mz(5luBhrR_1DnJZT7nmNMX4>~ H8&v)RU5V_6 diff --git a/feather/target/test-classes/org/codejargon/feather/TransitiveDependencyTest$B.class b/feather/target/test-classes/org/codejargon/feather/TransitiveDependencyTest$B.class deleted file mode 100644 index b49029627dbe646cba3f25649bc3bb24cb60f679..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 891 zcmbVKQA-;^5dP*8b4i*SYt`1aRs{u={XkRCb%NDyUhA*O*u2i@xBzA?$LzX}5}q~?Vo^}q zYxQejZw)MOazHmgpmsH?{GDR%h`M;npZR)5Gsprt@c0Ti52N)U|^5>f;OR{FEEIA@tNy1PW;v#5|L_y9f% zakgkF(#-7aY9F)TKc8O!W;lw_BV0D76h*V-N}96K;+dseu@RY(+A60ue9Nz_m#mAo zjIEod5dy-vk{c;%sY~&gS6n#4;96YF3=@PH5Jq#Q`CL7 zcM>SY3A|jGH(P_>PxKIbY|FqDyB?D+4n6O6_5BV<7<-Pp_5&PZ F_zRLFZeRca diff --git a/feather/target/test-classes/org/codejargon/feather/TransitiveDependencyTest.class b/feather/target/test-classes/org/codejargon/feather/TransitiveDependencyTest.class deleted file mode 100644 index 2368dc675b03913b19fba4ac62e2e955df56109f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1346 zcmbVMQEw7K5dH>e5Ad*vR%|VmDphD}uNA8%7!$xWF+og}@Z!^QU115`Gj~gkKg$;- zCK{jpQN}qyZ8Y~Fx!lg}&dfL8%+B2RAD_PhsN#`@7{T%UzT9v8%aX0<+)R*R}SHFv`;mo}GdZ$IRCWQ>vwr!xamc37ZjNk7re}v5Kpl+&g6kgroB7*58Gw zRic>BA!-(`aefhTqN-l1haA^!T*n3>sdQk3cDab#<#QC8BM}75;2%3}dON0E)@5uIS9PlF456D13`7D&7i(%xQ(YhwYfP3C$B6$@qVlkk#eZBh>c z=^Gn6*d=7R%DiiPrac~w2&?DsU^Wl6a0aaTED?%Pb^g^91QLX5lv!kH>tWx&^2WX^ zk5xESg(%bguqg=kGp(gRZ4}9)Ky`i_79K2cGfj4FVhcR-{67I={KccrtHnEqC9z!E z`Gn+$sXEPTs0Pxwz^gqoV42|^;Ua5eSeaX8S%yG;J_`dB;$IM-;8JThm;Z>hZ^%F2 zo1iek)&#fz1jr%5#u+3TF2`US$WDV5XCU)nNgm`q+~uG-*6uUg7(WN>8N(s&v0P{S SJnO4Saq|-Hvpiz?5UHOQTXMkw diff --git a/performance-test/target/classes/META-INF/MANIFEST.MF b/performance-test/target/classes/META-INF/MANIFEST.MF deleted file mode 100644 index c5baa62..0000000 --- a/performance-test/target/classes/META-INF/MANIFEST.MF +++ /dev/null @@ -1,5 +0,0 @@ -Manifest-Version: 1.0 -Built-By: edwin.njeru -Build-Jdk: 1.8.0_144 -Created-By: Maven Integration for Eclipse - diff --git a/performance-test/target/classes/META-INF/maven/org.codejargon.feather/feather-perftest/pom.properties b/performance-test/target/classes/META-INF/maven/org.codejargon.feather/feather-perftest/pom.properties deleted file mode 100644 index bbb68e0..0000000 --- a/performance-test/target/classes/META-INF/maven/org.codejargon.feather/feather-perftest/pom.properties +++ /dev/null @@ -1,7 +0,0 @@ -#Generated by Maven Integration for Eclipse -#Wed Oct 11 08:02:30 EAT 2017 -version=1.0.1-SNAPSHOT -groupId=org.codejargon.feather -m2e.projectName=feather-perftest -m2e.projectLocation=C\:\\Users\\edwin.njeru\\Documents\\NetBeansProjects\\feather\\performance-test -artifactId=feather-perftest diff --git a/performance-test/target/classes/META-INF/maven/org.codejargon.feather/feather-perftest/pom.xml b/performance-test/target/classes/META-INF/maven/org.codejargon.feather/feather-perftest/pom.xml deleted file mode 100644 index fe45e67..0000000 --- a/performance-test/target/classes/META-INF/maven/org.codejargon.feather/feather-perftest/pom.xml +++ /dev/null @@ -1,70 +0,0 @@ - - - 4.0.0 - - org.codejargon.feather - feather-parent - 1.0.1-SNAPSHOT - - jar - feather-perftest - Feather performance test - - - org.codejargon.feather - feather - ${project.version} - test - - - com.google.inject - guice - 4.0 - test - - - org.picocontainer - picocontainer - 2.15 - test - - - com.squareup.dagger - dagger - 1.2.2 - test - - - com.squareup.dagger - dagger-compiler - 1.2.2 - test - true - - - org.springframework - spring-context - 4.2.1.RELEASE - - - log4j - log4j - 1.2.17 - runtime - - - - - - org.apache.maven.plugins - maven-compiler-plugin - 3.3 - - 1.8 - 1.8 - - - - - \ No newline at end of file diff --git a/performance-test/target/test-classes/log4j.xml b/performance-test/target/test-classes/log4j.xml deleted file mode 100644 index 410bd5d..0000000 --- a/performance-test/target/test-classes/log4j.xml +++ /dev/null @@ -1,20 +0,0 @@ - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/performance-test/target/test-classes/org/codejargon/feather/A.class b/performance-test/target/test-classes/org/codejargon/feather/A.class deleted file mode 100644 index 0b7c6cbea673bfe876209efa2220829df5428903..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 579 zcmZ`$O-}+b5Pe;~1d+uL6fhpV2`2R7O=E&2Bql@?G2F{qpa|`zTM&Pi2V>&FAK;HN z&aTFj9NL*Toq2Cw`uX+#0pJXWId}|JW5+x&4{|E(*l0eI!cC;*?Htk!<*8T-J`;M( zZ--MEI0iOksQ1=PU7a&zFO*j9lHurNeOqI|P`g`br{;2?A~l@Jw${c8r;LsmD!o{F z#g&d#`E?SAJl&yH3rJzBh#X1`sguSa58AYd46+Pyo_;bwrfe9rIWR_yKAh~>KjZ64&Ozu+jW8@^Zm}HF1Z@@#IP?lZ_ z6gTN~spe5EG~ZBcp1#6=A>?73?oz^1LK;5Jm5B}5|LMjq_6X5jqQIzHA>`3}tl(32 LK(R_nwFvcZ@raAJ diff --git a/performance-test/target/test-classes/org/codejargon/feather/B.class b/performance-test/target/test-classes/org/codejargon/feather/B.class deleted file mode 100644 index 86234ae93c2c995822bdf1ad7857dec3bfb9d9b4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 579 zcmZ`$O-}+b5Pe;~1d+uL6fhpV2`2R7O=BV?Bql@?G2F{qpa|`zTM&Pi2V>&FAK;HN z&aTFj9NL*Toq2Cw`uX+#0pJXWId}|JW5+x&4{|E(*l0eI!cC;*?Htk!<*8T-J`;M( zZ--MEI0hCl)O%~DI_C`83#FC2WH>rm-_{r~)b1AAskt1eNDXK5N^9eUQ$|M&m0qm8 z;!4M={5lClp6<}91*EW5L=Gi})JbEI2W?tJ23ZEbr?k9T%!kt63u0y1>6t*x2EwWs z{}$73qDW?~kv3@+`etDR*;O%1w%v+1VrV9&qR=Wm9$7J$PsTp-$Vn@Wdk!VCU+_NF>(@HOfp91H{c;pC`&H| ziko!0RP!hnnr|pJPha7`5c051cPU{hAq}7A%ESij|8!#)dxU5%QD9W95c23fR`4l1 LpjaiPT7>#H`*VxE diff --git a/performance-test/target/test-classes/org/codejargon/feather/C.class b/performance-test/target/test-classes/org/codejargon/feather/C.class deleted file mode 100644 index 3337200b608c72a1eb973dfd81ce87f8b86f9f9c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 681 zcmaJ;U279T6g{&^lP1O{jaK{NSKrzw9U6R*N};S23PHh2z{kmUnogR`EVGlg{wyDg z;DbNFA0?hy#V1pSow?`UbI-Y#{rT(r4*;+6ypBX*-TAT1+?k#zKXz80YZWfEmuVeU zfzCu-DLGYkEI*7UItv2H*}lNmU_slv{ewv9-$m(@QhRHx35No2cJ7c`Sn40_4h1$o z&TTL=Jv4yGjN%j4wW|%|4mlIg`wf*qG40IHc#E$XZqMgm0G$N zXA|g^Ek*8)9iMwO)7Q>l$|7j5UHFn~nYvl-thRv?d;cY8&IWxGr24nJJk4CL*|2n_ zrgPdga_>T^hiz_G;m=Rdjmt9X##Q+Wo(7t%+#{+HwfNrW_nEoa)9!u4O7G<@R(r2* z@!%^{3D$UbQH^EZ9ZIZXg_%dpy!g|G$5AHat) z-d5vE7VW)fdd_!m+t07}4*+MVX5cYYjU98}Jj$uCW25;<3OA9KcbXX_8H!V}6nrN1 znBNVj(svB$bETELWH_$%)`YvQ(*dFH7uu=09H>wYXYxvG>vFzF_W;79BB>NIHt zqx9iAN0$t_zFAmbUaM$MrqgUht1{H%Oc+?D$0IA|^4ZuY9y)2IaW8@7Z8Hyymf8`c z@vqr8+R2sU;_p-NzHb6afz(pW7Bnv#SmRgB| zjN-~JCO7Bip2uZAzurFp>|?8dKw#6lfeh^}4V4>MBkxH0dvdbVE+8vV8>*?2BV`8i zvOlEI3kVXZcW2N}4+Qdu+Gu|yu)RBbtkGldtBLV?Og$az{)mo^v0iy?O)Rk5O`M;k zHi@e|PYa7@PdIA{87!1hKt&+4+vpX+Nz2F~FHr4jLl={ApWKaNRe`0h4b`ZpoKEm> zGwbg)+icBB*lDv_>Do?QNM|~cDRkPcB$GfhCB>1`W^m`!m>#Wrkg+F6);~uiPwY6d zhKy&8*1yA{HJ+ZlRDV0m>(EBTgxpk(ChS*?ob{<5c6h%G|1{nuSu(wGAj}~^kx`ys zN?hmpJL6u!wbXn=xw-d>>I>{rCe-{T#)iha&p{6L!iG>Yb6t9VtG4X zQRD@}3vIN&6sRAc%mf-Ep6#HHb{7Fcf!;(Lx+&5*xqCHFNMJCrkxFLD=~Dj`8-A&C zfy2pv|DOwVrnYbqUF$L>9G{lU2prrM#_N=3I@g?cWsLR8Yil@eSjFX;(6j=+cDbAp)- w2pOBKWTk;%_=eUi7i#D*mTjPg4aRQu4wyHq{#J!O^qG6?-)0`LXD7$*H?_BI00000 diff --git a/performance-test/target/test-classes/org/codejargon/feather/StartupComparisonTest$DaggerModule.class b/performance-test/target/test-classes/org/codejargon/feather/StartupComparisonTest$DaggerModule.class deleted file mode 100644 index e12b98cec8a228d909d5eae4f9d2f2bc2f3e2b2e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 727 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 C@TF1! diff --git a/performance-test/target/test-classes/org/codejargon/feather/StopWatch.class b/performance-test/target/test-classes/org/codejargon/feather/StopWatch.class deleted file mode 100644 index 7471d6e7d978d3c8b82724804dc48c3bebd1621a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 980 zcmah|+iuf95Ix&Cb?Ta?O)uObEfkXUV(z85LPAJ9RDmK=6;(WKoo(vMSyvmo5+A?^ z!2=W|_y9f%ah#+il`3IbJ3F(pbIuu$fB*UM3&106*ccHg$EM{4aZ?>i(~7mXuViwd zjMqrwqxUii4s2KglZWzHdXdyEZ)@*R1&P4uMySK&xj?Q`-4U=}vW9~k#$4nvDp0J4 zTD?izd&+Ffy+{d^>Tw{W9cjYM?+2~qAnXV%)c?oBCuBQ}qAa^wsSgM>5)@n6^w zOk>WZdW;CyTwKQu`fmmU!lNXNnN=Es?&Am) z*wOB{6POt~KkYk*Am2%(p&GHtekB;I3v=F%PD3-hmPBIGJ2+ zdLFHy&DXx6@VR^JaLtav3*%hfUIOg}dSjSCk&*23Cwil_D<_zIvGg5t0^F@xUvRZ_ zGyfC0-CV7)Yt30@b%OcE3GRNy$^c}JJcta7MI06^qJU+V%s^|5vM?U<56zwxJjN5k XTBu?TPpP7a8(8PgV)Pj^M&SPioh9W7 From 406f5317c711783445dd6acfef072abe71ebf1ee Mon Sep 17 00:00:00 2001 From: Edwin Njeru Date: Wed, 18 Apr 2018 10:02:01 +0300 Subject: [PATCH 08/11] added properties to the pom and javadoc,sources,jar and jacoco plugins --- pom.xml | 189 ++++++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 183 insertions(+), 6 deletions(-) diff --git a/pom.xml b/pom.xml index ca3fc41..bb197b4 100644 --- a/pom.xml +++ b/pom.xml @@ -28,9 +28,27 @@ + UTF-8 1.7 1.7 + + + 1.6.3 + 2.2.1 + 2.9.1 + 3.3 + 2.9.1 + 2.4 + 1.6 + 2.5.3 + 3.1.0-RC6 + 0.7.9 + 2.5.2 + 3.0.1 + 2.6 + 3.0.0-M1 + 2.9 scm:git:https://github.com/zsoltherpai/feather.git @@ -95,7 +113,7 @@ org.sonatype.plugins nexus-staging-maven-plugin - 1.6.3 + ${nexus.staging.maven.plugin.version} true ossrh @@ -120,12 +138,12 @@ org.apache.maven.plugins maven-compiler-plugin - 3.3 + ${maven.compiler.plugin.version} true false - 1.7 - 1.7 + ${maven.compiler.source} + ${maven.compiler.target} @@ -133,16 +151,175 @@ + + + ${basedir} + + README.md + CHANGELOG.md + LICENSE.txt + + + + + org.apache.maven.plugins + maven-source-plugin + ${maven.source.plugin.version} + + + attach-sources + + jar-no-fork + + package + + + + + org.apache.maven.plugins + maven-javadoc-plugin + ${maven.javadoc.plugin.version} + + + attach-javadocs + + jar + + package + + + org.apache.maven.plugins maven-compiler-plugin 3.3 - 1.7 - 1.7 + ${maven.compiler.source} + ${maven.compiler.target} + + org.apache.maven.plugins + maven-jar-plugin + ${maven.jar.plugin.version} + + + org.apache.maven.plugins + maven-enforcer-plugin + ${maven.enforcer.plugin.version} + + + enforce-maven + + enforce + + + + + ${maven.compiler.source} + + + ${maven.compiler.source} + + + + + + + + + com.github.spotbugs + spotbugs-maven-plugin + ${spotbugs.maven.plugin.version} + + + com.github.spotbugs + spotbugs + 3.1.0 + + + + + + + org.jacoco + jacoco-maven-plugin + ${jacoco-maven-plugin.version} + + + jacoco-initialize + + prepare-agent + + + + jacoco-site + package + + report + + + + + + + + + org.apache.maven.plugins + maven-javadoc-plugin + ${maven.javadoc.plugin.version} + + + true + + http://download.oracle.com/javase/1.8.0/docs/api/ + http://download.oracle.com/javaee/1.8/api/ + http://commons.apache.org/digester/apidocs/ + + + + + org.apache.maven.plugins + maven-project-info-reports-plugin + ${maven.project.info.reports.plugin.version} + + false + + + + org.codehaus.mojo + cobertura-maven-plugin + ${cobertura.maven.plugin.version} + + true + + html + xml + + + + + + org.codehaus.mojo + findbugs-maven-plugin + ${findbugs.maven.plugin.version} + + Normal + Default + + + + org.apache.maven.plugins + maven-pmd-plugin + ${maven.pmd.plugin.version} + + ${maven.compiler.target} + + + + \ No newline at end of file From fc9b5304c19bfd5fac2754a2a091332da6c49f83 Mon Sep 17 00:00:00 2001 From: Edwin Njeru Date: Wed, 18 Apr 2018 10:04:39 +0300 Subject: [PATCH 09/11] added properties to the pom and javadoc,sources,jar and jacoco plugins --- pom.xml | 3 --- 1 file changed, 3 deletions(-) diff --git a/pom.xml b/pom.xml index bb197b4..2168e38 100644 --- a/pom.xml +++ b/pom.xml @@ -38,10 +38,7 @@ 2.2.1 2.9.1 3.3 - 2.9.1 2.4 - 1.6 - 2.5.3 3.1.0-RC6 0.7.9 2.5.2 From a0ae021a447b88ab3d4b6c2199506b646175affd Mon Sep 17 00:00:00 2001 From: Edwin Njeru Date: Wed, 18 Apr 2018 10:08:18 +0300 Subject: [PATCH 10/11] fixed some javadoc issues in Feather class --- .../main/java/org/codejargon/feather/Feather.java | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/feather/src/main/java/org/codejargon/feather/Feather.java b/feather/src/main/java/org/codejargon/feather/Feather.java index a0169e9..8cf8217 100644 --- a/feather/src/main/java/org/codejargon/feather/Feather.java +++ b/feather/src/main/java/org/codejargon/feather/Feather.java @@ -30,7 +30,7 @@ public class Feather { /** * Constructs Feather with configuration modules * - * @param varargs of modules classes + * @param modules varargs of modules classes * * @return an instance of Feather */ @@ -41,7 +41,7 @@ public static Feather with(Object... modules) { /** * Constructs Feather with configuration modules * - * @param An {@code Iterable} collection of configuration modules + * @param modules {@code Iterable} collection of configuration modules * @return */ public static Feather with(Iterable modules) { @@ -256,7 +256,7 @@ private static Set append(Set set, Key newKey) { * fields with their corresponding {@code Provider} types, or Parameterised types or * type arguments. * - * @param Class target + * @param target Class target * @return two-dimensional Object[][] array */ private static Object[][] injectFields(Class target) { @@ -280,7 +280,7 @@ private static Object[][] injectFields(Class target) { * Returns accessible set of fields ({@code Field}) in a given class type * which are annotated with the {@code Inject} {@code Annotation} * - * @param Class type + * @param type Class type * @return Set fields */ private static Set fields(Class type) { @@ -302,7 +302,7 @@ private static Set fields(Class type) { * Returns a String representing a concatenation of Keys from a {@code Set} * of {@code Key} and appends the last {@code Key} * - * @param Set chain + * @param chain Set chain * @param {@code Key} lastKey * @return "->" concatenated string of {@code Key} names */ @@ -352,7 +352,7 @@ private static Constructor constructor(Key key) { * Creates a hashSet of methods from a given type which are annotated with the * {@code Provides} annotation * - * @param Class type + * @param type Class type * @return Set containing {@code Provides} annotation */ private static Set providers(Class type) { @@ -392,7 +392,7 @@ private static Annotation qualifier(Annotation[] annotations) { * looping through * * @param {@code Method} - * @param Set of discoveredMethods + * @param discoveredMethods Set of discoveredMethods * @return boolean whether or not a provider exists in a subclass */ private static boolean providerInSubClass(Method method, Set discoveredMethods) { From 4f5eb99aede92eba3b998782fdfce659de18acf5 Mon Sep 17 00:00:00 2001 From: Edwin Njeru Date: Wed, 18 Apr 2018 10:14:28 +0300 Subject: [PATCH 11/11] minor update to the travis configuration --- .travis.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 16b3c05..d205732 100644 --- a/.travis.yml +++ b/.travis.yml @@ -10,7 +10,6 @@ script: - mvn jar:test-jar - mvn source:jar - mvn source:test-jar -- mvn spotbugs:check - mvn surefire:test - mvn clean package - mvn clean install