diff options
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(" "); |
