From 275a627719fc2231b16caea41130ff09f0f2b6a1 Mon Sep 17 00:00:00 2001 From: bculkin2442 Date: Fri, 8 Apr 2016 13:28:09 -0400 Subject: Switch functional data to use interfaces --- .../bjc/utils/components/FileComponentRepository.java | 16 +++++++++------- .../java/bjc/utils/components/IComponentRepository.java | 9 ++++----- 2 files changed, 13 insertions(+), 12 deletions(-) (limited to 'BJC-Utils2/src/main/java/bjc/utils/components') diff --git a/BJC-Utils2/src/main/java/bjc/utils/components/FileComponentRepository.java b/BJC-Utils2/src/main/java/bjc/utils/components/FileComponentRepository.java index 4aea0d6..37c94f6 100644 --- a/BJC-Utils2/src/main/java/bjc/utils/components/FileComponentRepository.java +++ b/BJC-Utils2/src/main/java/bjc/utils/components/FileComponentRepository.java @@ -2,14 +2,15 @@ package bjc.utils.components; import java.io.File; import java.nio.file.Path; -import java.util.HashMap; -import java.util.Map; import java.util.function.Function; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import bjc.utils.funcdata.FunctionalList; +import bjc.utils.funcdata.FunctionalMap; +import bjc.utils.funcdata.IFunctionalList; +import bjc.utils.funcdata.IFunctionalMap; /** * A component repository that loads its components from files in a @@ -29,7 +30,7 @@ public class FileComponentRepository /** * The internal storage of components */ - private Map components; + private IFunctionalMap components; /** * The path that all the components came from @@ -57,7 +58,8 @@ public class FileComponentRepository + "Components can only be read from a directory"); } - components = new HashMap<>(); + components = new FunctionalMap<>(); + sourceDirectory = directory.toPath().toAbsolutePath(); File[] listFiles = directory.listFiles(); @@ -100,8 +102,8 @@ public class FileComponentRepository } @Override - public FunctionalList getComponentList() { - FunctionalList returnedList = new FunctionalList<>(); + public IFunctionalList getComponentList() { + IFunctionalList returnedList = new FunctionalList<>(); components .forEach((name, component) -> returnedList.add(component)); @@ -110,7 +112,7 @@ public class FileComponentRepository } @Override - public Map getComponents() { + public IFunctionalMap getComponents() { return components; } diff --git a/BJC-Utils2/src/main/java/bjc/utils/components/IComponentRepository.java b/BJC-Utils2/src/main/java/bjc/utils/components/IComponentRepository.java index 135e609..c720015 100644 --- a/BJC-Utils2/src/main/java/bjc/utils/components/IComponentRepository.java +++ b/BJC-Utils2/src/main/java/bjc/utils/components/IComponentRepository.java @@ -1,8 +1,7 @@ package bjc.utils.components; -import java.util.Map; - -import bjc.utils.funcdata.FunctionalList; +import bjc.utils.funcdata.IFunctionalList; +import bjc.utils.funcdata.IFunctionalMap; /** * A collection of implementations of {@link IDescribedComponent} @@ -18,7 +17,7 @@ public interface IComponentRepository { * * @return A list of all the registered components */ - public FunctionalList getComponentList(); + public IFunctionalList getComponentList(); /** * Get all of the components this repository knows about @@ -26,7 +25,7 @@ public interface IComponentRepository { * @return A map from component name to component, containing all of * the components in the repositories */ - public Map getComponents(); + public IFunctionalMap getComponents(); /** * Get a component with a specific name -- cgit v1.2.3