diff options
Diffstat (limited to 'BJC-Utils2/src/main/java/bjc/utils/components')
| -rw-r--r-- | BJC-Utils2/src/main/java/bjc/utils/components/FileComponentRepository.java | 16 | ||||
| -rw-r--r-- | BJC-Utils2/src/main/java/bjc/utils/components/IComponentRepository.java | 9 |
2 files changed, 13 insertions, 12 deletions
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<E extends IDescribedComponent> /** * The internal storage of components */ - private Map<String, E> components; + private IFunctionalMap<String, E> components; /** * The path that all the components came from @@ -57,7 +58,8 @@ public class FileComponentRepository<E extends IDescribedComponent> + "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<E extends IDescribedComponent> } @Override - public FunctionalList<E> getComponentList() { - FunctionalList<E> returnedList = new FunctionalList<>(); + public IFunctionalList<E> getComponentList() { + IFunctionalList<E> returnedList = new FunctionalList<>(); components .forEach((name, component) -> returnedList.add(component)); @@ -110,7 +112,7 @@ public class FileComponentRepository<E extends IDescribedComponent> } @Override - public Map<String, E> getComponents() { + public IFunctionalMap<String, E> 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<E extends IDescribedComponent> { * * @return A list of all the registered components */ - public FunctionalList<E> getComponentList(); + public IFunctionalList<E> getComponentList(); /** * Get all of the components this repository knows about @@ -26,7 +25,7 @@ public interface IComponentRepository<E extends IDescribedComponent> { * @return A map from component name to component, containing all of * the components in the repositories */ - public Map<String, E> getComponents(); + public IFunctionalMap<String, E> getComponents(); /** * Get a component with a specific name |
