diff options
| author | Benjamin J. Culkin <bjculkin@mix.wvu.edu> | 2017-09-11 11:10:28 -0300 |
|---|---|---|
| committer | Benjamin J. Culkin <bjculkin@mix.wvu.edu> | 2017-09-11 11:10:28 -0300 |
| commit | 90f9bf8e8deddf267d7e7c2fd2fdc01f39f08df8 (patch) | |
| tree | 6ca40b2540ea2803dc030abd2e2dc81757d6042c /BJC-Utils2/src/main/java/bjc | |
| parent | 0a062f0fc8ace3a77bd7ef75d40eb6c1761be345 (diff) | |
Add ToggledBlockReader to CLI
Diffstat (limited to 'BJC-Utils2/src/main/java/bjc')
| -rw-r--r-- | BJC-Utils2/src/main/java/bjc/utils/cli/objects/BlockReaderCLI.java | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/BJC-Utils2/src/main/java/bjc/utils/cli/objects/BlockReaderCLI.java b/BJC-Utils2/src/main/java/bjc/utils/cli/objects/BlockReaderCLI.java index 5a87a9a..e69758f 100644 --- a/BJC-Utils2/src/main/java/bjc/utils/cli/objects/BlockReaderCLI.java +++ b/BJC-Utils2/src/main/java/bjc/utils/cli/objects/BlockReaderCLI.java @@ -98,6 +98,9 @@ public class BlockReaderCLI { case "def-serial": defSerial(com); break; + case "def-toggled": + defToggled(com); + break; case "exit": case "quit": if(interactive) @@ -197,6 +200,39 @@ public class BlockReaderCLI { readers.put(blockName, reader); } + private void defToggled(Command com) { + String[] parts = com.remnCommand.split(" "); + + if(parts.length != 3) { + System.err.print(com.error("Incorrect number of arguments to def-toggled. Requires a block name and two reader names\n")); + return; + } + + /* + * Get the block name. + */ + String blockName = parts[0]; + if(readers.containsKey(blockName)) { + System.err.print(com.warn("Shadowing existing reader named %s\n", blockName)); + } + + /* + * Make sure the component readers exist. + */ + if(!readers.containsKey(parts[1])) { + System.err.print(com.error("No reader named %s\n", parts[1])); + return; + } + + if(!readers.containsKey(parts[2])) { + System.err.print(com.error("No reader named %s\n", parts[2])); + return; + } + + BlockReader reader = new Toggled(readers.get(parts[1]), readers.get(parts[2])); + readers.put(blockName, reader); + } + private void defLayered(Command com) { String[] parts = com.remnCommand.split(" "); |
