java/sql-dk/src/info/globalcode/sql/dk/CLIParser.java
branchv_0
changeset 166 5488c2dcf680
parent 159 9632b23df30c
child 200 2e351d7c26c4
     1.1 --- a/java/sql-dk/src/info/globalcode/sql/dk/CLIParser.java	Thu Jan 16 12:28:08 2014 +0100
     1.2 +++ b/java/sql-dk/src/info/globalcode/sql/dk/CLIParser.java	Fri Jan 17 23:24:07 2014 +0100
     1.3 @@ -17,8 +17,11 @@
     1.4   */
     1.5  package info.globalcode.sql.dk;
     1.6  
     1.7 +import static info.globalcode.sql.dk.Functions.readString;
     1.8  import info.globalcode.sql.dk.InfoLister.InfoType;
     1.9  import info.globalcode.sql.dk.configuration.Property;
    1.10 +import java.io.IOException;
    1.11 +import java.io.InputStream;
    1.12  import java.util.ArrayList;
    1.13  import java.util.HashMap;
    1.14  import java.util.List;
    1.15 @@ -35,7 +38,7 @@
    1.16  
    1.17  	public static final String TYPE_NAME_SEPARATOR = ":";
    1.18  
    1.19 -	public CLIOptions parseOptions(String[] args) throws CLIParserException {
    1.20 +	public CLIOptions parseOptions(String[] args, InputStream in) throws CLIParserException {
    1.21  		CLIOptions options = new CLIOptions();
    1.22  
    1.23  		List<SQLType> numberedTypes = new ArrayList<>();
    1.24 @@ -70,6 +73,13 @@
    1.25  				case Tokens.SQL:
    1.26  					options.setSql(fetchNext(args, ++i));
    1.27  					break;
    1.28 +				case Tokens.SQL_IN:
    1.29 +					try {
    1.30 +						options.setSql(readString(in));
    1.31 +					} catch (IOException e) {
    1.32 +						throw new CLIParserException("Unable to read SQL from the input stream", e);
    1.33 +					}
    1.34 +					break;
    1.35  				case Tokens.BATCH:
    1.36  					options.setBatch(true);
    1.37  					break;
    1.38 @@ -160,6 +170,7 @@
    1.39  		public static final String DB = "--db"; // bash-completion:option // help: database name
    1.40  		public static final String DB_PROPERTY = "--db-property"; // bash-completion:option // help: name and value
    1.41  		public static final String SQL = "--sql"; // bash-completion:option // help: SQL query/command
    1.42 +		public static final String SQL_IN = "--sql-in"; // bash-completion:option // help: SQL query/command
    1.43  		public static final String BATCH = "--batch"; // bash-completion:option // help: batch mode (no argument)
    1.44  		public static final String DATA = "--data"; // bash-completion:option // help: list of ordinal parameters
    1.45  		public static final String DATA_NAMED = "--data-named"; // bash-completion:option // help: list of named parameters