diff options
author | Peter Wu <peter@lekensteyn.nl> | 2014-05-02 23:38:34 +0200 |
---|---|---|
committer | Peter Wu <peter@lekensteyn.nl> | 2014-05-02 23:38:34 +0200 |
commit | 4bd53349774beecbf235f1589a3d9168b04a17f5 (patch) | |
tree | 39fe8e54446dc6e1579455c36d2c8ce50263cd91 /src | |
parent | 36fdc062cafa69b1ebf2e48e27b6103919464d3b (diff) | |
download | TwitterDataAnalytics-4bd53349774beecbf235f1589a3d9168b04a17f5.tar.gz |
Accept multiple commands (for automation)
Instead of `./run.sh shell target +file`, and then manually running
add and commit, you can now use:
./run.sh shell 'target +file' 'add samsung' commit
Quoting is necessary because of the spaces.
Diffstat (limited to 'src')
-rw-r--r-- | src/main/Main.java | 4 | ||||
-rw-r--r-- | src/main/TweetShell.java | 19 |
2 files changed, 15 insertions, 8 deletions
diff --git a/src/main/Main.java b/src/main/Main.java index b782d89..4b02223 100644 --- a/src/main/Main.java +++ b/src/main/Main.java @@ -173,7 +173,9 @@ public class Main { TweetShell shell = new TweetShell(); // pass any remaining parameters to the shell if (params.length > 0) { - shell.execute(params); + for (String cmd : params) { + shell.execute(cmd); + } } shell.process_forever(); break; diff --git a/src/main/TweetShell.java b/src/main/TweetShell.java index 818c693..d292c9a 100644 --- a/src/main/TweetShell.java +++ b/src/main/TweetShell.java @@ -126,19 +126,24 @@ public class TweetShell implements TwitterApi.PinSupplier { printPrompt(); while (scanner.hasNextLine()) { String line = scanner.nextLine().trim(); - String[] args = line.split("\\s+", 2); - if (!args[0].isEmpty()) { - // non-empty command, let's see whether it makes sense? - if (!execute(args)) { - // requested to terminate - break; - } + if (!execute(line)) { + // requested to terminate + break; } // print prompt for reading next line printPrompt(); } } + public boolean execute(String cmd) { + String[] args = cmd.trim().split("\\s+", 2); + if (!args[0].isEmpty()) { + // non-empty command, let's see whether it makes sense? + return execute(args); + } + return true; + } + /** * Executes a command with optional parameters. * |