summaryrefslogtreecommitdiff
path: root/BJC-Utils2/src/main/java/bjc/utils/cli/fds/MacroFDSMode.java
diff options
context:
space:
mode:
authorbjculkin <bjculkin@mix.wvu.edu>2017-03-31 08:49:17 -0400
committerbjculkin <bjculkin@mix.wvu.edu>2017-03-31 08:49:17 -0400
commit21db48520acfd6e6ac175aa5df12e50c6be2c767 (patch)
tree722a3f3b889a7d6d76ac056bdc47b66204ca657a /BJC-Utils2/src/main/java/bjc/utils/cli/fds/MacroFDSMode.java
parentdaceafeeb90680116c289a7c301c42eb3e57eb97 (diff)
Move FDS to new project
Diffstat (limited to 'BJC-Utils2/src/main/java/bjc/utils/cli/fds/MacroFDSMode.java')
-rw-r--r--BJC-Utils2/src/main/java/bjc/utils/cli/fds/MacroFDSMode.java79
1 files changed, 0 insertions, 79 deletions
diff --git a/BJC-Utils2/src/main/java/bjc/utils/cli/fds/MacroFDSMode.java b/BJC-Utils2/src/main/java/bjc/utils/cli/fds/MacroFDSMode.java
deleted file mode 100644
index 2576ee5..0000000
--- a/BJC-Utils2/src/main/java/bjc/utils/cli/fds/MacroFDSMode.java
+++ /dev/null
@@ -1,79 +0,0 @@
-package bjc.utils.cli.fds;
-
-import bjc.utils.ioutils.Block;
-
-import java.util.List;
-import java.util.Map;
-import java.util.function.Consumer;
-
-/**
- * A implementation of FDS mode that invokes macros bound into a map.
- *
- * @author EVE
- *
- * @param <S>
- * The FDS state type.
- */
-public class MacroFDSMode<S> implements FDSMode<S> {
- private final class MacroFDSCommand implements FDSCommand<S> {
- private String macroName;
-
- public MacroFDSCommand(String c) {
- macroName = c;
- }
-
- @Override
- public void run(FDSState<S> state) {
- macros.get(macroName).forEach(dest);
- }
- }
-
- /*
- * The available macros.
- */
- private Map<String, List<Block>> macros;
-
- /*
- * Where to send blocks from macros.
- */
- private Consumer<Block> dest;
-
- /**
- * Create a new FDS mode for macros.
- *
- * @param macros
- * The macros to use.
- *
- * @param dest
- * The destination for blocks from the macros.
- */
- public MacroFDSMode(Map<String, List<Block>> macros, Consumer<Block> dest) {
- this.macros = macros;
- this.dest = dest;
- }
-
- @Override
- public String[] registeredChars() {
- return macros.keySet().toArray(new String[0]);
- }
-
- @Override
- public boolean hasCommand(String comName) {
- return macros.containsKey(comName);
- }
-
- @Override
- public boolean hasSubmode(String submodeName) {
- return false;
- }
-
- @Override
- public FDSCommand<S> getCommand(String comName) throws FDSException {
- return new MacroFDSCommand(comName);
- }
-
- @Override
- public FDSMode<S> getSubmode(String submodeName) throws FDSException {
- throw new FDSException("Submodes aren't available in macroName modes");
- }
-} \ No newline at end of file