diff -r f32dac78d13a -r 72da10f632b5 java/sql-dk/src/info/globalcode/sql/dk/CLIStarter.java --- a/java/sql-dk/src/info/globalcode/sql/dk/CLIStarter.java Sun Dec 15 19:20:50 2013 +0100 +++ b/java/sql-dk/src/info/globalcode/sql/dk/CLIStarter.java Sun Dec 15 20:16:27 2013 +0100 @@ -6,36 +6,59 @@ */ public class CLIStarter { + public static final String DEFAULT_NAME_PREFIX = ":"; + public static void main(String[] args) { - + args = new String[]{"--sql", "SELECT * FROM tabulka;", "--db", "databáze_1"}; - + CLIOptions options = parseOptions(args); } private static CLIOptions parseOptions(String[] args) { CLIOptions options = new CLIOptions(); + String typesString = null; + String namePrefix = DEFAULT_NAME_PREFIX; + + for (int i = 0; i < args.length; i++) { String arg = args[i]; + switch (arg) { + case Tokens.TYPES: + typesString = args[++i]; + break; + case Tokens.NAME_PREFIX: + namePrefix = args[++i]; + break; + } + } + + for (int i = 0; i < args.length; i++) { + String arg = args[i]; switch (arg) { + case Tokens.TYPES: + case Tokens.NAME_PREFIX: + i++; + break; case Tokens.DB: - String db = args[++i]; - System.out.println("DB: " + db); + options.setDatabaseName(args[++i]); break; case Tokens.SQL: - String sql = args[++i]; - System.out.println("SQL: " + sql); + options.setSql(args[++i]); + options.setCommandType(CLIOptions.COMMAND_TYPE.QUERY); break; case Tokens.SQL_UPDATE: + case Tokens.SQL_INSERT: + options.setSql(args[++i]); + options.setCommandType(CLIOptions.COMMAND_TYPE.UPDATE); break; case Tokens.BATCH: + options.setBatch(true); break; case Tokens.DATA: break; - case Tokens.TYPES: - break; } } @@ -48,8 +71,10 @@ public static final String DB = "--db"; public static final String SQL = "--sql"; public static final String SQL_UPDATE = "--sql-update"; + public static final String SQL_INSERT = "--sql-insert"; public static final String BATCH = "--batch"; public static final String DATA = "--data"; + public static final String NAME_PREFIX = "--name-prefix"; public static final String TYPES = "--types"; private Tokens() {