summaryrefslogtreecommitdiff
path: root/base/src/examples
diff options
context:
space:
mode:
authorBenjamin Culkin <scorpress@gmail.com>2025-03-12 20:37:08 -0400
committerBenjamin Culkin <scorpress@gmail.com>2025-03-12 20:37:08 -0400
commit1271863d7011c38dcbdd285f922d064e07d6d4da (patch)
treeabb1fbd90abb08d7c6e64b7cd88f5e89d14f48c3 /base/src/examples
parentc3a5d6c81b85c8d11f7428e27966275fc8434710 (diff)
parent0f9e11bf09c21e7c93bf324fe23a9c5170109fd5 (diff)
Merge remote-tracking branch 'origin/trunk' into trunk
Diffstat (limited to 'base/src/examples')
-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();
+ }
}
}