summaryrefslogtreecommitdiff
path: root/base/src/examples/java/bjc
diff options
context:
space:
mode:
Diffstat (limited to 'base/src/examples/java/bjc')
-rw-r--r--base/src/examples/java/bjc/utils/examples/cli/StreamTerminalExample.java28
1 files changed, 25 insertions, 3 deletions
diff --git a/base/src/examples/java/bjc/utils/examples/cli/StreamTerminalExample.java b/base/src/examples/java/bjc/utils/examples/cli/StreamTerminalExample.java
index 208ecf7..33c5827 100644
--- a/base/src/examples/java/bjc/utils/examples/cli/StreamTerminalExample.java
+++ b/base/src/examples/java/bjc/utils/examples/cli/StreamTerminalExample.java
@@ -1,11 +1,33 @@
package bjc.utils.examples.cli;
+import java.io.InputStreamReader;
+import java.io.OutputStreamWriter;
import java.util.Scanner;
+import java.util.function.Consumer;
+
+import bjc.data.IntHolder;
+import bjc.utils.cli.StreamTerminal;
public class StreamTerminalExample {
public static void main(String[] args) {
- Scanner sysIn = new Scanner(System.in);
-
- // TODO Figure out a good way to demo this
+ try (Scanner sysIn = new Scanner(System.in)) {
+
+ InputStreamReader inStream = new InputStreamReader(System.in);
+ OutputStreamWriter outStream = new OutputStreamWriter(System.out);
+
+ StreamTerminal sterm = new StreamTerminal(inStream, outStream, "#", null);
+ IntHolder comNo = new IntHolder();
+ Consumer<String> defMode = (lne) -> {
+ sterm.addOutput(lne + "\n");
+
+ sterm.addOutput(String.format("%d > ", comNo.incr()));
+ };
+
+ sterm.setMode(defMode);
+ sterm.addOutput("0 > ");
+ sterm.setParagraphMode(true);
+ sterm.setPromptOnContinue(true);
+ sterm.run();
+ }
}
}