diff --git a/lib/src/main/java/net/tomatentum/cutin/ReflectedMethodFactory.java b/lib/src/main/java/net/tomatentum/cutin/ReflectedMethodFactory.java index 7f85a8d..939961b 100644 --- a/lib/src/main/java/net/tomatentum/cutin/ReflectedMethodFactory.java +++ b/lib/src/main/java/net/tomatentum/cutin/ReflectedMethodFactory.java @@ -5,14 +5,14 @@ import java.util.List; import java.util.Optional; -public interface ReflectedMethodFactory { - Optional produce(Method method, Object containingClass); - ReflectedMethodFactory addFactory(Factory factory); +public interface ReflectedMethodFactory { + Optional> produce(Method method, Object containingClass); + ReflectedMethodFactory addFactory(Factory factory); - public interface Factory { + public interface Factory { - Optional produce(Method method, Object containingObject); - void addParser(ReflectedMethod method, List parser); + Optional> produce(Method method, Object containingObject); + void addParser(ReflectedMethod method, List parser); } } \ No newline at end of file diff --git a/lib/src/main/java/net/tomatentum/cutin/ReflectedMethodFactoryImpl.java b/lib/src/main/java/net/tomatentum/cutin/ReflectedMethodFactoryImpl.java index ae208f3..f2b5c87 100644 --- a/lib/src/main/java/net/tomatentum/cutin/ReflectedMethodFactoryImpl.java +++ b/lib/src/main/java/net/tomatentum/cutin/ReflectedMethodFactoryImpl.java @@ -11,23 +11,23 @@ import org.slf4j.LoggerFactory; import net.tomatentum.cutin.util.ReflectionUtil; -public class ReflectedMethodFactoryImpl implements ReflectedMethodFactory { +public class ReflectedMethodFactoryImpl implements ReflectedMethodFactory { private Logger logger = LoggerFactory.getLogger(getClass()); - private List factories; + private List> factories; public ReflectedMethodFactoryImpl() { this(new ArrayList<>()); } - public ReflectedMethodFactoryImpl(List factories) { + public ReflectedMethodFactoryImpl(List> factories) { this.factories = factories; } @Override - public Optional produce(Method method, Object containingClass) { - Optional rmethod = this.factories.stream() + public Optional> produce(Method method, Object containingClass) { + Optional> rmethod = this.factories.stream() .map(f -> factoryProduce(f, method, containingClass)) .filter(Optional::isPresent) .map(Optional::get) @@ -41,14 +41,14 @@ public class ReflectedMethodFactoryImpl implements ReflectedMethodFactory { } @Override - public ReflectedMethodFactory addFactory(Factory factory) { + public ReflectedMethodFactory addFactory(Factory factory) { this.factories.add(factory); return this; } - private Optional factoryProduce(Factory factory, Method method, Object containingClass) { + private Optional> factoryProduce(Factory factory, Method method, Object containingClass) { List parser = new ArrayList<>(); - Optional m = factory.produce(method, containingClass); + Optional> m = factory.produce(method, containingClass); m.ifPresent(x -> { factory.addParser(x, parser); parser.forEach(MethodParser::parse); diff --git a/lib/src/main/java/net/tomatentum/cutin/container/LoneMethodContainer.java b/lib/src/main/java/net/tomatentum/cutin/container/LoneMethodContainer.java index 63de214..a2f2050 100644 --- a/lib/src/main/java/net/tomatentum/cutin/container/LoneMethodContainer.java +++ b/lib/src/main/java/net/tomatentum/cutin/container/LoneMethodContainer.java @@ -14,9 +14,9 @@ import net.tomatentum.cutin.ReflectedMethodFactory; public class LoneMethodContainer implements MethodContainer { private Map> methodStore; - private ReflectedMethodFactory factory; + private ReflectedMethodFactory factory; - public LoneMethodContainer(ReflectedMethodFactory factory) { + public LoneMethodContainer(ReflectedMethodFactory factory) { this.methodStore = new HashMap<>(); this.factory = factory; } diff --git a/lib/src/main/java/net/tomatentum/cutin/container/MultiMethodContainer.java b/lib/src/main/java/net/tomatentum/cutin/container/MultiMethodContainer.java index 1dd13b5..7cb09e1 100644 --- a/lib/src/main/java/net/tomatentum/cutin/container/MultiMethodContainer.java +++ b/lib/src/main/java/net/tomatentum/cutin/container/MultiMethodContainer.java @@ -17,9 +17,9 @@ import net.tomatentum.cutin.util.ReflectionUtil; public class MultiMethodContainer implements MethodContainer { private Set> entries; - private ReflectedMethodFactory factory; + private ReflectedMethodFactory factory; - public MultiMethodContainer(ReflectedMethodFactory factory) { + public MultiMethodContainer(ReflectedMethodFactory factory) { this.entries = new HashSet<>(); this.factory = factory; }