]> source.dussan.org Git - iciql.git/commitdiff
Renamed logger. Improved test suite. Added Apache Commons and DBCP. v0.7.0
authorJames Moger <james.moger@gmail.com>
Wed, 17 Aug 2011 17:30:40 +0000 (13:30 -0400)
committerJames Moger <james.moger@gmail.com>
Wed, 17 Aug 2011 17:30:40 +0000 (13:30 -0400)
24 files changed:
.classpath
.gitignore
NOTICE
README.markdown
api/v6.xml [new file with mode: 0644]
build.xml
docs/00_index.mkd
docs/02_usage.mkd
docs/03_performance.mkd
docs/05_building.mkd
docs/05_releases.mkd
src/com/iciql/Constants.java
src/com/iciql/Db.java
src/com/iciql/IciqlException.java
src/com/iciql/Query.java
src/com/iciql/SQLDialectDefault.java
src/com/iciql/TableDefinition.java
src/com/iciql/build/Build.java
src/com/iciql/util/IciqlLogger.java [new file with mode: 0644]
src/com/iciql/util/Slf4jIciqlListener.java [new file with mode: 0644]
src/com/iciql/util/Slf4jStatementListener.java [deleted file]
src/com/iciql/util/StatementLogger.java [deleted file]
tests/com/iciql/test/AnnotationsTest.java
tests/com/iciql/test/IciqlSuite.java

index a842b70de305df9d1bcb3a9a85af13b745dacd5e..e985d8c25fbcb417898daff0381c9d5a5a62288b 100644 (file)
                </attributes>\r
        </classpathentry>\r
        <classpathentry kind="lib" path="ext/postgresql-9.0-801.jdbc4.jar"/>\r
+       <classpathentry kind="lib" path="ext/commons-dbcp-1.4.jar" sourcepath="C:/Users/James Moger/.m2/repository/commons-dbcp/commons-dbcp/1.4/commons-dbcp-1.4-sources.jar"/>\r
+       <classpathentry kind="lib" path="ext/commons-pool-1.5.6.jar" sourcepath="ext/commons-pool-1.5.6-sources.jar">\r
+               <attributes>\r
+                       <attribute name="javadoc_location" value="jar:platform:/resource/iciql/ext/commons-pool-1.5.6-javadoc.jar!/"/>\r
+               </attributes>\r
+       </classpathentry>\r
        <classpathentry kind="output" path="bin"/>\r
 </classpath>\r
index ecb1ae2a19bafac9c1304d378de6f3140adfbac8..2808169a7260d5c6c8340a9e52ccaef24812633c 100644 (file)
@@ -10,3 +10,4 @@
 /performance.txt
 /performance_db.txt
 /performance_sql.txt
+/testdbs
diff --git a/NOTICE b/NOTICE
index 61f70f69efc91ca8dcc91cb66e736c9052b268ed..f39f8f6ea70d78343f976011792f4aa9b1635cf4 100644 (file)
--- a/NOTICE
+++ b/NOTICE
@@ -46,9 +46,9 @@ HSQL Database
    http://hsqldb.org   \r
 \r
 ---------------------------------------------------------------------------\r
-Derby Database\r
+Apache Derby Database\r
 ---------------------------------------------------------------------------\r
-   Derby, released under the\r
+   Apache Derby, released under the\r
    Apache Software License, Version 2.0.\r
    \r
    http://db.apache.org/derby   \r
@@ -75,4 +75,21 @@ SLF4J
    SLF4J, released under the\r
    MIT/X11 License.\r
 \r
-   http://www.slf4j.org
\ No newline at end of file
+   http://www.slf4j.org\r
+   \r
+---------------------------------------------------------------------------\r
+Apache Commons Pool\r
+---------------------------------------------------------------------------\r
+   Apache Commons Pool, released under the\r
+   Apache Software License, Version 2.0.\r
+   \r
+   http://commons.apache.org/pool   \r
+\r
+---------------------------------------------------------------------------\r
+Apache Commons DBCP\r
+---------------------------------------------------------------------------\r
+   Apache Commons DBCP, released under the\r
+   Apache Software License, Version 2.0.\r
+   \r
+   http://commons.apache.org/dbcp   \r
+   
\ No newline at end of file
index 28aa424dffa7b46cfd9931cc21c011c6a298515f..e5894e23f1dc8d6723ab4ee972992dfe7794bb75 100644 (file)
@@ -21,6 +21,7 @@ Supported Databases (Unit-Tested)
 - [HSQLDB](http://hsqldb.org) 2.2.4\r
 - [Derby](http://db.apache.org/derby) 10.7.1.1 & 10.8.1.2\r
 - [MySQL](http://mysql.com) 5.0.51b\r
+- [PostgreSQL](http://postgresql.org) 9.0\r
 \r
 Support for others is possible and may only require creating a simple "dialect" class.\r
 \r
diff --git a/api/v6.xml b/api/v6.xml
new file mode 100644 (file)
index 0000000..d3e8257
--- /dev/null
@@ -0,0 +1,5874 @@
+<api>\r
+<package name="com.iciql"
+>\r
+<class name="Constants"\r
+ extends="java.lang.Object"\r
+ abstract="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<constructor name="Constants"
+ type="com.iciql.Constants"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</constructor>\r
+<field name="API_CURRENT"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;6&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</field>\r
+<field name="NAME"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;iciql&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</field>\r
+<field name="VERSION"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;0.7.0&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</field>\r
+<field name="VERSION_DATE"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;2011-08-17&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</field>\r
+</class>\r
+<class name="Db"\r
+ extends="java.lang.Object"\r
+ abstract="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<method name="buildObjects"
+ return="java.util.List&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="modelClass" type="java.lang.Class&lt;? extends T&gt;">\r
+</parameter>\r
+<parameter name="rs" type="java.sql.ResultSet">\r
+</parameter>\r
+</method>\r
+<method name="close"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="delete"
+ return="int"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="t" type="T">\r
+</parameter>\r
+</method>\r
+<method name="deleteAll"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="list" type="java.util.List&lt;T&gt;">\r
+</parameter>\r
+</method>\r
+<method name="dropTable"
+ return="int"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="modelClass" type="java.lang.Class&lt;? extends T&gt;">\r
+</parameter>\r
+</method>\r
+<method name="executeQuery"
+ return="java.util.List&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="modelClass" type="java.lang.Class&lt;? extends T&gt;">\r
+</parameter>\r
+<parameter name="sql" type="java.lang.String">\r
+</parameter>\r
+<parameter name="args" type="java.lang.Object...">\r
+</parameter>\r
+</method>\r
+<method name="executeQuery"
+ return="java.sql.ResultSet"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="sql" type="java.lang.String">\r
+</parameter>\r
+<parameter name="args" type="java.lang.Object...">\r
+</parameter>\r
+</method>\r
+<method name="executeUpdate"
+ return="int"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="sql" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+<method name="from"
+ return="com.iciql.Query&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="alias" type="T">\r
+</parameter>\r
+</method>\r
+<method name="getConnection"
+ return="java.sql.Connection"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="getDialect"
+ return="com.iciql.SQLDialect"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="insert"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="t" type="T">\r
+</parameter>\r
+</method>\r
+<method name="insertAll"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="list" type="java.util.List&lt;T&gt;">\r
+</parameter>\r
+</method>\r
+<method name="insertAllAndGetKeys"
+ return="java.util.List&lt;java.lang.Long&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="list" type="java.util.List&lt;T&gt;">\r
+</parameter>\r
+</method>\r
+<method name="insertAndGetKey"
+ return="long"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="t" type="T">\r
+</parameter>\r
+</method>\r
+<method name="merge"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="t" type="T">\r
+</parameter>\r
+</method>\r
+<method name="open"
+ return="com.iciql.Db"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="url" type="java.lang.String">\r
+</parameter>\r
+<parameter name="user" type="java.lang.String">\r
+</parameter>\r
+<parameter name="password" type="char[]">\r
+</parameter>\r
+</method>\r
+<method name="open"
+ return="com.iciql.Db"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="url" type="java.lang.String">\r
+</parameter>\r
+<parameter name="user" type="java.lang.String">\r
+</parameter>\r
+<parameter name="password" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+<method name="open"
+ return="com.iciql.Db"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="conn" type="java.sql.Connection">\r
+</parameter>\r
+</method>\r
+<method name="open"
+ return="com.iciql.Db"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="ds" type="javax.sql.DataSource">\r
+</parameter>\r
+</method>\r
+<method name="registerDialect"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="token" type="java.lang.String">\r
+</parameter>\r
+<parameter name="dialectClass" type="java.lang.Class&lt;? extends com.iciql.SQLDialect&gt;">\r
+</parameter>\r
+</method>\r
+<method name="setDbUpgrader"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="true"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="upgrader" type="com.iciql.DbUpgrader">\r
+</parameter>\r
+</method>\r
+<method name="test"
+ return="com.iciql.TestCondition&lt;A&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="x" type="A">\r
+</parameter>\r
+</method>\r
+<method name="update"
+ return="int"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="t" type="T">\r
+</parameter>\r
+</method>\r
+<method name="updateAll"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="list" type="java.util.List&lt;T&gt;">\r
+</parameter>\r
+</method>\r
+</class>\r
+<class name="DbInspector"\r
+ extends="java.lang.Object"\r
+ abstract="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<constructor name="DbInspector"
+ type="com.iciql.DbInspector"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="db" type="com.iciql.Db">\r
+</parameter>\r
+</constructor>\r
+<method name="generateModel"
+ return="java.util.List&lt;java.lang.String&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="schema" type="java.lang.String">\r
+</parameter>\r
+<parameter name="table" type="java.lang.String">\r
+</parameter>\r
+<parameter name="packageName" type="java.lang.String">\r
+</parameter>\r
+<parameter name="annotateSchema" type="boolean">\r
+</parameter>\r
+<parameter name="trimStrings" type="boolean">\r
+</parameter>\r
+</method>\r
+<method name="setPreferredDateTimeClass"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="dateTimeClass" type="java.lang.Class&lt;? extends java.util.Date&gt;">\r
+</parameter>\r
+</method>\r
+<method name="validateModel"
+ return="java.util.List&lt;com.iciql.ValidationRemark&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="model" type="T">\r
+</parameter>\r
+<parameter name="throwOnError" type="boolean">\r
+</parameter>\r
+</method>\r
+</class>\r
+<interface name="DbUpgrader"\r
+ abstract="true"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<method name="upgradeDatabase"
+ return="boolean"
+ abstract="true"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="db" type="com.iciql.Db">\r
+</parameter>\r
+<parameter name="fromVersion" type="int">\r
+</parameter>\r
+<parameter name="toVersion" type="int">\r
+</parameter>\r
+</method>\r
+<method name="upgradeTable"
+ return="boolean"
+ abstract="true"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="db" type="com.iciql.Db">\r
+</parameter>\r
+<parameter name="schema" type="java.lang.String">\r
+</parameter>\r
+<parameter name="table" type="java.lang.String">\r
+</parameter>\r
+<parameter name="fromVersion" type="int">\r
+</parameter>\r
+<parameter name="toVersion" type="int">\r
+</parameter>\r
+</method>\r
+</interface>\r
+<class name="DbUpgrader.DefaultDbUpgrader"\r
+ extends="java.lang.Object"\r
+ abstract="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<implements name="com.iciql.DbUpgrader">\r
+</implements>\r
+<constructor name="DbUpgrader.DefaultDbUpgrader"
+ type="com.iciql.DbUpgrader.DefaultDbUpgrader"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</constructor>\r
+<method name="upgradeDatabase"
+ return="boolean"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="db" type="com.iciql.Db">\r
+</parameter>\r
+<parameter name="fromVersion" type="int">\r
+</parameter>\r
+<parameter name="toVersion" type="int">\r
+</parameter>\r
+</method>\r
+<method name="upgradeTable"
+ return="boolean"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="db" type="com.iciql.Db">\r
+</parameter>\r
+<parameter name="schema" type="java.lang.String">\r
+</parameter>\r
+<parameter name="table" type="java.lang.String">\r
+</parameter>\r
+<parameter name="fromVersion" type="int">\r
+</parameter>\r
+<parameter name="toVersion" type="int">\r
+</parameter>\r
+</method>\r
+</class>\r
+<class name="DbVersion"\r
+ extends="java.lang.Object"\r
+ abstract="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<constructor name="DbVersion"
+ type="com.iciql.DbVersion"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</constructor>\r
+<constructor name="DbVersion"
+ type="com.iciql.DbVersion"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="version" type="int">\r
+</parameter>\r
+</constructor>\r
+</class>\r
+<class name="Define"\r
+ extends="java.lang.Object"\r
+ abstract="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<constructor name="Define"
+ type="com.iciql.Define"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</constructor>\r
+<method name="columnName"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="column" type="java.lang.Object">\r
+</parameter>\r
+<parameter name="columnName" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+<method name="hashIndex"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="column" type="java.lang.Object">\r
+</parameter>\r
+</method>\r
+<method name="index"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="columns" type="java.lang.Object...">\r
+</parameter>\r
+</method>\r
+<method name="length"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="column" type="java.lang.Object">\r
+</parameter>\r
+<parameter name="length" type="int">\r
+</parameter>\r
+</method>\r
+<method name="primaryKey"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="columns" type="java.lang.Object...">\r
+</parameter>\r
+</method>\r
+<method name="scale"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="column" type="java.lang.Object">\r
+</parameter>\r
+<parameter name="scale" type="int">\r
+</parameter>\r
+</method>\r
+<method name="tableName"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="tableName" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+<method name="uniqueHashIndex"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="column" type="java.lang.Object">\r
+</parameter>\r
+</method>\r
+<method name="uniqueIndex"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="columns" type="java.lang.Object...">\r
+</parameter>\r
+</method>\r
+</class>\r
+<interface name="Filter"\r
+ abstract="true"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<method name="where"
+ return="boolean"
+ abstract="true"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+</interface>\r
+<class name="Function"\r
+ extends="java.lang.Object"\r
+ abstract="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<implements name="com.iciql.Token">\r
+</implements>\r
+<constructor name="Function"
+ type="com.iciql.Function"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="protected"
+>\r
+<parameter name="name" type="java.lang.String">\r
+</parameter>\r
+<parameter name="x" type="java.lang.Object...">\r
+</parameter>\r
+</constructor>\r
+<method name="and"
+ return="java.lang.Boolean"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="x" type="java.lang.Boolean...">\r
+</parameter>\r
+</method>\r
+<method name="appendSQL"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="stat" type="com.iciql.SQLStatement">\r
+</parameter>\r
+<parameter name="query" type="com.iciql.Query&lt;T&gt;">\r
+</parameter>\r
+</method>\r
+<method name="count"
+ return="java.lang.Long"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="count"
+ return="java.lang.Long"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="x" type="java.lang.Object">\r
+</parameter>\r
+</method>\r
+<method name="isNotNull"
+ return="java.lang.Boolean"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="x" type="java.lang.Object">\r
+</parameter>\r
+</method>\r
+<method name="isNull"
+ return="java.lang.Boolean"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="x" type="java.lang.Object">\r
+</parameter>\r
+</method>\r
+<method name="length"
+ return="java.lang.Integer"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="x" type="java.lang.Object">\r
+</parameter>\r
+</method>\r
+<method name="like"
+ return="java.lang.Boolean"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="x" type="java.lang.String">\r
+</parameter>\r
+<parameter name="pattern" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+<method name="max"
+ return="X"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="x" type="X">\r
+</parameter>\r
+</method>\r
+<method name="min"
+ return="X"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="x" type="X">\r
+</parameter>\r
+</method>\r
+<method name="not"
+ return="java.lang.Boolean"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="x" type="java.lang.Boolean">\r
+</parameter>\r
+</method>\r
+<method name="or"
+ return="java.lang.Boolean"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="x" type="java.lang.Boolean...">\r
+</parameter>\r
+</method>\r
+<method name="sum"
+ return="T"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="x" type="T">\r
+</parameter>\r
+</method>\r
+<field name="x"
+ type="java.lang.Object[]"
+ transient="false"
+ volatile="false"
+ value="null"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="protected"
+>\r
+</field>\r
+</class>\r
+<interface name="Iciql"\r
+ abstract="true"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<method name="defineIQ"
+ return="void"
+ abstract="true"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="deprecated"
+ visibility="public"
+>\r
+</method>\r
+</interface>\r
+<interface name="Iciql.EnumId"\r
+ abstract="true"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<method name="enumId"
+ return="int"
+ abstract="true"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+</interface>\r
+<class name="Iciql.EnumType"\r
+ extends="java.lang.Enum"\r
+ abstract="false"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<method name="valueOf"
+ return="com.iciql.Iciql.EnumType"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="name" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+<method name="values"
+ return="com.iciql.Iciql.EnumType[]"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<field name="DEFAULT_TYPE"
+ type="com.iciql.Iciql.EnumType"
+ transient="false"
+ volatile="false"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</field>\r
+</class>\r
+<class name="Iciql.IQColumn"\r
+ extends="java.lang.Object"\r
+ abstract="true"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<implements name="java.lang.annotation.Annotation">\r
+</implements>\r
+</class>\r
+<class name="Iciql.IQEnum"\r
+ extends="java.lang.Object"\r
+ abstract="true"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<implements name="java.lang.annotation.Annotation">\r
+</implements>\r
+</class>\r
+<class name="Iciql.IQIndex"\r
+ extends="java.lang.Object"\r
+ abstract="true"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<implements name="java.lang.annotation.Annotation">\r
+</implements>\r
+</class>\r
+<class name="Iciql.IQIndexes"\r
+ extends="java.lang.Object"\r
+ abstract="true"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<implements name="java.lang.annotation.Annotation">\r
+</implements>\r
+</class>\r
+<class name="Iciql.IQSchema"\r
+ extends="java.lang.Object"\r
+ abstract="true"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<implements name="java.lang.annotation.Annotation">\r
+</implements>\r
+</class>\r
+<class name="Iciql.IQTable"\r
+ extends="java.lang.Object"\r
+ abstract="true"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<implements name="java.lang.annotation.Annotation">\r
+</implements>\r
+</class>\r
+<class name="Iciql.IQVersion"\r
+ extends="java.lang.Object"\r
+ abstract="true"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<implements name="java.lang.annotation.Annotation">\r
+</implements>\r
+</class>\r
+<class name="Iciql.IndexType"\r
+ extends="java.lang.Enum"\r
+ abstract="false"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<method name="valueOf"
+ return="com.iciql.Iciql.IndexType"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="name" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+<method name="values"
+ return="com.iciql.Iciql.IndexType[]"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+</class>\r
+<class name="IciqlException"\r
+ extends="java.lang.RuntimeException"\r
+ abstract="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<constructor name="IciqlException"
+ type="com.iciql.IciqlException"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="message" type="java.lang.String">\r
+</parameter>\r
+<parameter name="parameters" type="java.lang.Object...">\r
+</parameter>\r
+</constructor>\r
+<constructor name="IciqlException"
+ type="com.iciql.IciqlException"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="t" type="java.lang.Throwable">\r
+</parameter>\r
+</constructor>\r
+<constructor name="IciqlException"
+ type="com.iciql.IciqlException"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="t" type="java.lang.Throwable">\r
+</parameter>\r
+<parameter name="message" type="java.lang.String">\r
+</parameter>\r
+<parameter name="parameters" type="java.lang.Object...">\r
+</parameter>\r
+</constructor>\r
+<method name="checkUnmappedField"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="sql" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+<method name="fromSQL"
+ return="com.iciql.IciqlException"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="sql" type="java.lang.String">\r
+</parameter>\r
+<parameter name="t" type="java.lang.Throwable">\r
+</parameter>\r
+</method>\r
+<method name="getIciqlCode"
+ return="int"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="getSQL"
+ return="java.lang.String"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="setSQL"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="sql" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+<field name="CODE_DUPLICATE_KEY"
+ type="int"
+ transient="false"
+ volatile="false"
+ value="2"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</field>\r
+<field name="CODE_OBJECT_ALREADY_EXISTS"
+ type="int"
+ transient="false"
+ volatile="false"
+ value="4"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</field>\r
+<field name="CODE_OBJECT_NOT_FOUND"
+ type="int"
+ transient="false"
+ volatile="false"
+ value="3"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</field>\r
+<field name="CODE_UNMAPPED_FIELD"
+ type="int"
+ transient="false"
+ volatile="false"
+ value="1"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</field>\r
+</class>\r
+<class name="Query"\r
+ extends="java.lang.Object"\r
+ abstract="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<method name="appendSQL"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="stat" type="com.iciql.SQLStatement">\r
+</parameter>\r
+<parameter name="alias" type="java.lang.Object">\r
+</parameter>\r
+<parameter name="value" type="java.lang.Object">\r
+</parameter>\r
+</method>\r
+<method name="appendSQL"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="stat" type="com.iciql.SQLStatement">\r
+</parameter>\r
+<parameter name="alias" type="java.lang.Object">\r
+</parameter>\r
+<parameter name="valueLeft" type="java.lang.Object">\r
+</parameter>\r
+<parameter name="valueRight" type="java.lang.Object">\r
+</parameter>\r
+<parameter name="compareType" type="com.iciql.CompareType">\r
+</parameter>\r
+</method>\r
+<method name="delete"
+ return="int"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="getSQL"
+ return="java.lang.String"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="groupBy"
+ return="com.iciql.Query&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="field" type="boolean">\r
+</parameter>\r
+</method>\r
+<method name="groupBy"
+ return="com.iciql.Query&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="field" type="byte">\r
+</parameter>\r
+</method>\r
+<method name="groupBy"
+ return="com.iciql.Query&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="field" type="double">\r
+</parameter>\r
+</method>\r
+<method name="groupBy"
+ return="com.iciql.Query&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="field" type="float">\r
+</parameter>\r
+</method>\r
+<method name="groupBy"
+ return="com.iciql.Query&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="field" type="int">\r
+</parameter>\r
+</method>\r
+<method name="groupBy"
+ return="com.iciql.Query&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="expr" type="java.lang.Object">\r
+</parameter>\r
+</method>\r
+<method name="groupBy"
+ return="com.iciql.Query&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="groupBy" type="java.lang.Object...">\r
+</parameter>\r
+</method>\r
+<method name="groupBy"
+ return="com.iciql.Query&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="field" type="long">\r
+</parameter>\r
+</method>\r
+<method name="groupBy"
+ return="com.iciql.Query&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="field" type="short">\r
+</parameter>\r
+</method>\r
+<method name="increment"
+ return="com.iciql.UpdateColumnIncrement&lt;T, A&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="field" type="A">\r
+</parameter>\r
+</method>\r
+<method name="increment"
+ return="com.iciql.UpdateColumnIncrement&lt;T, java.lang.Byte&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="field" type="byte">\r
+</parameter>\r
+</method>\r
+<method name="increment"
+ return="com.iciql.UpdateColumnIncrement&lt;T, java.lang.Double&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="field" type="double">\r
+</parameter>\r
+</method>\r
+<method name="increment"
+ return="com.iciql.UpdateColumnIncrement&lt;T, java.lang.Float&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="field" type="float">\r
+</parameter>\r
+</method>\r
+<method name="increment"
+ return="com.iciql.UpdateColumnIncrement&lt;T, java.lang.Integer&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="field" type="int">\r
+</parameter>\r
+</method>\r
+<method name="increment"
+ return="com.iciql.UpdateColumnIncrement&lt;T, java.lang.Long&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="field" type="long">\r
+</parameter>\r
+</method>\r
+<method name="increment"
+ return="com.iciql.UpdateColumnIncrement&lt;T, java.lang.Short&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="field" type="short">\r
+</parameter>\r
+</method>\r
+<method name="innerJoin"
+ return="com.iciql.QueryJoin"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="alias" type="U">\r
+</parameter>\r
+</method>\r
+<method name="limit"
+ return="com.iciql.Query&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="limit" type="long">\r
+</parameter>\r
+</method>\r
+<method name="offset"
+ return="com.iciql.Query&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="offset" type="long">\r
+</parameter>\r
+</method>\r
+<method name="orderBy"
+ return="com.iciql.Query&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="field" type="boolean">\r
+</parameter>\r
+</method>\r
+<method name="orderBy"
+ return="com.iciql.Query&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="field" type="byte">\r
+</parameter>\r
+</method>\r
+<method name="orderBy"
+ return="com.iciql.Query&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="field" type="double">\r
+</parameter>\r
+</method>\r
+<method name="orderBy"
+ return="com.iciql.Query&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="field" type="float">\r
+</parameter>\r
+</method>\r
+<method name="orderBy"
+ return="com.iciql.Query&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="field" type="int">\r
+</parameter>\r
+</method>\r
+<method name="orderBy"
+ return="com.iciql.Query&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="expr" type="java.lang.Object">\r
+</parameter>\r
+</method>\r
+<method name="orderBy"
+ return="com.iciql.Query&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="expressions" type="java.lang.Object...">\r
+</parameter>\r
+</method>\r
+<method name="orderBy"
+ return="com.iciql.Query&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="field" type="long">\r
+</parameter>\r
+</method>\r
+<method name="orderBy"
+ return="com.iciql.Query&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="field" type="short">\r
+</parameter>\r
+</method>\r
+<method name="orderByDesc"
+ return="com.iciql.Query&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="expr" type="java.lang.Object">\r
+</parameter>\r
+</method>\r
+<method name="select"
+ return="java.util.List&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="select"
+ return="java.util.List&lt;X&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="x" type="Z">\r
+</parameter>\r
+</method>\r
+<method name="selectCount"
+ return="long"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="selectDistinct"
+ return="java.util.List&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="selectDistinct"
+ return="java.util.List&lt;X&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="x" type="Z">\r
+</parameter>\r
+</method>\r
+<method name="selectFirst"
+ return="T"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="selectFirst"
+ return="X"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="x" type="Z">\r
+</parameter>\r
+</method>\r
+<method name="set"
+ return="com.iciql.UpdateColumnSet&lt;T, A&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="field" type="A">\r
+</parameter>\r
+</method>\r
+<method name="set"
+ return="com.iciql.UpdateColumnSet&lt;T, java.lang.Boolean&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="field" type="boolean">\r
+</parameter>\r
+</method>\r
+<method name="set"
+ return="com.iciql.UpdateColumnSet&lt;T, java.lang.Byte&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="field" type="byte">\r
+</parameter>\r
+</method>\r
+<method name="set"
+ return="com.iciql.UpdateColumnSet&lt;T, java.lang.Double&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="field" type="double">\r
+</parameter>\r
+</method>\r
+<method name="set"
+ return="com.iciql.UpdateColumnSet&lt;T, java.lang.Float&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="field" type="float">\r
+</parameter>\r
+</method>\r
+<method name="set"
+ return="com.iciql.UpdateColumnSet&lt;T, java.lang.Integer&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="field" type="int">\r
+</parameter>\r
+</method>\r
+<method name="set"
+ return="com.iciql.UpdateColumnSet&lt;T, java.lang.Long&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="field" type="long">\r
+</parameter>\r
+</method>\r
+<method name="set"
+ return="com.iciql.UpdateColumnSet&lt;T, java.lang.Short&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="field" type="short">\r
+</parameter>\r
+</method>\r
+<method name="update"
+ return="int"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="where"
+ return="com.iciql.QueryCondition&lt;T, A&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="x" type="A">\r
+</parameter>\r
+</method>\r
+<method name="where"
+ return="com.iciql.QueryCondition&lt;T, java.lang.Boolean&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="x" type="boolean">\r
+</parameter>\r
+</method>\r
+<method name="where"
+ return="com.iciql.QueryCondition&lt;T, java.lang.Byte&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="x" type="byte">\r
+</parameter>\r
+</method>\r
+<method name="where"
+ return="com.iciql.QueryWhere&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="filter" type="com.iciql.Filter">\r
+</parameter>\r
+</method>\r
+<method name="where"
+ return="com.iciql.QueryCondition&lt;T, java.lang.Double&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="x" type="double">\r
+</parameter>\r
+</method>\r
+<method name="where"
+ return="com.iciql.QueryCondition&lt;T, java.lang.Float&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="x" type="float">\r
+</parameter>\r
+</method>\r
+<method name="where"
+ return="com.iciql.QueryCondition&lt;T, java.lang.Integer&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="x" type="int">\r
+</parameter>\r
+</method>\r
+<method name="where"
+ return="com.iciql.QueryWhere&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="fragment" type="java.lang.String">\r
+</parameter>\r
+<parameter name="args" type="java.lang.Object...">\r
+</parameter>\r
+</method>\r
+<method name="where"
+ return="com.iciql.QueryCondition&lt;T, java.lang.Long&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="x" type="long">\r
+</parameter>\r
+</method>\r
+<method name="where"
+ return="com.iciql.QueryCondition&lt;T, java.lang.Short&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="x" type="short">\r
+</parameter>\r
+</method>\r
+<method name="whereTrue"
+ return="com.iciql.QueryWhere&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="condition" type="java.lang.Boolean">\r
+</parameter>\r
+</method>\r
+</class>\r
+<class name="QueryBetween"\r
+ extends="java.lang.Object"\r
+ abstract="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<constructor name="QueryBetween"
+ type="com.iciql.QueryBetween"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="query" type="com.iciql.Query&lt;T&gt;">\r
+</parameter>\r
+<parameter name="x" type="A">\r
+</parameter>\r
+<parameter name="y" type="A">\r
+</parameter>\r
+</constructor>\r
+<method name="and"
+ return="com.iciql.QueryWhere&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="z" type="A">\r
+</parameter>\r
+</method>\r
+</class>\r
+<class name="QueryCondition"\r
+ extends="java.lang.Object"\r
+ abstract="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<method name="atLeast"
+ return="com.iciql.QueryWhere&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="y" type="A">\r
+</parameter>\r
+</method>\r
+<method name="atMost"
+ return="com.iciql.QueryWhere&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="y" type="A">\r
+</parameter>\r
+</method>\r
+<method name="between"
+ return="com.iciql.QueryBetween&lt;T, A&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="y" type="A">\r
+</parameter>\r
+</method>\r
+<method name="exceeds"
+ return="com.iciql.QueryWhere&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="y" type="A">\r
+</parameter>\r
+</method>\r
+<method name="is"
+ return="com.iciql.QueryWhere&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="y" type="A">\r
+</parameter>\r
+</method>\r
+<method name="isNot"
+ return="com.iciql.QueryWhere&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="y" type="A">\r
+</parameter>\r
+</method>\r
+<method name="isNotNull"
+ return="com.iciql.QueryWhere&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="isNull"
+ return="com.iciql.QueryWhere&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="lessThan"
+ return="com.iciql.QueryWhere&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="y" type="A">\r
+</parameter>\r
+</method>\r
+<method name="like"
+ return="com.iciql.QueryWhere&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="pattern" type="A">\r
+</parameter>\r
+</method>\r
+</class>\r
+<class name="QueryJoin"\r
+ extends="java.lang.Object"\r
+ abstract="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<method name="on"
+ return="com.iciql.QueryJoinCondition&lt;A&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="x" type="A">\r
+</parameter>\r
+</method>\r
+</class>\r
+<class name="QueryJoinCondition"\r
+ extends="java.lang.Object"\r
+ abstract="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<method name="is"
+ return="com.iciql.Query&lt;?&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="y" type="A">\r
+</parameter>\r
+</method>\r
+</class>\r
+<class name="QueryWhere"\r
+ extends="java.lang.Object"\r
+ abstract="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<method name="and"
+ return="com.iciql.QueryCondition&lt;T, A&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="x" type="A">\r
+</parameter>\r
+</method>\r
+<method name="and"
+ return="com.iciql.QueryCondition&lt;T, java.lang.Boolean&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="x" type="boolean">\r
+</parameter>\r
+</method>\r
+<method name="and"
+ return="com.iciql.QueryCondition&lt;T, java.lang.Byte&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="x" type="byte">\r
+</parameter>\r
+</method>\r
+<method name="and"
+ return="com.iciql.QueryCondition&lt;T, java.lang.Double&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="x" type="double">\r
+</parameter>\r
+</method>\r
+<method name="and"
+ return="com.iciql.QueryCondition&lt;T, java.lang.Float&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="x" type="float">\r
+</parameter>\r
+</method>\r
+<method name="and"
+ return="com.iciql.QueryCondition&lt;T, java.lang.Integer&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="x" type="int">\r
+</parameter>\r
+</method>\r
+<method name="and"
+ return="com.iciql.QueryCondition&lt;T, java.lang.Long&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="x" type="long">\r
+</parameter>\r
+</method>\r
+<method name="and"
+ return="com.iciql.QueryCondition&lt;T, java.lang.Short&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="x" type="short">\r
+</parameter>\r
+</method>\r
+<method name="delete"
+ return="int"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="getSQL"
+ return="java.lang.String"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="limit"
+ return="com.iciql.QueryWhere&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="limit" type="long">\r
+</parameter>\r
+</method>\r
+<method name="offset"
+ return="com.iciql.QueryWhere&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="offset" type="long">\r
+</parameter>\r
+</method>\r
+<method name="or"
+ return="com.iciql.QueryCondition&lt;T, A&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="x" type="A">\r
+</parameter>\r
+</method>\r
+<method name="or"
+ return="com.iciql.QueryCondition&lt;T, java.lang.Boolean&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="x" type="boolean">\r
+</parameter>\r
+</method>\r
+<method name="or"
+ return="com.iciql.QueryCondition&lt;T, java.lang.Byte&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="x" type="byte">\r
+</parameter>\r
+</method>\r
+<method name="or"
+ return="com.iciql.QueryCondition&lt;T, java.lang.Double&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="x" type="double">\r
+</parameter>\r
+</method>\r
+<method name="or"
+ return="com.iciql.QueryCondition&lt;T, java.lang.Float&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="x" type="float">\r
+</parameter>\r
+</method>\r
+<method name="or"
+ return="com.iciql.QueryCondition&lt;T, java.lang.Integer&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="x" type="int">\r
+</parameter>\r
+</method>\r
+<method name="or"
+ return="com.iciql.QueryCondition&lt;T, java.lang.Long&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="x" type="long">\r
+</parameter>\r
+</method>\r
+<method name="or"
+ return="com.iciql.QueryCondition&lt;T, java.lang.Short&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="x" type="short">\r
+</parameter>\r
+</method>\r
+<method name="orderBy"
+ return="com.iciql.QueryWhere&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="field" type="boolean">\r
+</parameter>\r
+</method>\r
+<method name="orderBy"
+ return="com.iciql.QueryWhere&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="field" type="byte">\r
+</parameter>\r
+</method>\r
+<method name="orderBy"
+ return="com.iciql.QueryWhere&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="field" type="double">\r
+</parameter>\r
+</method>\r
+<method name="orderBy"
+ return="com.iciql.QueryWhere&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="field" type="float">\r
+</parameter>\r
+</method>\r
+<method name="orderBy"
+ return="com.iciql.QueryWhere&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="field" type="int">\r
+</parameter>\r
+</method>\r
+<method name="orderBy"
+ return="com.iciql.QueryWhere&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="field" type="java.lang.Object">\r
+</parameter>\r
+</method>\r
+<method name="orderBy"
+ return="com.iciql.QueryWhere&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="expressions" type="java.lang.Object...">\r
+</parameter>\r
+</method>\r
+<method name="orderBy"
+ return="com.iciql.QueryWhere&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="field" type="long">\r
+</parameter>\r
+</method>\r
+<method name="orderBy"
+ return="com.iciql.QueryWhere&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="field" type="short">\r
+</parameter>\r
+</method>\r
+<method name="orderByDesc"
+ return="com.iciql.QueryWhere&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="expr" type="java.lang.Object">\r
+</parameter>\r
+</method>\r
+<method name="orderByDescNullsFirst"
+ return="com.iciql.QueryWhere&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="expr" type="java.lang.Object">\r
+</parameter>\r
+</method>\r
+<method name="orderByDescNullsLast"
+ return="com.iciql.QueryWhere&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="expr" type="java.lang.Object">\r
+</parameter>\r
+</method>\r
+<method name="orderByNullsFirst"
+ return="com.iciql.QueryWhere&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="expr" type="java.lang.Object">\r
+</parameter>\r
+</method>\r
+<method name="orderByNullsLast"
+ return="com.iciql.QueryWhere&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="expr" type="java.lang.Object">\r
+</parameter>\r
+</method>\r
+<method name="select"
+ return="java.util.List&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="select"
+ return="java.util.List&lt;X&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="x" type="Z">\r
+</parameter>\r
+</method>\r
+<method name="selectCount"
+ return="long"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="selectDistinct"
+ return="java.util.List&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="selectDistinct"
+ return="java.util.List&lt;X&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="x" type="Z">\r
+</parameter>\r
+</method>\r
+<method name="selectFirst"
+ return="T"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="selectFirst"
+ return="X"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="x" type="Z">\r
+</parameter>\r
+</method>\r
+<method name="update"
+ return="int"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+</class>\r
+<class name="RuntimeToken"\r
+ extends="java.lang.Object"\r
+ abstract="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<implements name="com.iciql.Token">\r
+</implements>\r
+<constructor name="RuntimeToken"
+ type="com.iciql.RuntimeToken"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="fragment" type="java.lang.String">\r
+</parameter>\r
+<parameter name="args" type="java.lang.Object...">\r
+</parameter>\r
+</constructor>\r
+<method name="appendSQL"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="stat" type="com.iciql.SQLStatement">\r
+</parameter>\r
+<parameter name="query" type="com.iciql.Query&lt;T&gt;">\r
+</parameter>\r
+</method>\r
+</class>\r
+<interface name="SQLDialect"\r
+ abstract="true"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<method name="appendLimitOffset"
+ return="void"
+ abstract="true"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="stat" type="com.iciql.SQLStatement">\r
+</parameter>\r
+<parameter name="limit" type="long">\r
+</parameter>\r
+<parameter name="offset" type="long">\r
+</parameter>\r
+</method>\r
+<method name="configureDialect"
+ return="void"
+ abstract="true"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="databaseName" type="java.lang.String">\r
+</parameter>\r
+<parameter name="data" type="java.sql.DatabaseMetaData">\r
+</parameter>\r
+</method>\r
+<method name="convertSqlType"
+ return="java.lang.String"
+ abstract="true"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="sqlType" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+<method name="getDateTimeClass"
+ return="java.lang.Class&lt;? extends java.util.Date&gt;"
+ abstract="true"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="prepareColumnName"
+ return="java.lang.String"
+ abstract="true"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="name" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+<method name="prepareCreateIndex"
+ return="void"
+ abstract="true"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="stat" type="com.iciql.SQLStatement">\r
+</parameter>\r
+<parameter name="schemaName" type="java.lang.String">\r
+</parameter>\r
+<parameter name="tableName" type="java.lang.String">\r
+</parameter>\r
+<parameter name="index" type="com.iciql.TableDefinition.IndexDefinition">\r
+</parameter>\r
+</method>\r
+<method name="prepareCreateTable"
+ return="void"
+ abstract="true"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="stat" type="com.iciql.SQLStatement">\r
+</parameter>\r
+<parameter name="def" type="com.iciql.TableDefinition&lt;T&gt;">\r
+</parameter>\r
+</method>\r
+<method name="prepareDropTable"
+ return="void"
+ abstract="true"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="stat" type="com.iciql.SQLStatement">\r
+</parameter>\r
+<parameter name="def" type="com.iciql.TableDefinition&lt;T&gt;">\r
+</parameter>\r
+</method>\r
+<method name="prepareMerge"
+ return="void"
+ abstract="true"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="stat" type="com.iciql.SQLStatement">\r
+</parameter>\r
+<parameter name="schemaName" type="java.lang.String">\r
+</parameter>\r
+<parameter name="tableName" type="java.lang.String">\r
+</parameter>\r
+<parameter name="def" type="com.iciql.TableDefinition&lt;T&gt;">\r
+</parameter>\r
+<parameter name="obj" type="java.lang.Object">\r
+</parameter>\r
+</method>\r
+<method name="prepareTableName"
+ return="java.lang.String"
+ abstract="true"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="schemaName" type="java.lang.String">\r
+</parameter>\r
+<parameter name="tableName" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+<method name="supportsIfNotExists"
+ return="boolean"
+ abstract="true"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="supportsLimitOffset"
+ return="boolean"
+ abstract="true"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="supportsMemoryTables"
+ return="boolean"
+ abstract="true"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+</interface>\r
+<class name="SQLDialectDefault"\r
+ extends="java.lang.Object"\r
+ abstract="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<implements name="com.iciql.SQLDialect">\r
+</implements>\r
+<constructor name="SQLDialectDefault"
+ type="com.iciql.SQLDialectDefault"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</constructor>\r
+<method name="appendLimitOffset"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="stat" type="com.iciql.SQLStatement">\r
+</parameter>\r
+<parameter name="limit" type="long">\r
+</parameter>\r
+<parameter name="offset" type="long">\r
+</parameter>\r
+</method>\r
+<method name="configureDialect"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="databaseName" type="java.lang.String">\r
+</parameter>\r
+<parameter name="data" type="java.sql.DatabaseMetaData">\r
+</parameter>\r
+</method>\r
+<method name="convertSqlType"
+ return="java.lang.String"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="sqlType" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+<method name="getDateTimeClass"
+ return="java.lang.Class&lt;? extends java.util.Date&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="isIntegerType"
+ return="boolean"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="protected"
+>\r
+<parameter name="dataType" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+<method name="prepareColumnDefinition"
+ return="boolean"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="protected"
+>\r
+<parameter name="buff" type="com.iciql.util.StatementBuilder">\r
+</parameter>\r
+<parameter name="dataType" type="java.lang.String">\r
+</parameter>\r
+<parameter name="isAutoIncrement" type="boolean">\r
+</parameter>\r
+<parameter name="isPrimaryKey" type="boolean">\r
+</parameter>\r
+</method>\r
+<method name="prepareColumnName"
+ return="java.lang.String"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="name" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+<method name="prepareCreateIndex"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="stat" type="com.iciql.SQLStatement">\r
+</parameter>\r
+<parameter name="schemaName" type="java.lang.String">\r
+</parameter>\r
+<parameter name="tableName" type="java.lang.String">\r
+</parameter>\r
+<parameter name="index" type="com.iciql.TableDefinition.IndexDefinition">\r
+</parameter>\r
+</method>\r
+<method name="prepareCreateTable"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="stat" type="com.iciql.SQLStatement">\r
+</parameter>\r
+<parameter name="def" type="com.iciql.TableDefinition&lt;T&gt;">\r
+</parameter>\r
+</method>\r
+<method name="prepareDropTable"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="stat" type="com.iciql.SQLStatement">\r
+</parameter>\r
+<parameter name="def" type="com.iciql.TableDefinition&lt;T&gt;">\r
+</parameter>\r
+</method>\r
+<method name="prepareMerge"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="stat" type="com.iciql.SQLStatement">\r
+</parameter>\r
+<parameter name="schemaName" type="java.lang.String">\r
+</parameter>\r
+<parameter name="tableName" type="java.lang.String">\r
+</parameter>\r
+<parameter name="def" type="com.iciql.TableDefinition&lt;T&gt;">\r
+</parameter>\r
+<parameter name="obj" type="java.lang.Object">\r
+</parameter>\r
+</method>\r
+<method name="prepareTableName"
+ return="java.lang.String"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="schemaName" type="java.lang.String">\r
+</parameter>\r
+<parameter name="tableName" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+<method name="supportsIfNotExists"
+ return="boolean"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="supportsLimitOffset"
+ return="boolean"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="supportsMemoryTables"
+ return="boolean"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+</class>\r
+<class name="SQLDialectDerby"\r
+ extends="com.iciql.SQLDialectDefault"\r
+ abstract="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<constructor name="SQLDialectDerby"
+ type="com.iciql.SQLDialectDerby"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</constructor>\r
+</class>\r
+<class name="SQLDialectH2"\r
+ extends="com.iciql.SQLDialectDefault"\r
+ abstract="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<constructor name="SQLDialectH2"
+ type="com.iciql.SQLDialectH2"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</constructor>\r
+</class>\r
+<class name="SQLDialectHSQL"\r
+ extends="com.iciql.SQLDialectDefault"\r
+ abstract="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<constructor name="SQLDialectHSQL"
+ type="com.iciql.SQLDialectHSQL"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</constructor>\r
+</class>\r
+<class name="SQLDialectMySQL"\r
+ extends="com.iciql.SQLDialectDefault"\r
+ abstract="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<constructor name="SQLDialectMySQL"
+ type="com.iciql.SQLDialectMySQL"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</constructor>\r
+</class>\r
+<class name="SQLDialectPostgreSQL"\r
+ extends="com.iciql.SQLDialectDefault"\r
+ abstract="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<constructor name="SQLDialectPostgreSQL"
+ type="com.iciql.SQLDialectPostgreSQL"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</constructor>\r
+</class>\r
+<class name="SQLStatement"\r
+ extends="java.lang.Object"\r
+ abstract="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<method name="addParameter"
+ return="com.iciql.SQLStatement"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="o" type="java.lang.Object">\r
+</parameter>\r
+</method>\r
+<method name="appendColumn"
+ return="com.iciql.SQLStatement"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="column" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+<method name="appendSQL"
+ return="com.iciql.SQLStatement"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="s" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+<method name="appendTable"
+ return="com.iciql.SQLStatement"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="schema" type="java.lang.String">\r
+</parameter>\r
+<parameter name="table" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+<method name="setSQL"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="sql" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+</class>\r
+<class name="TableDefinition"\r
+ extends="java.lang.Object"\r
+ abstract="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<field name="fields"
+ type="java.util.ArrayList"
+ transient="false"
+ volatile="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</field>\r
+</class>\r
+<class name="TableDefinition.IndexDefinition"\r
+ extends="java.lang.Object"\r
+ abstract="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<constructor name="TableDefinition.IndexDefinition"
+ type="com.iciql.TableDefinition.IndexDefinition"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</constructor>\r
+<field name="columnNames"
+ type="java.util.List"
+ transient="false"
+ volatile="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</field>\r
+<field name="indexName"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</field>\r
+<field name="type"
+ type="com.iciql.Iciql.IndexType"
+ transient="false"
+ volatile="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</field>\r
+</class>\r
+<class name="TableInspector"\r
+ extends="java.lang.Object"\r
+ abstract="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</class>\r
+<class name="TestCondition"\r
+ extends="java.lang.Object"\r
+ abstract="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<constructor name="TestCondition"
+ type="com.iciql.TestCondition"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="x" type="A">\r
+</parameter>\r
+</constructor>\r
+<method name="atLeast"
+ return="java.lang.Boolean"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="y" type="A">\r
+</parameter>\r
+</method>\r
+<method name="atMost"
+ return="java.lang.Boolean"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="y" type="A">\r
+</parameter>\r
+</method>\r
+<method name="exceeds"
+ return="java.lang.Boolean"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="y" type="A">\r
+</parameter>\r
+</method>\r
+<method name="is"
+ return="java.lang.Boolean"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="y" type="A">\r
+</parameter>\r
+</method>\r
+<method name="lessThan"
+ return="java.lang.Boolean"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="y" type="A">\r
+</parameter>\r
+</method>\r
+<method name="like"
+ return="java.lang.Boolean"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="pattern" type="A">\r
+</parameter>\r
+</method>\r
+</class>\r
+<interface name="Token"\r
+ abstract="true"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<method name="appendSQL"
+ return="void"
+ abstract="true"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="stat" type="com.iciql.SQLStatement">\r
+</parameter>\r
+<parameter name="query" type="com.iciql.Query&lt;T&gt;">\r
+</parameter>\r
+</method>\r
+</interface>\r
+<interface name="UpdateColumn"\r
+ abstract="true"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<method name="appendSQL"
+ return="void"
+ abstract="true"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="stat" type="com.iciql.SQLStatement">\r
+</parameter>\r
+</method>\r
+</interface>\r
+<class name="UpdateColumnIncrement"\r
+ extends="java.lang.Object"\r
+ abstract="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<implements name="com.iciql.UpdateColumn">\r
+</implements>\r
+<method name="appendSQL"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="stat" type="com.iciql.SQLStatement">\r
+</parameter>\r
+</method>\r
+<method name="by"
+ return="com.iciql.Query&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="y" type="A">\r
+</parameter>\r
+</method>\r
+</class>\r
+<class name="UpdateColumnSet"\r
+ extends="java.lang.Object"\r
+ abstract="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<implements name="com.iciql.UpdateColumn">\r
+</implements>\r
+<method name="appendSQL"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="stat" type="com.iciql.SQLStatement">\r
+</parameter>\r
+</method>\r
+<method name="to"
+ return="com.iciql.Query&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="y" type="A">\r
+</parameter>\r
+</method>\r
+</class>\r
+<class name="ValidationRemark"\r
+ extends="java.lang.Object"\r
+ abstract="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<method name="consider"
+ return="com.iciql.ValidationRemark"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="table" type="java.lang.String">\r
+</parameter>\r
+<parameter name="col" type="com.iciql.TableInspector.ColumnInspector">\r
+</parameter>\r
+<parameter name="message" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+<method name="consider"
+ return="com.iciql.ValidationRemark"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="table" type="java.lang.String">\r
+</parameter>\r
+<parameter name="type" type="java.lang.String">\r
+</parameter>\r
+<parameter name="message" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+<method name="error"
+ return="com.iciql.ValidationRemark"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="table" type="java.lang.String">\r
+</parameter>\r
+<parameter name="field" type="com.iciql.TableDefinition.FieldDefinition">\r
+</parameter>\r
+<parameter name="message" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+<method name="error"
+ return="com.iciql.ValidationRemark"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="table" type="java.lang.String">\r
+</parameter>\r
+<parameter name="col" type="com.iciql.TableInspector.ColumnInspector">\r
+</parameter>\r
+<parameter name="message" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+<method name="error"
+ return="com.iciql.ValidationRemark"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="table" type="java.lang.String">\r
+</parameter>\r
+<parameter name="type" type="java.lang.String">\r
+</parameter>\r
+<parameter name="message" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+<method name="isError"
+ return="boolean"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="throwError"
+ return="com.iciql.ValidationRemark"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="throwOnError" type="boolean">\r
+</parameter>\r
+</method>\r
+<method name="toCSVString"
+ return="java.lang.String"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="warn"
+ return="com.iciql.ValidationRemark"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="table" type="java.lang.String">\r
+</parameter>\r
+<parameter name="col" type="com.iciql.TableInspector.ColumnInspector">\r
+</parameter>\r
+<parameter name="message" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+<method name="warn"
+ return="com.iciql.ValidationRemark"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="table" type="java.lang.String">\r
+</parameter>\r
+<parameter name="type" type="java.lang.String">\r
+</parameter>\r
+<parameter name="message" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+<field name="fieldName"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ static="false"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</field>\r
+<field name="fieldType"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ static="false"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</field>\r
+<field name="level"
+ type="com.iciql.ValidationRemark.Level"
+ transient="false"
+ volatile="false"
+ static="false"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</field>\r
+<field name="message"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ static="false"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</field>\r
+<field name="table"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ static="false"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</field>\r
+</class>\r
+<class name="ValidationRemark.Level"\r
+ extends="java.lang.Enum"\r
+ abstract="false"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<method name="valueOf"
+ return="com.iciql.ValidationRemark.Level"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="name" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+<method name="values"
+ return="com.iciql.ValidationRemark.Level[]"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+</class>\r
+</package>\r
+<package name="com.iciql.bytecode"
+>\r
+<class name="And"\r
+ extends="java.lang.Object"\r
+ abstract="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<implements name="com.iciql.Token">\r
+</implements>\r
+<method name="appendSQL"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="stat" type="com.iciql.SQLStatement">\r
+</parameter>\r
+<parameter name="query" type="com.iciql.Query&lt;T&gt;">\r
+</parameter>\r
+</method>\r
+</class>\r
+<class name="ArrayGet"\r
+ extends="java.lang.Object"\r
+ abstract="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<implements name="com.iciql.Token">\r
+</implements>\r
+<method name="appendSQL"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="stat" type="com.iciql.SQLStatement">\r
+</parameter>\r
+<parameter name="query" type="com.iciql.Query&lt;T&gt;">\r
+</parameter>\r
+</method>\r
+</class>\r
+<class name="CaseWhen"\r
+ extends="java.lang.Object"\r
+ abstract="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<implements name="com.iciql.Token">\r
+</implements>\r
+<method name="appendSQL"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="stat" type="com.iciql.SQLStatement">\r
+</parameter>\r
+<parameter name="query" type="com.iciql.Query&lt;T&gt;">\r
+</parameter>\r
+</method>\r
+</class>\r
+<class name="ClassReader"\r
+ extends="java.lang.Object"\r
+ abstract="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<constructor name="ClassReader"
+ type="com.iciql.bytecode.ClassReader"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</constructor>\r
+<method name="decompile"
+ return="com.iciql.Token"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="instance" type="java.lang.Object">\r
+</parameter>\r
+<parameter name="fields" type="java.util.Map&lt;java.lang.String, java.lang.Object&gt;">\r
+</parameter>\r
+<parameter name="method" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+</class>\r
+<interface name="Constant"\r
+ abstract="true"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<implements name="com.iciql.Token">\r
+</implements>\r
+<method name="getType"
+ return="com.iciql.bytecode.Constant.Type"
+ abstract="true"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="intValue"
+ return="int"
+ abstract="true"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+</interface>\r
+<class name="Constant.Type"\r
+ extends="java.lang.Enum"\r
+ abstract="false"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<method name="valueOf"
+ return="com.iciql.bytecode.Constant.Type"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="name" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+<method name="values"
+ return="com.iciql.bytecode.Constant.Type[]"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+</class>\r
+<class name="ConstantNumber"\r
+ extends="java.lang.Object"\r
+ abstract="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<implements name="com.iciql.bytecode.Constant">\r
+</implements>\r
+<method name="appendSQL"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="stat" type="com.iciql.SQLStatement">\r
+</parameter>\r
+<parameter name="query" type="com.iciql.Query&lt;T&gt;">\r
+</parameter>\r
+</method>\r
+<method name="getType"
+ return="com.iciql.bytecode.Constant.Type"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="intValue"
+ return="int"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+</class>\r
+<class name="ConstantString"\r
+ extends="java.lang.Object"\r
+ abstract="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<implements name="com.iciql.bytecode.Constant">\r
+</implements>\r
+<method name="appendSQL"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="stat" type="com.iciql.SQLStatement">\r
+</parameter>\r
+<parameter name="query" type="com.iciql.Query&lt;T&gt;">\r
+</parameter>\r
+</method>\r
+<method name="getType"
+ return="com.iciql.bytecode.Constant.Type"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="intValue"
+ return="int"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+</class>\r
+<class name="Not"\r
+ extends="java.lang.Object"\r
+ abstract="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<implements name="com.iciql.Token">\r
+</implements>\r
+<method name="appendSQL"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="stat" type="com.iciql.SQLStatement">\r
+</parameter>\r
+<parameter name="query" type="com.iciql.Query&lt;T&gt;">\r
+</parameter>\r
+</method>\r
+</class>\r
+<class name="Null"\r
+ extends="java.lang.Object"\r
+ abstract="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<implements name="com.iciql.Token">\r
+</implements>\r
+<method name="appendSQL"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="stat" type="com.iciql.SQLStatement">\r
+</parameter>\r
+<parameter name="query" type="com.iciql.Query&lt;T&gt;">\r
+</parameter>\r
+</method>\r
+</class>\r
+<class name="Or"\r
+ extends="java.lang.Object"\r
+ abstract="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<implements name="com.iciql.Token">\r
+</implements>\r
+<method name="appendSQL"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="stat" type="com.iciql.SQLStatement">\r
+</parameter>\r
+<parameter name="query" type="com.iciql.Query&lt;T&gt;">\r
+</parameter>\r
+</method>\r
+</class>\r
+<class name="Variable"\r
+ extends="java.lang.Object"\r
+ abstract="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<implements name="com.iciql.Token">\r
+</implements>\r
+<method name="appendSQL"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="stat" type="com.iciql.SQLStatement">\r
+</parameter>\r
+<parameter name="query" type="com.iciql.Query&lt;T&gt;">\r
+</parameter>\r
+</method>\r
+</class>\r
+</package>\r
+<package name="com.iciql.util"
+>\r
+<class name="GenerateModels"\r
+ extends="java.lang.Object"\r
+ abstract="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<constructor name="GenerateModels"
+ type="com.iciql.util.GenerateModels"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</constructor>\r
+<method name="execute"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="url" type="java.lang.String">\r
+</parameter>\r
+<parameter name="user" type="java.lang.String">\r
+</parameter>\r
+<parameter name="password" type="java.lang.String">\r
+</parameter>\r
+<parameter name="schema" type="java.lang.String">\r
+</parameter>\r
+<parameter name="table" type="java.lang.String">\r
+</parameter>\r
+<parameter name="packageName" type="java.lang.String">\r
+</parameter>\r
+<parameter name="folder" type="java.lang.String">\r
+</parameter>\r
+<parameter name="annotateSchema" type="boolean">\r
+</parameter>\r
+<parameter name="trimStrings" type="boolean">\r
+</parameter>\r
+<exception name="SQLException" type="java.sql.SQLException">\r
+</exception>\r
+</method>\r
+<method name="main"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="args" type="java.lang.String...">\r
+</parameter>\r
+</method>\r
+<method name="runTool"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="args" type="java.lang.String...">\r
+</parameter>\r
+<exception name="SQLException" type="java.sql.SQLException">\r
+</exception>\r
+</method>\r
+<method name="showUsage"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="protected"
+>\r
+</method>\r
+<method name="throwUnsupportedOption"
+ return="java.sql.SQLException"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="protected"
+>\r
+<parameter name="option" type="java.lang.String">\r
+</parameter>\r
+<exception name="SQLException" type="java.sql.SQLException">\r
+</exception>\r
+</method>\r
+<field name="out"
+ type="java.io.PrintStream"
+ transient="false"
+ volatile="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="protected"
+>\r
+</field>\r
+</class>\r
+<class name="IciqlLogger"\r
+ extends="java.lang.Object"\r
+ abstract="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<constructor name="IciqlLogger"
+ type="com.iciql.util.IciqlLogger"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</constructor>\r
+<method name="activateConsoleLogger"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="create"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="statement" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+<method name="deactivateConsoleLogger"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="delete"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="statement" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+<method name="drop"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="statement" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+<method name="getCreateCount"
+ return="long"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="getDeleteCount"
+ return="long"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="getDropCount"
+ return="long"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="getInsertCount"
+ return="long"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="getMergeCount"
+ return="long"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="getSelectCount"
+ return="long"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="getTotalCount"
+ return="long"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="getUpdateCount"
+ return="long"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="getWarnCount"
+ return="long"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="insert"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="statement" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+<method name="logStats"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="merge"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="statement" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+<method name="registerListener"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="listener" type="com.iciql.util.IciqlLogger.IciqlListener">\r
+</parameter>\r
+</method>\r
+<method name="select"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="statement" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+<method name="unregisterListener"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="listener" type="com.iciql.util.IciqlLogger.IciqlListener">\r
+</parameter>\r
+</method>\r
+<method name="update"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="statement" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+<method name="warn"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="message" type="java.lang.String">\r
+</parameter>\r
+<parameter name="args" type="java.lang.Object...">\r
+</parameter>\r
+</method>\r
+</class>\r
+<interface name="IciqlLogger.IciqlListener"\r
+ abstract="true"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<method name="logIciql"
+ return="void"
+ abstract="true"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="type" type="com.iciql.util.IciqlLogger.StatementType">\r
+</parameter>\r
+<parameter name="statement" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+</interface>\r
+<class name="IciqlLogger.StatementType"\r
+ extends="java.lang.Enum"\r
+ abstract="false"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<method name="valueOf"
+ return="com.iciql.util.IciqlLogger.StatementType"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="name" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+<method name="values"
+ return="com.iciql.util.IciqlLogger.StatementType[]"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+</class>\r
+<class name="JdbcUtils"\r
+ extends="java.lang.Object"\r
+ abstract="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<method name="closeSilently"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="conn" type="java.sql.Connection">\r
+</parameter>\r
+</method>\r
+<method name="closeSilently"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="rs" type="java.sql.ResultSet">\r
+</parameter>\r
+</method>\r
+<method name="closeSilently"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="rs" type="java.sql.ResultSet">\r
+</parameter>\r
+<parameter name="closeStatement" type="boolean">\r
+</parameter>\r
+</method>\r
+<method name="closeSilently"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="stat" type="java.sql.Statement">\r
+</parameter>\r
+</method>\r
+<method name="closeSilently"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="conn" type="javax.sql.XAConnection">\r
+</parameter>\r
+</method>\r
+<method name="escapeMetaDataPattern"
+ return="java.lang.String"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="pattern" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+<method name="getConnection"
+ return="java.sql.Connection"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="driver" type="java.lang.String">\r
+</parameter>\r
+<parameter name="url" type="java.lang.String">\r
+</parameter>\r
+<parameter name="user" type="java.lang.String">\r
+</parameter>\r
+<parameter name="password" type="java.lang.String">\r
+</parameter>\r
+<exception name="SQLException" type="java.sql.SQLException">\r
+</exception>\r
+</method>\r
+<method name="getConnection"
+ return="java.sql.Connection"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="driver" type="java.lang.String">\r
+</parameter>\r
+<parameter name="url" type="java.lang.String">\r
+</parameter>\r
+<parameter name="prop" type="java.util.Properties">\r
+</parameter>\r
+<exception name="SQLException" type="java.sql.SQLException">\r
+</exception>\r
+</method>\r
+<method name="getDriver"
+ return="java.lang.String"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="url" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+<method name="load"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="url" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+</class>\r
+<class name="Slf4jIciqlListener"\r
+ extends="java.lang.Object"\r
+ abstract="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<implements name="com.iciql.util.IciqlLogger.IciqlListener">\r
+</implements>\r
+<constructor name="Slf4jIciqlListener"
+ type="com.iciql.util.Slf4jIciqlListener"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</constructor>\r
+<constructor name="Slf4jIciqlListener"
+ type="com.iciql.util.Slf4jIciqlListener"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="defaultLevel" type="com.iciql.util.Slf4jIciqlListener.Level">\r
+</parameter>\r
+</constructor>\r
+<method name="logIciql"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="type" type="com.iciql.util.IciqlLogger.StatementType">\r
+</parameter>\r
+<parameter name="statement" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+<method name="setLevel"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="type" type="com.iciql.util.IciqlLogger.StatementType">\r
+</parameter>\r
+<parameter name="level" type="com.iciql.util.Slf4jIciqlListener.Level">\r
+</parameter>\r
+</method>\r
+</class>\r
+<class name="Slf4jIciqlListener.Level"\r
+ extends="java.lang.Enum"\r
+ abstract="false"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<method name="valueOf"
+ return="com.iciql.util.Slf4jIciqlListener.Level"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="name" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+<method name="values"
+ return="com.iciql.util.Slf4jIciqlListener.Level[]"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+</class>\r
+<class name="StatementBuilder"\r
+ extends="java.lang.Object"\r
+ abstract="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<constructor name="StatementBuilder"
+ type="com.iciql.util.StatementBuilder"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</constructor>\r
+<constructor name="StatementBuilder"
+ type="com.iciql.util.StatementBuilder"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="string" type="java.lang.String">\r
+</parameter>\r
+</constructor>\r
+<method name="append"
+ return="com.iciql.util.StatementBuilder"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="c" type="char">\r
+</parameter>\r
+</method>\r
+<method name="append"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="sb" type="com.iciql.util.StatementBuilder">\r
+</parameter>\r
+</method>\r
+<method name="append"
+ return="com.iciql.util.StatementBuilder"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="s" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+<method name="append"
+ return="com.iciql.util.StatementBuilder"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="x" type="long">\r
+</parameter>\r
+</method>\r
+<method name="appendExceptFirst"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="s" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+<method name="appendOnlyFirst"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="s" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+<method name="getCount"
+ return="int"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="insert"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="offset" type="int">\r
+</parameter>\r
+<parameter name="c" type="char">\r
+</parameter>\r
+</method>\r
+<method name="length"
+ return="int"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="resetCount"
+ return="com.iciql.util.StatementBuilder"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+</class>\r
+<class name="StringUtils"\r
+ extends="java.lang.Object"\r
+ abstract="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<constructor name="StringUtils"
+ type="com.iciql.util.StringUtils"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</constructor>\r
+<method name="arraySplit"
+ return="java.lang.String[]"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="s" type="java.lang.String">\r
+</parameter>\r
+<parameter name="separatorChar" type="char">\r
+</parameter>\r
+<parameter name="trim" type="boolean">\r
+</parameter>\r
+</method>\r
+<method name="breakLinesForHtml"
+ return="java.lang.String"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="string" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+<method name="calculateSHA1"
+ return="java.lang.String"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="bytes" type="byte[]">\r
+</parameter>\r
+</method>\r
+<method name="calculateSHA1"
+ return="java.lang.String"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="text" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+<method name="count"
+ return="int"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="c" type="char">\r
+</parameter>\r
+<parameter name="value" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+<method name="escapeForHtml"
+ return="java.lang.String"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="inStr" type="java.lang.String">\r
+</parameter>\r
+<parameter name="changeSpace" type="boolean">\r
+</parameter>\r
+</method>\r
+<method name="isNullOrEmpty"
+ return="boolean"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="s" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+<method name="javaEncode"
+ return="java.lang.String"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="s" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+<method name="pad"
+ return="java.lang.String"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="string" type="java.lang.String">\r
+</parameter>\r
+<parameter name="n" type="int">\r
+</parameter>\r
+<parameter name="padding" type="java.lang.String">\r
+</parameter>\r
+<parameter name="right" type="boolean">\r
+</parameter>\r
+</method>\r
+<method name="quoteStringSQL"
+ return="java.lang.String"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="s" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+<method name="readContent"
+ return="java.lang.String"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="file" type="java.io.File">\r
+</parameter>\r
+<parameter name="lineEnding" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+<method name="replaceAll"
+ return="java.lang.String"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="s" type="java.lang.String">\r
+</parameter>\r
+<parameter name="before" type="java.lang.String">\r
+</parameter>\r
+<parameter name="after" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+</class>\r
+<class name="Utils"\r
+ extends="java.lang.Object"\r
+ abstract="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<constructor name="Utils"
+ type="com.iciql.util.Utils"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</constructor>\r
+<method name="convert"
+ return="java.lang.Object"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="o" type="java.lang.Object">\r
+</parameter>\r
+<parameter name="targetType" type="java.lang.Class&lt;?&gt;">\r
+</parameter>\r
+</method>\r
+<method name="convertEnum"
+ return="java.lang.Object"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="o" type="java.lang.Enum&lt;?&gt;">\r
+</parameter>\r
+<parameter name="type" type="com.iciql.Iciql.EnumType">\r
+</parameter>\r
+</method>\r
+<method name="convertEnum"
+ return="java.lang.Object"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="o" type="java.lang.Object">\r
+</parameter>\r
+<parameter name="targetType" type="java.lang.Class&lt;?&gt;">\r
+</parameter>\r
+<parameter name="type" type="com.iciql.Iciql.EnumType">\r
+</parameter>\r
+</method>\r
+<method name="getClass"
+ return="java.lang.Class&lt;X&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="x" type="X">\r
+</parameter>\r
+</method>\r
+<method name="isSimpleType"
+ return="boolean"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="clazz" type="java.lang.Class&lt;T&gt;">\r
+</parameter>\r
+</method>\r
+<method name="loadClass"
+ return="java.lang.Class&lt;?&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="className" type="java.lang.String">\r
+</parameter>\r
+</method>\r
+<method name="newArrayList"
+ return="java.util.ArrayList&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="newArrayList"
+ return="java.util.ArrayList&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="c" type="java.util.Collection&lt;T&gt;">\r
+</parameter>\r
+</method>\r
+<method name="newHashMap"
+ return="java.util.HashMap&lt;A, B&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="newHashSet"
+ return="java.util.HashSet&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="newHashSet"
+ return="java.util.HashSet&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="list" type="java.util.Collection&lt;T&gt;">\r
+</parameter>\r
+</method>\r
+<method name="newIdentityHashMap"
+ return="java.util.IdentityHashMap&lt;A, B&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="newObject"
+ return="T"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="clazz" type="java.lang.Class&lt;T&gt;">\r
+</parameter>\r
+</method>\r
+<method name="newSynchronizedHashMap"
+ return="java.util.Map&lt;A, B&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="newThreadLocal"
+ return="java.lang.ThreadLocal&lt;T&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="clazz" type="java.lang.Class&lt;? extends T&gt;">\r
+</parameter>\r
+</method>\r
+<method name="readBlobAndClose"
+ return="byte[]"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="in" type="java.io.InputStream">\r
+</parameter>\r
+<parameter name="length" type="int">\r
+</parameter>\r
+<exception name="IOException" type="java.io.IOException">\r
+</exception>\r
+</method>\r
+<method name="readStringAndClose"
+ return="java.lang.String"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="in" type="java.io.Reader">\r
+</parameter>\r
+<parameter name="length" type="int">\r
+</parameter>\r
+<exception name="IOException" type="java.io.IOException">\r
+</exception>\r
+</method>\r
+<field name="COUNTER"
+ type="java.util.concurrent.atomic.AtomicLong"
+ transient="false"
+ volatile="false"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</field>\r
+</class>\r
+<class name="WeakIdentityHashMap"\r
+ extends="java.lang.Object"\r
+ abstract="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<implements name="java.util.Map">\r
+</implements>\r
+<constructor name="WeakIdentityHashMap"
+ type="com.iciql.util.WeakIdentityHashMap"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</constructor>\r
+<method name="clear"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="containsKey"
+ return="boolean"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="key" type="java.lang.Object">\r
+</parameter>\r
+</method>\r
+<method name="containsValue"
+ return="boolean"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="value" type="java.lang.Object">\r
+</parameter>\r
+</method>\r
+<method name="entrySet"
+ return="java.util.Set&lt;java.util.Map.Entry&lt;K, V&gt;&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="get"
+ return="V"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="key" type="java.lang.Object">\r
+</parameter>\r
+</method>\r
+<method name="isEmpty"
+ return="boolean"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="keySet"
+ return="java.util.Set&lt;K&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="put"
+ return="V"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="key" type="K">\r
+</parameter>\r
+<parameter name="value" type="V">\r
+</parameter>\r
+</method>\r
+<method name="putAll"
+ return="void"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="m" type="java.util.Map&lt;? extends K, ? extends V&gt;">\r
+</parameter>\r
+</method>\r
+<method name="remove"
+ return="V"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+<parameter name="key" type="java.lang.Object">\r
+</parameter>\r
+</method>\r
+<method name="size"
+ return="int"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+<method name="values"
+ return="java.util.Collection&lt;V&gt;"
+ abstract="false"
+ native="false"
+ synchronized="false"
+ static="false"
+ final="false"
+ deprecated="not deprecated"
+ visibility="public"
+>\r
+</method>\r
+</class>\r
+</package>\r
+</api>\r
index 5ac43520950fe2f5bb7310df7b3b66bb8a5d94c4..72c496070c4b17e1d1a8e85db63dfd8edcf02d3f 100644 (file)
--- a/build.xml
+++ b/build.xml
 \r
                <!-- Execute the test suite -->\r
                <echo>Executing iciql ${iq.version} test suite</echo>\r
+               <echo>This will take a few minutes...</echo>\r
                <java classpath="${project.build.dir}" classname="com.iciql.test.IciqlSuite">\r
                        <classpath refid="master-classpath" />\r
                        <arg value="--dbFile" />\r
                                <param name="-since"/> <param name="api/v1.xml"/> <param name="v1" />\r
                                <param name="-since"/> <param name="api/v2.xml"/> <param name="v2" />\r
                                <param name="-since"/> <param name="api/v3.xml"/> <param name="v3" />\r
+                               <param name="-since"/> <param name="api/v4.xml"/> <param name="v4" />\r
+                               <param name="-since"/> <param name="api/v5.xml"/> <param name="v5" />\r
                        <param name="-apiversion" value="v${iq.apiCurrent}"/>\r
                                \r
                                <param name="-apixml" value="api/v${iq.apiCurrent}.xml"/>\r
index daf9c426746c80836e4761135eb879960cd79649..ea5df61590cc3564de79f1de5138720bf9bd0077 100644 (file)
@@ -40,6 +40,7 @@ select * from products
 - [HSQLDB](http://hsqldb.org) 2.2.4 \r
 - [Derby](http://db.apache.org/derby) 10.7.1.1 & 10.8.1.2\r
 - [MySQL](http://mysql.com) 5.0.51b\r
+- [PostgreSQL](http://postgresql.org) 9.0\r
 \r
 Support for others is possible and may only require creating a simple "dialect" class.\r
 \r
index 31dbfb688509ffb9bfc19f7e0bbd7b90147fd26d..14619f244f2eeff70e01dac4a47fd8dad5c7332b 100644 (file)
@@ -97,33 +97,33 @@ Iciql does not throw any [checked exceptions](http://en.wikipedia.org/wiki/Excep
 \r
 ### Statement Logging\r
 \r
-Iciql provides a mechanism to log generated statements to the console, to SLF4J, or to your own logging framework.  Exceptions are not logged using this mechanism; exceptions are wrapped and rethrown as `IciqlException`, which is a RuntimeException.\r
+Iciql provides a mechanism to log generated statements and warnings to the console, to SLF4J, or to your own logging framework.  Exceptions are not logged using this mechanism; exceptions are wrapped and rethrown as `IciqlException`, which is a RuntimeException.\r
 \r
 #### Console Logging\r
 %BEGINCODE%\r
-StatmentLogger.activeConsoleLogger();\r
-StatmentLogger.deactiveConsoleLogger();\r
+IciqlLogger.activeConsoleLogger();\r
+IciqlLogger.deactiveConsoleLogger();\r
 %ENDCODE%\r
 \r
 #### SLF4J Logging\r
 %BEGINCODE%\r
-Slf4jStatementListener slf4j = new Slf4jStatementListener();\r
+Slf4jIciqlListener slf4j = new Slf4jIciqlListener();\r
 slf4j.setLevel(StatementType.CREATE, Level.WARN);\r
 slf4j.setLevel(StatementType.DELETE, Level.WARN);\r
 slf4j.setLevel(StatementType.MERGE, Level.OFF);\r
-StatmentLogger.registerListener(slf4j);\r
-StatmentLogger.unregisterListener(slf4j);\r
+IciqlLogger.registerListener(slf4j);\r
+IciqlLogger.unregisterListener(slf4j);\r
 %ENDCODE%\r
 \r
 #### Custom Logging\r
 %BEGINCODE%\r
-StatementListener custom = new StatementListener() {\r
-    public void logStatement(StatementType type, String statement) {\r
+IciqlListener custom = new IciqlListener() {\r
+    public void logIciql(StatementType type, String statement) {\r
         // do log\r
     }\r
 };\r
-StatmentLogger.registerListener(custom);\r
-StatmentLogger.unregisterListener(custom);\r
+IciqlLogger.registerListener(custom);\r
+IciqlLogger.unregisterListener(custom);\r
 %ENDCODE%\r
 \r
 ## Understanding Aliases and Model Classes\r
index 7df050aa0fb57c2adb5c54718c94f1e17906dcb6..12c07a117789670ffffc53aef7c9de4bbe6d3746 100644 (file)
@@ -9,7 +9,11 @@ Performance of iciql statement generation is not currently benchmarked.
 \r
 ### iciql+database performance comparison\r
 \r
-The following data was generated by running the iciql test suite. The suite is almost completely single-threaded.  All Java databases are run in embedded *memory-only* mode through a JDBC connection.\r
+The following data was generated by running the *single-threaded* iciql test suite.  All database connections are pooled and re-used within each execution of the test suite using [Apache Commons DBCP](http://commons.apache.org/dbcp).\r
+\r
+Connections are pooled to normalize embedded database performance with out-of-process database performance.  Some of the Java embedded database configurations have a very high startup-time penalty.  Notably, H2 is slow to open a database and its performance is substantially affected if connection pooling is not enabled to keep the embedded database open.\r
+\r
+All performance numbers include the combined overhead of iciql statement generation and JUnit 4 test framework execution so they are not bare-metal database metrics.  \r
 \r
 <pre>\r
 %DBPERFORMANCE%\r
index 8a4f45b9832105f2bd1bb35dd8831b42e5949d1e..00252792a0bb6a2474777836996c837227991861 100644 (file)
@@ -11,12 +11,16 @@ Additionally, [eclipse-cs](http://eclipse-cs.sourceforge.net), [FindBugs](http:/
 - [H2 Database](http://h2database.com) (Eclipse Public License 1.0)\r
 - [HSQL Database Engine](http://hsqldb.org) (BSD)\r
 - [Apache Derby Database](http://db.apache.org/derby) (Apache 2.0)\r
+- [MySQL Connector/J](http://dev.mysql.com/downloads/connector/j) (GPL)\r
+- [PostgreSQL JDBC Connector](http://jdbc.postgresql.org) (BSD)\r
 - [JUnit](http://junit.org) (Common Public License)\r
 - [commons-net](http://commons.apache.org/net) (Apache 2.0)\r
 - [ant-googlecode](http://code.google.com/p/ant-googlecode) (New BSD)\r
 - [MarkdownPapers](http://markdown.tautua.org) (Apache 2.0)\r
 - [doclava](http://code.google.com/p/doclava) (Apache 2.0)\r
 - [SLF4J](http://www.slf4j.org) (MIT/X11)\r
+- [Apache Commons Pool](http://commons.apache.org/pool) (Apache 2.0)\r
+- [Apache Commons DBCP](http://commons.apache.org/dbcp) (Apache 2.0)\r
 \r
 ### Instructions\r
 1. Clone the git repository from [GoogleCode][iciqlsrc].\r
index 8e0dfd6c5e15450b276a61c9bcf39403912569ad..bd3c85397ace168c6fecbcd0b3cb9f7cb9efd3c8 100644 (file)
@@ -6,13 +6,20 @@
 \r
 **%VERSION%** ([zip](http://code.google.com/p/iciql/downloads/detail?name=%ZIP%)|[jar](http://code.google.com/p/iciql/downloads/detail?name=%JAR%)) &nbsp; *released %BUILDDATE%*\r
 \r
+- api change release (API v6)\r
 - Finished MySQL dialect implementation.  MySQL 5.0.51b passes 100% of tests.\r
+- Added PostgreSQL dialect.  PostgreSQL 9.0 passes all but the boolean-as-int tests.\r
 - Added Db.dropTable(T) method\r
+- Overhauled test suite and included more database configurations.\r
+- Renamed StatementLogger to IciqlLogger\r
+- Added IciqlLogger.warn method\r
+- Added IciqlLogger.drop method\r
 \r
 ### Older Releases\r
 \r
 **0.6.6** &nbsp; *released 2011-08-15*\r
 \r
+- api change release (API v5)\r
 - Disabled two concurrency unit tests since I believe they are flawed and do not yield reproducible results\r
 - Added Derby database dialect.  Derby 10.7.1.1 and 10.8.1.2 pass 100% of tests.\r
 - Implemented HSQL MERGE syntax.  HSQL 2.2.4 fails 1 test which is a known [bug in HSQL](https://sourceforge.net/tracker/?func=detail&aid=3390047&group_id=23316&atid=378131)\r
index bf6a5d0d4e8219cebd501c1a0c1528e08dd4aace..b8d38dddcb55949df2361487cb78c230073990da 100644 (file)
@@ -25,14 +25,14 @@ public class Constants {
 \r
        // The build script extracts this exact line so be careful editing it\r
        // and only use A-Z a-z 0-9 .-_ in the string.\r
-       public static final String VERSION = "0.6.6";\r
+       public static final String VERSION = "0.7.0";\r
 \r
        // The build script extracts this exact line so be careful editing it\r
        // and only use A-Z a-z 0-9 .-_ in the string.\r
-       public static final String VERSION_DATE = "2011-08-15";\r
+       public static final String VERSION_DATE = "2011-08-17";\r
 \r
        // The build script extracts this exact line so be careful editing it\r
        // and only use A-Z a-z 0-9 .-_ in the string.\r
-       public static final String API_CURRENT = "5";\r
+       public static final String API_CURRENT = "6";\r
 \r
 }\r
index da0a7ac90101d0a892bcf40b884b7260a4971cdc..af3c13982c51918284c6ebc90993f6ea9abe4f5c 100644 (file)
@@ -38,7 +38,7 @@ import com.iciql.DbUpgrader.DefaultDbUpgrader;
 import com.iciql.Iciql.IQTable;\r
 import com.iciql.Iciql.IQVersion;\r
 import com.iciql.util.JdbcUtils;\r
-import com.iciql.util.StatementLogger;\r
+import com.iciql.util.IciqlLogger;\r
 import com.iciql.util.StringUtils;\r
 import com.iciql.util.Utils;\r
 import com.iciql.util.WeakIdentityHashMap;\r
@@ -245,7 +245,7 @@ public class Db {
                TableDefinition<T> def = (TableDefinition<T>) define(modelClass);\r
                SQLStatement stat = new SQLStatement(this);\r
                getDialect().prepareDropTable(stat, def);\r
-               StatementLogger.drop(stat.getSQL());\r
+               IciqlLogger.drop(stat.getSQL());\r
                int rc = 0;\r
                try {\r
                        rc = stat.executeUpdate();\r
index 46704186ef000854ee323dcb558e980c62b1c32b..7e7021ea1f48a560262a94185bd52671d8ec3ca8 100644 (file)
@@ -109,6 +109,9 @@ public class IciqlException extends RuntimeException {
                        } else if ("42X05".equals(state)) {\r
                                // Derby table not found\r
                                iciqlCode = CODE_OBJECT_NOT_FOUND;\r
+                       } else if ("42Y55".equals(state)) {\r
+                               // Derby table not found\r
+                               iciqlCode = CODE_OBJECT_NOT_FOUND;\r
                        } else if ("42S02".equals(state)) {\r
                                // H2 table not found\r
                                iciqlCode = CODE_OBJECT_NOT_FOUND;\r
index 8f347619fad7febdeab0502d4a460220a418d3e1..b2d397ac394428b467c027fda134ba00d99cdaa4 100644 (file)
@@ -31,7 +31,7 @@ import java.util.List;
 import com.iciql.Iciql.EnumType;\r
 import com.iciql.bytecode.ClassReader;\r
 import com.iciql.util.JdbcUtils;\r
-import com.iciql.util.StatementLogger;\r
+import com.iciql.util.IciqlLogger;\r
 import com.iciql.util.Utils;\r
 \r
 /**\r
@@ -141,7 +141,7 @@ public class Query<T> {
                stat.appendSQL("DELETE FROM ");\r
                from.appendSQL(stat);\r
                appendWhere(stat);\r
-               StatementLogger.delete(stat.getSQL());\r
+               IciqlLogger.delete(stat.getSQL());\r
                return stat.executeUpdate();\r
        }\r
 \r
@@ -239,7 +239,7 @@ public class Query<T> {
                        declaration.appendSQL(stat);\r
                }\r
                appendWhere(stat);\r
-               StatementLogger.update(stat.getSQL());\r
+               IciqlLogger.update(stat.getSQL());\r
                return stat.executeUpdate();\r
        }\r
 \r
@@ -713,7 +713,7 @@ public class Query<T> {
                        }\r
                }\r
                db.getDialect().appendLimitOffset(stat, limit, offset);\r
-               StatementLogger.select(stat.getSQL());\r
+               IciqlLogger.select(stat.getSQL());\r
        }\r
 \r
        /**\r
index 7ef507aad501431211be6c96cfe7f385b29dfb52..4814fdd561338db42e39e252be612730f15dcc6a 100644 (file)
@@ -23,6 +23,7 @@ import java.text.MessageFormat;
 \r
 import com.iciql.TableDefinition.FieldDefinition;\r
 import com.iciql.TableDefinition.IndexDefinition;\r
+import com.iciql.util.IciqlLogger;\r
 import com.iciql.util.StatementBuilder;\r
 import com.iciql.util.StringUtils;\r
 \r
@@ -217,6 +218,8 @@ public class SQLDialectDefault implements SQLDialect {
                case UNIQUE_HASH:\r
                        buff.append("UNIQUE ");\r
                        break;\r
+               default:\r
+                       IciqlLogger.warn("{0} does not support hash indexes", getClass().getSimpleName());\r
                }\r
                buff.append("INDEX ");\r
                buff.append(index.indexName);\r
index 6f201ad739e475dc12ee3d28a434c99b2b07e029..9b3666c6f35f5a6400a5586cbe188f7b229773d2 100644 (file)
@@ -38,7 +38,7 @@ import com.iciql.Iciql.IQTable;
 import com.iciql.Iciql.IQVersion;\r
 import com.iciql.Iciql.IndexType;\r
 import com.iciql.util.StatementBuilder;\r
-import com.iciql.util.StatementLogger;\r
+import com.iciql.util.IciqlLogger;\r
 import com.iciql.util.StringUtils;\r
 import com.iciql.util.Utils;\r
 \r
@@ -431,7 +431,7 @@ public class TableDefinition<T> {
                }\r
                buff.append(')');\r
                stat.setSQL(buff.toString());\r
-               StatementLogger.insert(stat.getSQL());\r
+               IciqlLogger.insert(stat.getSQL());\r
                if (returnKey) {\r
                        return stat.executeInsert();\r
                }\r
@@ -461,7 +461,7 @@ public class TableDefinition<T> {
                }\r
                SQLStatement stat = new SQLStatement(db);\r
                db.getDialect().prepareMerge(stat, schemaName, tableName, this, obj);\r
-               StatementLogger.merge(stat.getSQL());\r
+               IciqlLogger.merge(stat.getSQL());\r
                return stat.executeUpdate();\r
        }\r
 \r
@@ -503,7 +503,7 @@ public class TableDefinition<T> {
                }\r
                stat.setSQL(buff.toString());\r
                query.appendWhere(stat);\r
-               StatementLogger.update(stat.getSQL());\r
+               IciqlLogger.update(stat.getSQL());\r
                return stat.executeUpdate();\r
        }\r
 \r
@@ -535,7 +535,7 @@ public class TableDefinition<T> {
                }\r
                stat.setSQL(buff.toString());\r
                query.appendWhere(stat);\r
-               StatementLogger.delete(stat.getSQL());\r
+               IciqlLogger.delete(stat.getSQL());\r
                return stat.executeUpdate();\r
        }\r
 \r
@@ -548,7 +548,7 @@ public class TableDefinition<T> {
                }\r
                SQLStatement stat = new SQLStatement(db);\r
                db.getDialect().prepareCreateTable(stat, this);\r
-               StatementLogger.create(stat.getSQL());\r
+               IciqlLogger.create(stat.getSQL());\r
                try {\r
                        stat.executeUpdate();\r
                } catch (IciqlException e) {\r
@@ -561,7 +561,7 @@ public class TableDefinition<T> {
                for (IndexDefinition index : indexes) {\r
                        stat = new SQLStatement(db);\r
                        db.getDialect().prepareCreateIndex(stat, schemaName, tableName, index);\r
-                       StatementLogger.create(stat.getSQL());\r
+                       IciqlLogger.create(stat.getSQL());\r
                        try {\r
                                stat.executeUpdate();\r
                        } catch (IciqlException e) {\r
index 75f64837592c2dace1a4e439ffdb7badda1d5791..e8b93850a3cf71cf7b7106ef433a1891f47e8e11 100644 (file)
@@ -69,6 +69,10 @@ public class Build {
                downloadFromApache(MavenObject.DOCLAVA, BuildType.COMPILETIME);\r
                downloadFromApache(MavenObject.SLF4JAPI, BuildType.RUNTIME);\r
                downloadFromApache(MavenObject.SLF4JAPI, BuildType.COMPILETIME);\r
+               downloadFromApache(MavenObject.COMMONSPOOL, BuildType.RUNTIME);\r
+               downloadFromApache(MavenObject.COMMONSPOOL, BuildType.COMPILETIME);\r
+               downloadFromApache(MavenObject.COMMONSDBCP, BuildType.RUNTIME);\r
+               downloadFromApache(MavenObject.COMMONSDBCP, BuildType.COMPILETIME);\r
 \r
                // needed for site publishing\r
                downloadFromApache(MavenObject.COMMONSNET, BuildType.RUNTIME);\r
@@ -172,9 +176,9 @@ public class Build {
                                "219a3540f3b27d7cc3b1d91d6ea046cd8723290e", "0bb50eec177acf0e94d58e0cf07262fe5164331d",\r
                                "c7adc475ca40c288c93054e0f4fe58f3a98c0cb5");\r
 \r
-               public static final MavenObject H2 = new MavenObject("com/h2database", "h2", "1.3.158",\r
-                               "4bac13427caeb32ef6e93b70101e61f370c7b5e2", "6bb165156a0831879fa7797df6e18bdcd4421f2d",\r
-                               "446d3f58c44992534cb54f67134532d95961904a");\r
+               public static final MavenObject H2 = new MavenObject("com/h2database", "h2", "1.3.159",\r
+                               "dd89f939661eb5593909584e1c243db0c25de130", "4d953bf765e8a13c7e06ca51165438338966c698",\r
+                               "4c79ed03f994820a1a873150c8a9f13c667784d3");\r
 \r
                public static final MavenObject HSQLDB = new MavenObject("org/hsqldb", "hsqldb", "2.2.4",\r
                                "6a6e040b07f5ee409fc825f1c5e5b574b1fa1428", "", "");\r
@@ -206,6 +210,14 @@ public class Build {
                                "6f3b8a24bf970f17289b234284c94f43eb42f0e4", "46a386136c901748e6a3af67ebde6c22bc6b4524",\r
                                "e223571d77769cdafde59040da235842f3326453");\r
 \r
+               public static final MavenObject COMMONSPOOL = new MavenObject("commons-pool", "commons-pool", "1.5.6",\r
+                               "16390e2d74df4ab08c06a85d42a74a951dc93ad7", "bbfb73ed3c341d9738c64da8157910b967f878d6",\r
+                               "d72204023b30cd9fecb64829586472f3c6806005");\r
+\r
+               public static final MavenObject COMMONSDBCP = new MavenObject("commons-dbcp", "commons-dbcp", "1.4",\r
+                               "30be73c965cc990b153a100aaaaafcf239f82d39", "9b076ff231434d5403be6599a1347019b12c0def",\r
+                               "098bf7c8d5b026f6e3969259a36e813ac37432b3");\r
+\r
                public final String group;\r
                public final String artifact;\r
                public final String version;\r
diff --git a/src/com/iciql/util/IciqlLogger.java b/src/com/iciql/util/IciqlLogger.java
new file mode 100644 (file)
index 0000000..d8005bb
--- /dev/null
@@ -0,0 +1,214 @@
+/*
+ * Copyright 2011 James Moger.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.iciql.util;
+
+import java.text.DecimalFormat;
+import java.text.MessageFormat;
+import java.util.Set;
+import java.util.concurrent.ExecutorService;
+import java.util.concurrent.Executors;
+import java.util.concurrent.atomic.AtomicLong;
+
+import com.iciql.IciqlException;
+
+/**
+ * Utility class to optionally log generated statements to IciqlListeners.<br>
+ * Statement logging is disabled by default.
+ * <p>
+ * This class also tracks the counts for generated statements by major type.
+ * 
+ */
+public class IciqlLogger {
+
+       /**
+        * Enumeration of the different statement types that are logged.
+        */
+       public enum StatementType {
+               STAT, TOTAL, CREATE, INSERT, UPDATE, MERGE, DELETE, SELECT, DROP, WARN;
+       }
+
+       /**
+        * Interface that defines an iciql listener.
+        */
+       public interface IciqlListener {
+               void logIciql(StatementType type, String statement);
+       }
+
+       private static final ExecutorService EXEC = Executors.newSingleThreadExecutor();
+       private static final Set<IciqlListener> LISTENERS = Utils.newHashSet();
+       private static final IciqlListener CONSOLE = new IciqlListener() {
+
+               @Override
+               public void logIciql(StatementType type, String message) {
+                       System.out.println(message);
+               }
+       };
+
+       private static final AtomicLong SELECT_COUNT = new AtomicLong();
+       private static final AtomicLong CREATE_COUNT = new AtomicLong();
+       private static final AtomicLong INSERT_COUNT = new AtomicLong();
+       private static final AtomicLong UPDATE_COUNT = new AtomicLong();
+       private static final AtomicLong MERGE_COUNT = new AtomicLong();
+       private static final AtomicLong DELETE_COUNT = new AtomicLong();
+       private static final AtomicLong DROP_COUNT = new AtomicLong();
+       private static final AtomicLong WARN_COUNT = new AtomicLong();
+
+       /**
+        * Activates the Console Logger.
+        */
+       public static void activateConsoleLogger() {
+               registerListener(CONSOLE);
+       }
+
+       /**
+        * Deactivates the Console Logger.
+        */
+       public static void deactivateConsoleLogger() {
+               unregisterListener(CONSOLE);
+       }
+
+       /**
+        * Registers a listener with the relay.
+        * 
+        * @param listener
+        */
+       public static void registerListener(IciqlListener listener) {
+               LISTENERS.add(listener);
+       }
+
+       /**
+        * Unregisters a listener with the relay.
+        * 
+        * @param listener
+        */
+       public static void unregisterListener(IciqlListener listener) {
+               if (!LISTENERS.remove(listener)) {
+                       throw new IciqlException("Failed to remove iciql listener {0}", listener);
+               }
+       }
+
+       public static void create(String statement) {
+               CREATE_COUNT.incrementAndGet();
+               logStatement(StatementType.CREATE, statement);
+       }
+
+       public static void insert(String statement) {
+               INSERT_COUNT.incrementAndGet();
+               logStatement(StatementType.INSERT, statement);
+       }
+
+       public static void update(String statement) {
+               UPDATE_COUNT.incrementAndGet();
+               logStatement(StatementType.UPDATE, statement);
+       }
+
+       public static void merge(String statement) {
+               MERGE_COUNT.incrementAndGet();
+               logStatement(StatementType.MERGE, statement);
+       }
+
+       public static void delete(String statement) {
+               DELETE_COUNT.incrementAndGet();
+               logStatement(StatementType.DELETE, statement);
+       }
+
+       public static void select(String statement) {
+               SELECT_COUNT.incrementAndGet();
+               logStatement(StatementType.SELECT, statement);
+       }
+
+       public static void drop(String statement) {
+               DROP_COUNT.incrementAndGet();
+               logStatement(StatementType.DROP, statement);
+       }
+
+       public static void warn(String message, Object... args) {
+               WARN_COUNT.incrementAndGet();
+               logStatement(StatementType.WARN, args.length > 0 ? MessageFormat.format(message, args) : message);
+       }
+
+       private static void logStatement(final StatementType type, final String statement) {
+               for (final IciqlListener listener : LISTENERS) {
+                       EXEC.execute(new Runnable() {
+                               public void run() {
+                                       listener.logIciql(type, statement);
+                               }
+                       });
+               }
+       }
+
+       public static long getCreateCount() {
+               return CREATE_COUNT.longValue();
+       }
+
+       public static long getInsertCount() {
+               return INSERT_COUNT.longValue();
+       }
+
+       public static long getUpdateCount() {
+               return UPDATE_COUNT.longValue();
+       }
+
+       public static long getMergeCount() {
+               return MERGE_COUNT.longValue();
+       }
+
+       public static long getDeleteCount() {
+               return DELETE_COUNT.longValue();
+       }
+
+       public static long getSelectCount() {
+               return SELECT_COUNT.longValue();
+       }
+
+       public static long getDropCount() {
+               return DROP_COUNT.longValue();
+       }
+
+       public static long getWarnCount() {
+               return WARN_COUNT.longValue();
+       }
+
+       public static long getTotalCount() {
+               return getCreateCount() + getInsertCount() + getUpdateCount() + getDeleteCount() + getMergeCount()
+                               + getSelectCount() + getDropCount();
+       }
+
+       public static void logStats() {
+               logStatement(StatementType.STAT, "iciql Runtime Statistics");
+               logStatement(StatementType.STAT, "========================");
+               logStat(StatementType.WARN, getWarnCount());
+               logStatement(StatementType.STAT, "========================");
+               logStat(StatementType.CREATE, getCreateCount());
+               logStat(StatementType.INSERT, getInsertCount());
+               logStat(StatementType.UPDATE, getUpdateCount());
+               logStat(StatementType.MERGE, getMergeCount());
+               logStat(StatementType.DELETE, getDeleteCount());
+               logStat(StatementType.SELECT, getSelectCount());
+               logStat(StatementType.DROP, getDropCount());
+               logStatement(StatementType.STAT, "========================");
+               logStat(StatementType.TOTAL, getTotalCount());
+       }
+
+       private static void logStat(StatementType type, long value) {
+               if (value > 0) {
+                       DecimalFormat df = new DecimalFormat("###,###,###,###");
+                       logStatement(StatementType.STAT,
+                                       StringUtils.pad(type.name(), 6, " ", true) + " = " + df.format(value));
+               }
+       }
+}
\ No newline at end of file
diff --git a/src/com/iciql/util/Slf4jIciqlListener.java b/src/com/iciql/util/Slf4jIciqlListener.java
new file mode 100644 (file)
index 0000000..ded393f
--- /dev/null
@@ -0,0 +1,92 @@
+/*\r
+ * Copyright 2011 James Moger.\r
+ *\r
+ * Licensed under the Apache License, Version 2.0 (the "License");\r
+ * you may not use this file except in compliance with the License.\r
+ * You may obtain a copy of the License at\r
+ *\r
+ *     http://www.apache.org/licenses/LICENSE-2.0\r
+ *\r
+ * Unless required by applicable law or agreed to in writing, software\r
+ * distributed under the License is distributed on an "AS IS" BASIS,\r
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+ * See the License for the specific language governing permissions and\r
+ * limitations under the License.\r
+ */\r
+\r
+package com.iciql.util;\r
+\r
+import java.util.HashMap;\r
+import java.util.Map;\r
+\r
+import org.slf4j.Logger;\r
+import org.slf4j.LoggerFactory;\r
+\r
+import com.iciql.Iciql;\r
+import com.iciql.util.IciqlLogger.IciqlListener;\r
+import com.iciql.util.IciqlLogger.StatementType;\r
+\r
+/**\r
+ * Slf4jIciqlListener interfaces the IciqlLogger to the SLF4J logging framework.\r
+ */\r
+public class Slf4jIciqlListener implements IciqlListener {\r
+\r
+       private Logger logger = LoggerFactory.getLogger(Iciql.class);\r
+\r
+       /**\r
+        * Enumeration representing the SLF4J log levels.\r
+        */\r
+       public enum Level {\r
+               ERROR, WARN, INFO, DEBUG, TRACE, OFF;\r
+       }\r
+\r
+       private final Level defaultLevel;\r
+\r
+       private final Map<StatementType, Level> levels;\r
+\r
+       public Slf4jIciqlListener() {\r
+               this(Level.TRACE);\r
+       }\r
+\r
+       public Slf4jIciqlListener(Level defaultLevel) {\r
+               this.defaultLevel = defaultLevel;\r
+               levels = new HashMap<StatementType, Level>();\r
+               for (StatementType type : StatementType.values()) {\r
+                       levels.put(type, defaultLevel);\r
+               }\r
+       }\r
+\r
+       /**\r
+        * Sets the logging level for a particular statement type.\r
+        * \r
+        * @param type\r
+        * @param level\r
+        */\r
+       public void setLevel(StatementType type, Level level) {\r
+               levels.put(type, defaultLevel);\r
+       }\r
+\r
+       @Override\r
+       public void logIciql(StatementType type, String statement) {\r
+               Level level = levels.get(type);\r
+               switch (level) {\r
+               case ERROR:\r
+                       logger.error(statement);\r
+                       break;\r
+               case WARN:\r
+                       logger.warn(statement);\r
+                       break;\r
+               case INFO:\r
+                       logger.info(statement);\r
+                       break;\r
+               case DEBUG:\r
+                       logger.debug(statement);\r
+                       break;\r
+               case TRACE:\r
+                       logger.trace(statement);\r
+                       break;\r
+               case OFF:\r
+                       break;\r
+               }\r
+       }\r
+}\r
diff --git a/src/com/iciql/util/Slf4jStatementListener.java b/src/com/iciql/util/Slf4jStatementListener.java
deleted file mode 100644 (file)
index f46099c..0000000
+++ /dev/null
@@ -1,94 +0,0 @@
-/*\r
- * Copyright 2011 James Moger.\r
- *\r
- * Licensed under the Apache License, Version 2.0 (the "License");\r
- * you may not use this file except in compliance with the License.\r
- * You may obtain a copy of the License at\r
- *\r
- *     http://www.apache.org/licenses/LICENSE-2.0\r
- *\r
- * Unless required by applicable law or agreed to in writing, software\r
- * distributed under the License is distributed on an "AS IS" BASIS,\r
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
- * See the License for the specific language governing permissions and\r
- * limitations under the License.\r
- */\r
-\r
-package com.iciql.util;\r
-\r
-import java.util.HashMap;\r
-import java.util.Map;\r
-\r
-import org.slf4j.Logger;\r
-import org.slf4j.LoggerFactory;\r
-\r
-import com.iciql.Iciql;\r
-import com.iciql.util.StatementLogger.StatementListener;\r
-import com.iciql.util.StatementLogger.StatementType;\r
-\r
-/**\r
- * Slf4jStatementListener interfaces the iciql statement logger to the SLF4J\r
- * logging architecture.\r
- * \r
- */\r
-public class Slf4jStatementListener implements StatementListener {\r
-\r
-       private Logger logger = LoggerFactory.getLogger(Iciql.class);\r
-\r
-       /**\r
-        * Enumeration representing the SLF4J log levels.\r
-        */\r
-       public enum Level {\r
-               ERROR, WARN, INFO, DEBUG, TRACE, OFF;\r
-       }\r
-\r
-       private final Level defaultLevel;\r
-\r
-       private final Map<StatementType, Level> levels;\r
-\r
-       public Slf4jStatementListener() {\r
-               this(Level.TRACE);\r
-       }\r
-\r
-       public Slf4jStatementListener(Level defaultLevel) {\r
-               this.defaultLevel = defaultLevel;\r
-               levels = new HashMap<StatementType, Level>();\r
-               for (StatementType type : StatementType.values()) {\r
-                       levels.put(type, defaultLevel);\r
-               }\r
-       }\r
-\r
-       /**\r
-        * Sets the logging level for a particular statement type.\r
-        * \r
-        * @param type\r
-        * @param level\r
-        */\r
-       public void setLevel(StatementType type, Level level) {\r
-               levels.put(type, defaultLevel);\r
-       }\r
-\r
-       @Override\r
-       public void logStatement(StatementType type, String statement) {\r
-               Level level = levels.get(type);\r
-               switch (level) {\r
-               case ERROR:\r
-                       logger.error(statement);\r
-                       break;\r
-               case WARN:\r
-                       logger.warn(statement);\r
-                       break;\r
-               case INFO:\r
-                       logger.info(statement);\r
-                       break;\r
-               case DEBUG:\r
-                       logger.debug(statement);\r
-                       break;\r
-               case TRACE:\r
-                       logger.trace(statement);\r
-                       break;\r
-               case OFF:\r
-                       break;\r
-               }\r
-       }\r
-}\r
diff --git a/src/com/iciql/util/StatementLogger.java b/src/com/iciql/util/StatementLogger.java
deleted file mode 100644 (file)
index b11a5f9..0000000
+++ /dev/null
@@ -1,201 +0,0 @@
-/*
- * Copyright 2011 James Moger.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.iciql.util;
-
-import java.text.DecimalFormat;
-import java.util.Set;
-import java.util.concurrent.ExecutorService;
-import java.util.concurrent.Executors;
-import java.util.concurrent.atomic.AtomicLong;
-
-import com.iciql.IciqlException;
-
-/**
- * Utility class to optionally log generated statements to StatementListeners.<br>
- * Statement logging is disabled by default.
- * <p>
- * This class also tracks the counts for generated statements by major type.
- * 
- */
-public class StatementLogger {
-
-       /**
-        * Enumeration of the different statement types that are logged.
-        */
-       public enum StatementType {
-               STAT, TOTAL, CREATE, INSERT, UPDATE, MERGE, DELETE, SELECT, DROP;
-       }
-
-       /**
-        * Interface that defines a statement listener.
-        */
-       public interface StatementListener {
-               void logStatement(StatementType type, String statement);
-       }
-
-       private static final ExecutorService EXEC = Executors.newSingleThreadExecutor();
-       private static final Set<StatementListener> LISTENERS = Utils.newHashSet();
-       private static final StatementListener CONSOLE = new StatementListener() {
-
-               @Override
-               public void logStatement(StatementType type, String message) {
-                       System.out.println(message);
-               }
-       };
-
-       private static final AtomicLong SELECT_COUNT = new AtomicLong();
-       private static final AtomicLong CREATE_COUNT = new AtomicLong();
-       private static final AtomicLong INSERT_COUNT = new AtomicLong();
-       private static final AtomicLong UPDATE_COUNT = new AtomicLong();
-       private static final AtomicLong MERGE_COUNT = new AtomicLong();
-       private static final AtomicLong DELETE_COUNT = new AtomicLong();
-       private static final AtomicLong DROP_COUNT = new AtomicLong();
-
-       /**
-        * Activates the Console Logger.
-        */
-       public static void activateConsoleLogger() {
-               registerListener(CONSOLE);
-       }
-
-       /**
-        * Deactivates the Console Logger.
-        */
-       public static void deactivateConsoleLogger() {
-               unregisterListener(CONSOLE);
-       }
-
-       /**
-        * Registers a listener with the relay.
-        * 
-        * @param listener
-        */
-       public static void registerListener(StatementListener listener) {
-               LISTENERS.add(listener);
-       }
-
-       /**
-        * Unregisters a listener with the relay.
-        * 
-        * @param listener
-        */
-       public static void unregisterListener(StatementListener listener) {
-               if (!LISTENERS.remove(listener)) {
-                       throw new IciqlException("Failed to remove statement listener {0}", listener);
-               }
-       }
-
-       public static void create(String statement) {
-               CREATE_COUNT.incrementAndGet();
-               logStatement(StatementType.CREATE, statement);
-       }
-
-       public static void insert(String statement) {
-               INSERT_COUNT.incrementAndGet();
-               logStatement(StatementType.INSERT, statement);
-       }
-
-       public static void update(String statement) {
-               UPDATE_COUNT.incrementAndGet();
-               logStatement(StatementType.UPDATE, statement);
-       }
-
-       public static void merge(String statement) {
-               MERGE_COUNT.incrementAndGet();
-               logStatement(StatementType.MERGE, statement);
-       }
-
-       public static void delete(String statement) {
-               DELETE_COUNT.incrementAndGet();
-               logStatement(StatementType.DELETE, statement);
-       }
-
-       public static void select(String statement) {
-               SELECT_COUNT.incrementAndGet();
-               logStatement(StatementType.SELECT, statement);
-       }
-
-       public static void drop(String statement) {
-               DROP_COUNT.incrementAndGet();
-               logStatement(StatementType.DROP, statement);
-       }
-
-       private static void logStatement(final StatementType type, final String statement) {
-               for (final StatementListener listener : LISTENERS) {
-                       EXEC.execute(new Runnable() {
-                               public void run() {
-                                       listener.logStatement(type, statement);
-                               }
-                       });
-               }
-       }
-
-       public static long getCreateCount() {
-               return CREATE_COUNT.longValue();
-       }
-
-       public static long getInsertCount() {
-               return INSERT_COUNT.longValue();
-       }
-
-       public static long getUpdateCount() {
-               return UPDATE_COUNT.longValue();
-       }
-
-       public static long getMergeCount() {
-               return MERGE_COUNT.longValue();
-       }
-
-       public static long getDeleteCount() {
-               return DELETE_COUNT.longValue();
-       }
-
-       public static long getSelectCount() {
-               return SELECT_COUNT.longValue();
-       }
-
-       public static long getDropCount() {
-               return DROP_COUNT.longValue();
-       }
-
-       public static long getTotalCount() {
-               return getCreateCount() + getInsertCount() + getUpdateCount() + getDeleteCount() + getMergeCount()
-                               + getSelectCount() + getDropCount();
-       }
-
-       public static void logStats() {
-               logStatement(StatementType.STAT, "iciql Runtime Statistics");
-               logStatement(StatementType.STAT, "========================");
-               logStat(StatementType.CREATE, getCreateCount());
-               logStat(StatementType.INSERT, getInsertCount());
-               logStat(StatementType.UPDATE, getUpdateCount());
-               logStat(StatementType.MERGE, getMergeCount());
-               logStat(StatementType.DELETE, getDeleteCount());
-               logStat(StatementType.SELECT, getSelectCount());
-               logStat(StatementType.DROP, getDropCount());
-               logStatement(StatementType.STAT, "========================");
-               logStat(StatementType.TOTAL, getTotalCount());
-       }
-
-       private static void logStat(StatementType type, long value) {
-               if (value > 0) {
-                       DecimalFormat df = new DecimalFormat("###,###,###,###");
-                       logStatement(StatementType.STAT,
-                                       StringUtils.pad(type.name(), 6, " ", true) + " = " + df.format(value));
-               }
-       }
-}
\ No newline at end of file
index 2fdbcf4c624dd1c83f79214ade8635e6d5114345..30e46bb44d3f4fe31fa751dfd9c76c84841e1ba8 100644 (file)
@@ -85,6 +85,9 @@ public class AnnotationsTest {
        }
 
        private String prepName(String name, boolean upper, boolean lower) {
+               if (name == null) {
+                       return null;
+               }
                if (upper) {
                        return name.toUpperCase();
                } else if (lower) {
index d79f27723142cfcbdf3e400df8dbe440ee965595..d68e146f889660f9fe93b23b05002cb2c3a83593 100644 (file)
  */\r
 package com.iciql.test;\r
 \r
+import java.io.File;\r
 import java.io.FileWriter;\r
 import java.io.IOException;\r
 import java.io.PrintStream;\r
 import java.sql.SQLException;\r
+import java.text.DecimalFormat;\r
 import java.text.MessageFormat;\r
 import java.util.Arrays;\r
 import java.util.Collections;\r
-import java.util.Comparator;\r
 import java.util.List;\r
-import java.util.concurrent.atomic.AtomicInteger;\r
+import java.util.Map;\r
 \r
+import org.apache.commons.dbcp.ConnectionFactory;\r
+import org.apache.commons.dbcp.DriverManagerConnectionFactory;\r
+import org.apache.commons.dbcp.PoolableConnectionFactory;\r
+import org.apache.commons.dbcp.PoolingDataSource;\r
+import org.apache.commons.pool.impl.GenericObjectPool;\r
 import org.junit.Assert;\r
 import org.junit.runner.JUnitCore;\r
 import org.junit.runner.Result;\r
@@ -54,10 +60,11 @@ import com.iciql.test.models.ProductAnnotationOnly;
 import com.iciql.test.models.ProductInheritedAnnotation;\r
 import com.iciql.test.models.ProductMixedAnnotation;\r
 import com.iciql.test.models.SupportedTypes;\r
-import com.iciql.util.StatementLogger;\r
-import com.iciql.util.StatementLogger.StatementListener;\r
-import com.iciql.util.StatementLogger.StatementType;\r
+import com.iciql.util.IciqlLogger;\r
+import com.iciql.util.IciqlLogger.IciqlListener;\r
+import com.iciql.util.IciqlLogger.StatementType;\r
 import com.iciql.util.StringUtils;\r
+import com.iciql.util.Utils;\r
 \r
 /**\r
  * JUnit 4 iciql test suite.\r
@@ -66,7 +73,11 @@ import com.iciql.util.StringUtils;
  * this by switching the DEFAULT_TEST_DB value.\r
  * <p>\r
  * Alternatively, you can run this class an application which will run all tests\r
- * for all tested databases.\r
+ * for all tested database configurations.\r
+ * <p>\r
+ * NOTE: If you want to test against MySQL or PostgreSQL you must create an\r
+ * "iciql" database and allow user "sa" password "sa" complete control of that\r
+ * database.\r
  * \r
  */\r
 @RunWith(Suite.class)\r
@@ -75,29 +86,35 @@ import com.iciql.util.StringUtils;
                RuntimeQueryTest.class, SamplesTest.class, UpdateTest.class, UpgradesTest.class, UUIDTest.class })\r
 public class IciqlSuite {\r
 \r
-       private static final TestDb[] TEST_DBS = { new TestDb("H2 (embedded)", "jdbc:h2:mem:db{0,number,000}"),\r
-                       new TestDb("HSQL (embedded)", "jdbc:hsqldb:mem:db{0,number,000}"),\r
-                       new TestDb("Derby (embedded)", "jdbc:derby:memory:db{0,number,000};create=true"),\r
-                       new TestDb("MySQL (tcp/myisam)", "jdbc:mysql://localhost:3306/iciql"),\r
-                       new TestDb("PostgreSQL (tcp)", "jdbc:postgresql://localhost:5432/iciql")};\r
+       private static final TestDb[] TEST_DBS = {\r
+                       new TestDb("H2", true, true, "jdbc:h2:mem:iciql"),\r
+                       new TestDb("H2", true, false, "jdbc:h2:file:testdbs/h2/iciql"),\r
+                       new TestDb("HSQL", true, true, "jdbc:hsqldb:mem:iciql"),\r
+                       new TestDb("HSQL", true, false, "jdbc:hsqldb:file:testdbs/hsql/iciql"),\r
+                       new TestDb("Derby", true, true, "jdbc:derby:memory:iciql;create=true"),\r
+                       new TestDb("Derby", true, false, "jdbc:derby:directory:testdbs/derby/iciql;create=true"),\r
+                       new TestDb("MySQL", false, false, "jdbc:mysql://localhost:3306/iciql"),\r
+                       new TestDb("PostgreSQL", false, false, "jdbc:postgresql://localhost:5432/iciql") };\r
 \r
-       private static final TestDb DEFAULT_TEST_DB = TEST_DBS[4];\r
+       private static final TestDb DEFAULT_TEST_DB = TEST_DBS[0];\r
 \r
        private static final PrintStream ERR = System.err;\r
 \r
-       private static AtomicInteger openCount = new AtomicInteger(0);\r
-\r
        private static String username = "sa";\r
 \r
        private static String password = "sa";\r
 \r
        private static PrintStream out = System.out;\r
 \r
+       private static Map<String, PoolableConnectionFactory> connectionFactories = Utils.newSynchronizedHashMap();\r
+\r
+       private static Map<String, PoolingDataSource> dataSources = Utils.newSynchronizedHashMap();\r
+\r
        public static void assertStartsWith(String value, String startsWith) {\r
                Assert.assertTrue(MessageFormat.format("Expected \"{0}\", got: \"{1}\"", startsWith, value),\r
                                value.startsWith(startsWith));\r
        }\r
-       \r
+\r
        public static void assertEqualsIgnoreCase(String expected, String actual) {\r
                Assert.assertTrue(MessageFormat.format("Expected \"{0}\", got: \"{1}\"", expected, actual),\r
                                expected.equalsIgnoreCase(actual));\r
@@ -111,17 +128,30 @@ public class IciqlSuite {
        }\r
 \r
        /**\r
-        * Increment the database counter, open and create a new database.\r
+        * Open a new Db object. All connections are cached and re-used to eliminate\r
+        * embedded database startup costs.\r
         * \r
-        * @return a fresh database\r
+        * @return a fresh Db object\r
         */\r
        public static Db openNewDb() {\r
                String testUrl = System.getProperty("iciql.url");\r
                if (testUrl == null) {\r
                        testUrl = DEFAULT_TEST_DB.url;\r
                }\r
-               testUrl = MessageFormat.format(testUrl, openCount.incrementAndGet());\r
-               Db db = Db.open(testUrl, username, password);\r
+               Db db = null;\r
+               PoolingDataSource dataSource = dataSources.get(testUrl);\r
+               if (dataSource == null) {\r
+                       ConnectionFactory connectionFactory = new DriverManagerConnectionFactory(testUrl, username,\r
+                                       password);\r
+                       GenericObjectPool pool = new GenericObjectPool();\r
+                       pool.setWhenExhaustedAction(GenericObjectPool.WHEN_EXHAUSTED_GROW);\r
+                       PoolableConnectionFactory factory = new PoolableConnectionFactory(connectionFactory, pool, null,\r
+                                       null, false, true);\r
+                       dataSource = new PoolingDataSource(pool);\r
+                       dataSources.put(testUrl, dataSource);\r
+                       connectionFactories.put(testUrl, factory);\r
+               }\r
+               db = Db.open(dataSource);\r
 \r
                // drop tables\r
                db.dropTable(BooleanModel.class);\r
@@ -152,19 +182,9 @@ public class IciqlSuite {
                if (testUrl == null) {\r
                        testUrl = DEFAULT_TEST_DB.url;\r
                }\r
-               testUrl = MessageFormat.format(testUrl, openCount.get());\r
                return Db.open(testUrl, username, password);\r
        }\r
 \r
-       /**\r
-        * Drops all tables from the current database.\r
-        * \r
-        * @return the current database\r
-        */\r
-       public static void dropAllTables(Db db) {\r
-\r
-       }\r
-\r
        /**\r
         * Returns the name of the underlying database engine for the Db object.\r
         * \r
@@ -250,6 +270,8 @@ public class IciqlSuite {
                        System.setErr(out);\r
                }\r
 \r
+               deleteRecursively(new File("testdbs"));\r
+\r
                // Statement logging\r
                final FileWriter statementWriter;\r
                if (StringUtils.isNullOrEmpty(params.sqlStatementsFile)) {\r
@@ -257,9 +279,9 @@ public class IciqlSuite {
                } else {\r
                        statementWriter = new FileWriter(params.sqlStatementsFile);\r
                }\r
-               StatementListener statementListener = new StatementListener() {\r
+               IciqlListener statementListener = new IciqlListener() {\r
                        @Override\r
-                       public void logStatement(StatementType type, String statement) {\r
+                       public void logIciql(StatementType type, String statement) {\r
                                if (statementWriter == null) {\r
                                        return;\r
                                }\r
@@ -271,7 +293,7 @@ public class IciqlSuite {
                                }\r
                        }\r
                };\r
-               StatementLogger.registerListener(statementListener);\r
+               IciqlLogger.registerListener(statementListener);\r
 \r
                SuiteClasses suiteClasses = IciqlSuite.class.getAnnotation(SuiteClasses.class);\r
                long quickestDatabase = Long.MAX_VALUE;\r
@@ -280,7 +302,7 @@ public class IciqlSuite {
 \r
                // Header\r
                out.println(dividerMajor);\r
-               out.println(MessageFormat.format("{0} {1} ({2}) testing {3} databases", Constants.NAME,\r
+               out.println(MessageFormat.format("{0} {1} ({2}) testing {3} database configurations", Constants.NAME,\r
                                Constants.VERSION, Constants.VERSION_DATE, TEST_DBS.length));\r
                out.println(dividerMajor);\r
                out.println();\r
@@ -302,15 +324,15 @@ public class IciqlSuite {
                long lastCount = 0;\r
                for (TestDb testDb : TEST_DBS) {\r
                        out.println(dividerMinor);\r
-                       out.println("Testing " + testDb.name + " " + testDb.getVersion());\r
+                       out.println("Testing " + testDb.describeDatabase());\r
+                       out.println("        " + testDb.url);\r
                        out.println(dividerMinor);\r
 \r
                        // inject a database section delimiter in the statement log\r
                        if (statementWriter != null) {\r
                                statementWriter.append("\n\n");\r
                                statementWriter.append("# ").append(dividerMinor).append('\n');\r
-                               statementWriter.append("# ").append("Testing " + testDb.name + " " + testDb.getVersion())\r
-                                               .append('\n');\r
+                               statementWriter.append("# ").append("Testing " + testDb.describeDatabase()).append('\n');\r
                                statementWriter.append("# ").append(dividerMinor).append('\n');\r
                                statementWriter.append("\n\n");\r
                        }\r
@@ -318,6 +340,7 @@ public class IciqlSuite {
                        if (testDb.getVersion().equals("OFFLINE")) {\r
                                // Database not available\r
                                out.println("Skipping.  Could not find " + testDb.url);\r
+                               out.println();\r
                        } else {\r
                                // Test database\r
                                System.setProperty("iciql.url", testDb.url);\r
@@ -326,9 +349,9 @@ public class IciqlSuite {
                                if (testDb.runtime < quickestDatabase) {\r
                                        quickestDatabase = testDb.runtime;\r
                                }\r
-                               testDb.statements = StatementLogger.getTotalCount() - lastCount;\r
+                               testDb.statements = IciqlLogger.getTotalCount() - lastCount;\r
                                // reset total count for next database\r
-                               lastCount = StatementLogger.getTotalCount();\r
+                               lastCount = IciqlLogger.getTotalCount();\r
 \r
                                out.println(MessageFormat.format(\r
                                                "{0} tests ({1} failures, {2} ignores)  {3} statements in {4,number,0.000} secs",\r
@@ -356,36 +379,32 @@ public class IciqlSuite {
                                Constants.VERSION, Constants.VERSION_DATE));\r
                out.println(dividerMajor);\r
                List<TestDb> dbs = Arrays.asList(TEST_DBS);\r
-               Collections.sort(dbs, new Comparator<TestDb>() {\r
+               Collections.sort(dbs);\r
 \r
-                       @Override\r
-                       public int compare(TestDb o1, TestDb o2) {\r
-                               if (o1.runtime == 0) {\r
-                                       return 1;\r
-                               }\r
-                               if (o2.runtime == 0) {\r
-                                       return -1;\r
-                               }\r
-                               if (o1.runtime == o2.runtime) {\r
-                                       return 0;\r
-                               }\r
-                               if (o1.runtime > o2.runtime) {\r
-                                       return 1;\r
-                               }\r
-                               return -1;\r
-                       }\r
-               });\r
+               out.println(MessageFormat.format("{0} {1} {2} {3} {4}", StringUtils.pad("Name", 11, " ", true),\r
+                               StringUtils.pad("Type", 5, " ", true), StringUtils.pad("Version", 23, " ", true),\r
+                               StringUtils.pad("Stats/Sec", 10, " ", true), "Runtime"));\r
+               out.println(dividerMinor);\r
                for (TestDb testDb : dbs) {\r
-                       out.println(MessageFormat.format(\r
-                                       "{0} {1}  {2,number,0} stats/sec  {3,number,0.000} secs  ({4,number,0.0}x)",\r
-                                       StringUtils.pad(testDb.name, 20, " ", true),\r
-                                       StringUtils.pad(testDb.getVersion(), 22, " ", true), ((double) testDb.statements)\r
-                                                       / (testDb.runtime / 1000d), testDb.runtime / 1000f, ((double) testDb.runtime)\r
+                       DecimalFormat df = new DecimalFormat("0.0");\r
+                       out.println(MessageFormat.format("{0} {1} {2}   {3} {4} {5}s  ({6,number,0.0}x)",\r
+                                       StringUtils.pad(testDb.name, 11, " ", true), testDb.isEmbedded ? "E" : "T",\r
+                                       testDb.isMemory ? "M" : "F", StringUtils.pad(testDb.getVersion(), 21, " ", true),\r
+                                       StringUtils.pad("" + testDb.getStatementRate(), 10, " ", false),\r
+                                       StringUtils.pad(df.format(testDb.getRuntime()), 8, " ", false), ((double) testDb.runtime)\r
                                                        / quickestDatabase));\r
                }\r
-\r
-               // close PrintStream and restore System.err\r
-               StatementLogger.unregisterListener(statementListener);\r
+               out.println(dividerMinor);\r
+               out.println("  E = embedded connection");\r
+               out.println("  T = tcp/ip connection");\r
+               out.println("  M = memory database");\r
+               out.println("  F = file/persistent database");\r
+\r
+               // cleanup\r
+               for (PoolableConnectionFactory factory : connectionFactories.values()) {\r
+                       factory.getPool().close();\r
+               }\r
+               IciqlLogger.unregisterListener(statementListener);\r
                out.close();\r
                System.setErr(ERR);\r
                if (statementWriter != null) {\r
@@ -425,21 +444,52 @@ public class IciqlSuite {
                return sb.toString();\r
        }\r
 \r
+       private static void deleteRecursively(File f) {\r
+               if (f.isDirectory()) {\r
+                       for (File file : f.listFiles()) {\r
+                               if (file.isDirectory()) {\r
+                                       deleteRecursively(file);\r
+                               }\r
+                               file.delete();\r
+                       }\r
+               }\r
+               f.delete();\r
+       }\r
+\r
        /**\r
         * Represents a test database url.\r
         */\r
-       private static class TestDb {\r
+       private static class TestDb implements Comparable<TestDb> {\r
                final String name;\r
+               boolean isEmbedded;\r
+               boolean isMemory;\r
                final String url;\r
                String version;\r
                long runtime;\r
                long statements;\r
 \r
-               TestDb(String name, String url) {\r
+               TestDb(String name, boolean isEmbedded, boolean isMemory, String url) {\r
                        this.name = name;\r
+                       this.isEmbedded = isEmbedded;\r
+                       this.isMemory = isMemory;\r
                        this.url = url;\r
                }\r
 \r
+               double getRuntime() {\r
+                       return runtime / 1000d;\r
+               }\r
+\r
+               int getStatementRate() {\r
+                       return Double.valueOf(((double) statements) / (runtime / 1000d)).intValue();\r
+               }\r
+\r
+               String describeDatabase() {\r
+                       StringBuilder sb = new StringBuilder(name);\r
+                       sb.append(" ");\r
+                       sb.append(getVersion());\r
+                       return sb.toString();\r
+               }\r
+\r
                String getVersion() {\r
                        if (version == null) {\r
                                try {\r
@@ -453,6 +503,25 @@ public class IciqlSuite {
                        }\r
                        return version;\r
                }\r
+\r
+               @Override\r
+               public int compareTo(TestDb o) {\r
+                       if (runtime == 0) {\r
+                               return 1;\r
+                       }\r
+                       if (o.runtime == 0) {\r
+                               return -1;\r
+                       }\r
+                       int r1 = getStatementRate();\r
+                       int r2 = o.getStatementRate();\r
+                       if (r1 == r2) {\r
+                               return 0;\r
+                       }\r
+                       if (r1 < r2) {\r
+                               return 1;\r
+                       }\r
+                       return -1;\r
+               }\r
        }\r
 \r
        /**\r