Type names in --types option are case insensitive v_0
authorFrantišek Kučera <franta-hg@frantovo.cz>
Sat, 28 Dec 2013 20:47:43 +0100
branchv_0
changeset 93 5a4dbe6f962c
parent 92 1399ac70a5bd
child 94 b9af501399ef
Type names in --types option are case insensitive
java/sql-dk/src/info/globalcode/sql/dk/CLIParser.java
java/sql-dk/src/info/globalcode/sql/dk/InfoLister.java
java/sql-dk/src/info/globalcode/sql/dk/SQLType.java
--- a/java/sql-dk/src/info/globalcode/sql/dk/CLIParser.java	Sat Dec 28 20:36:29 2013 +0100
+++ b/java/sql-dk/src/info/globalcode/sql/dk/CLIParser.java	Sat Dec 28 20:47:43 2013 +0100
@@ -46,11 +46,11 @@
 					for (String oneType : typesString.split(",")) {
 						int sepatratorIndex = oneType.indexOf(TYPE_NAME_SEPARATOR);
 						if (sepatratorIndex == -1) {
-							numberedTypes.add(getType(oneType));
+							numberedTypes.add(getType(oneType.toUpperCase()));
 						} else {
 							String namePart = oneType.substring(0, sepatratorIndex).trim();
 							String typePart = oneType.substring(sepatratorIndex + TYPE_NAME_SEPARATOR.length(), oneType.length());
-							namedTypes.put(namePart, getType(typePart));
+							namedTypes.put(namePart, getType(typePart.toUpperCase()));
 						}
 					}
 					break;
--- a/java/sql-dk/src/info/globalcode/sql/dk/InfoLister.java	Sat Dec 28 20:36:29 2013 +0100
+++ b/java/sql-dk/src/info/globalcode/sql/dk/InfoLister.java	Sat Dec 28 20:47:43 2013 +0100
@@ -113,6 +113,7 @@
 			data.add(new Object[]{sqlType.name(), sqlType.getCode()});
 		}
 		printTable(formatter, header, data);
+		log.log(Level.INFO, "Type names in --types option are case insensitive");
 	}
 
 	public void listDatabases() throws ConfigurationException, FormatterException {
--- a/java/sql-dk/src/info/globalcode/sql/dk/SQLType.java	Sat Dec 28 20:36:29 2013 +0100
+++ b/java/sql-dk/src/info/globalcode/sql/dk/SQLType.java	Sat Dec 28 20:47:43 2013 +0100
@@ -25,6 +25,9 @@
  */
 public enum SQLType {
 
+	/**
+	 * Names must be upper case – user input is also converted to upper case → case insensitive
+	 */
 	BIT(Types.BIT),
 	TINYINT(Types.TINYINT),
 	SMALLINT(Types.SMALLINT),