--- a/java/sql-dk/src/info/globalcode/sql/dk/CLIParser.java Thu Jan 16 12:28:08 2014 +0100
+++ b/java/sql-dk/src/info/globalcode/sql/dk/CLIParser.java Fri Jan 17 23:24:07 2014 +0100
@@ -17,8 +17,11 @@
*/
package info.globalcode.sql.dk;
+import static info.globalcode.sql.dk.Functions.readString;
import info.globalcode.sql.dk.InfoLister.InfoType;
import info.globalcode.sql.dk.configuration.Property;
+import java.io.IOException;
+import java.io.InputStream;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
@@ -35,7 +38,7 @@
public static final String TYPE_NAME_SEPARATOR = ":";
- public CLIOptions parseOptions(String[] args) throws CLIParserException {
+ public CLIOptions parseOptions(String[] args, InputStream in) throws CLIParserException {
CLIOptions options = new CLIOptions();
List<SQLType> numberedTypes = new ArrayList<>();
@@ -70,6 +73,13 @@
case Tokens.SQL:
options.setSql(fetchNext(args, ++i));
break;
+ case Tokens.SQL_IN:
+ try {
+ options.setSql(readString(in));
+ } catch (IOException e) {
+ throw new CLIParserException("Unable to read SQL from the input stream", e);
+ }
+ break;
case Tokens.BATCH:
options.setBatch(true);
break;
@@ -160,6 +170,7 @@
public static final String DB = "--db"; // bash-completion:option // help: database name
public static final String DB_PROPERTY = "--db-property"; // bash-completion:option // help: name and value
public static final String SQL = "--sql"; // bash-completion:option // help: SQL query/command
+ public static final String SQL_IN = "--sql-in"; // bash-completion:option // help: SQL query/command
public static final String BATCH = "--batch"; // bash-completion:option // help: batch mode (no argument)
public static final String DATA = "--data"; // bash-completion:option // help: list of ordinal parameters
public static final String DATA_NAMED = "--data-named"; // bash-completion:option // help: list of named parameters