Author: jgbutler
Date: Wed Apr 22 18:46:35 2009
New Revision: 767614
URL: http://svn.apache.org/viewvc?rev=767614&view=rev
Log:
[Ibator] Fixed addCriterionfor JDBC* methods so that they all do a null check
Modified:
ibatis/trunk/java/tools/ibator/core/build/version.properties
ibatis/trunk/java/tools/ibator/core/doc/ReleaseNotes.txt
ibatis/trunk/java/tools/ibator/core/htmldoc/whatsNew.html
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/api/IntrospectedTable.java
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/generator/ibatis2/model/ExampleGenerator.java
Modified: ibatis/trunk/java/tools/ibator/core/build/version.properties
URL:
http://svn.apache.org/viewvc/ibatis/trunk/java/tools/ibator/core/build/version.properties?rev=767614&r1=767613&r2=767614&view=diff
==============================================================================
--- ibatis/trunk/java/tools/ibator/core/build/version.properties (original)
+++ ibatis/trunk/java/tools/ibator/core/build/version.properties Wed Apr 22
18:46:35 2009
@@ -1,4 +1,4 @@
#Ibator build version info
-#Sun Apr 12 16:33:15 CDT 2009
+#Wed Apr 22 12:17:30 CDT 2009
version=1.2.2
-buildNum=726
+buildNum=727
Modified: ibatis/trunk/java/tools/ibator/core/doc/ReleaseNotes.txt
URL:
http://svn.apache.org/viewvc/ibatis/trunk/java/tools/ibator/core/doc/ReleaseNotes.txt?rev=767614&r1=767613&r2=767614&view=diff
==============================================================================
--- ibatis/trunk/java/tools/ibator/core/doc/ReleaseNotes.txt (original)
+++ ibatis/trunk/java/tools/ibator/core/doc/ReleaseNotes.txt Wed Apr 22
18:46:35 2009
@@ -25,6 +25,7 @@
columnOverrides (thanks to Dan Turkenkopf for the idea and a nice initial
patch)
10. Gather column comments during introspection
11. IBATIS-592 - Additional attributes for SqlMaps
+12. Fixed addCriterionfor JDBC* methods so that they all do a null check
-------------------------------------------------------------------------------
Version 1.2.1:
Modified: ibatis/trunk/java/tools/ibator/core/htmldoc/whatsNew.html
URL:
http://svn.apache.org/viewvc/ibatis/trunk/java/tools/ibator/core/htmldoc/whatsNew.html?rev=767614&r1=767613&r2=767614&view=diff
==============================================================================
--- ibatis/trunk/java/tools/ibator/core/htmldoc/whatsNew.html (original)
+++ ibatis/trunk/java/tools/ibator/core/htmldoc/whatsNew.html Wed Apr 22
18:46:35 2009
@@ -96,6 +96,7 @@
<li>IBATIS-592 - Added attributes to IntrospectedTable that contain the
calculated
SqlMap namespace, and the calculated runtime table names. These can now
be overridden in
plugins.</li>
+ <li>Fixed addCriterionfor JDBC* methods so that they all do a null
check.</li>
</ul>
<h2>Version 1.2.1</h2>
Modified:
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/api/IntrospectedTable.java
URL:
http://svn.apache.org/viewvc/ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/api/IntrospectedTable.java?rev=767614&r1=767613&r2=767614&view=diff
==============================================================================
---
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/api/IntrospectedTable.java
(original)
+++
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/api/IntrospectedTable.java
Wed Apr 22 18:46:35 2009
@@ -507,22 +507,22 @@
}
public void initialize() {
- calculateDAOImplementationPackage();
- calculateDAOInterfacePackage();
- calculateDAOImplementationType();
- calculateDAOInterfaceType();
-
- calculateJavaModelPackage();
- calculatePrimaryKeyType();
- calculateBaseRecordType();
- calculateRecordWithBLOBsType();
- calculateExampleType();
-
- calculateSqlMapPackage();
- calculateSqlMapFileName();
- calculateSqlMapNamespace();
- calculateSqlMapFullyQualifiedRuntimeTableName();
- calculateSqlMapAliasedFullyQualifiedRuntimeTableName();
+ setDAOImplementationPackage(calculateDAOImplementationPackage());
+ setDAOInterfacePackage(calculateDAOInterfacePackage());
+ setDAOImplementationType(calculateDAOImplementationType());
+ setDAOInterfaceType(calculateDAOInterfaceType());
+
+ setJavaModelPackage(calculateJavaModelPackage());
+ setPrimaryKeyType(calculatePrimaryKeyType());
+ setBaseRecordType(calculateBaseRecordType());
+ setRecordWithBLOBsType(calculateRecordWithBLOBsType());
+ setExampleType(calculateExampleType());
+
+ setSqlMapPackage(calculateSqlMapPackage());
+ setSqlMapFileName(calculateSqlMapFileName());
+ setSqlMapNamespace(calculateSqlMapNamespace());
+
setSqlMapFullyQualifiedRuntimeTableName(calculateSqlMapFullyQualifiedRuntimeTableName());
+
setSqlMapAliasedFullyQualifiedRuntimeTableName(calculateSqlMapAliasedFullyQualifiedRuntimeTableName());
if (tableConfiguration.getModelType() == ModelType.HIERARCHICAL) {
rules = new HierarchicalModelRules(this);
@@ -535,10 +535,10 @@
ibatorContext.getPlugins().initialized(this);
}
- protected void calculateDAOImplementationPackage() {
+ protected String calculateDAOImplementationPackage() {
DAOGeneratorConfiguration config =
ibatorContext.getDaoGeneratorConfiguration();
if (config == null) {
- return;
+ return null;
}
StringBuilder sb = new StringBuilder();
@@ -551,13 +551,13 @@
sb.append(fullyQualifiedTable.getSubPackage());
}
- setAttribute(ATTR_DAO_IMPLEMENTATION_PACKAGE, sb.toString());
+ return sb.toString();
}
- protected void calculateDAOInterfacePackage() {
+ protected String calculateDAOInterfacePackage() {
DAOGeneratorConfiguration config =
ibatorContext.getDaoGeneratorConfiguration();
if (config == null) {
- return;
+ return null;
}
StringBuilder sb = new StringBuilder();
@@ -566,12 +566,12 @@
sb.append(fullyQualifiedTable.getSubPackage());
}
- setAttribute(ATTR_DAO_INTERFACE_PACKAGE, sb.toString());
+ return sb.toString();
}
- protected void calculateDAOImplementationType() {
+ protected FullyQualifiedJavaType calculateDAOImplementationType() {
if (ibatorContext.getDaoGeneratorConfiguration() == null) {
- return;
+ return null;
}
StringBuilder sb = new StringBuilder();
@@ -581,13 +581,12 @@
sb.append("DAOImpl"); //$NON-NLS-1$
FullyQualifiedJavaType fqjt = new
FullyQualifiedJavaType(sb.toString());
-
- setAttribute(ATTR_DAO_IMPLEMENTATION_TYPE, fqjt);
+ return fqjt;
}
- protected void calculateDAOInterfaceType() {
+ protected FullyQualifiedJavaType calculateDAOInterfaceType() {
if (ibatorContext.getDaoGeneratorConfiguration() == null) {
- return;
+ return null;
}
StringBuilder sb = new StringBuilder();
@@ -597,11 +596,10 @@
sb.append("DAO"); //$NON-NLS-1$
FullyQualifiedJavaType fqjt = new
FullyQualifiedJavaType(sb.toString());
-
- setAttribute(ATTR_DAO_INTERFACE_TYPE, fqjt);
+ return fqjt;
}
- protected void calculateJavaModelPackage() {
+ protected String calculateJavaModelPackage() {
JavaModelGeneratorConfiguration config =
ibatorContext.getJavaModelGeneratorConfiguration();
StringBuilder sb = new StringBuilder();
@@ -610,10 +608,10 @@
sb.append(fullyQualifiedTable.getSubPackage());
}
- setAttribute(ATTR_JAVA_MODEL_PACKAGE, sb.toString());
+ return sb.toString();
}
- protected void calculatePrimaryKeyType() {
+ protected FullyQualifiedJavaType calculatePrimaryKeyType() {
StringBuilder sb = new StringBuilder();
sb.append(getJavaModelPackage());
sb.append('.');
@@ -621,22 +619,20 @@
sb.append("Key"); //$NON-NLS-1$
FullyQualifiedJavaType fqjt = new
FullyQualifiedJavaType(sb.toString());
-
- setAttribute(ATTR_PRIMARY_KEY_TYPE, fqjt);
+ return fqjt;
}
- protected void calculateBaseRecordType() {
+ protected FullyQualifiedJavaType calculateBaseRecordType() {
StringBuilder sb = new StringBuilder();
sb.append(getJavaModelPackage());
sb.append('.');
sb.append(fullyQualifiedTable.getDomainObjectName());
FullyQualifiedJavaType fqjt = new
FullyQualifiedJavaType(sb.toString());
-
- setAttribute(ATTR_BASE_RECORD_TYPE, fqjt);
+ return fqjt;
}
- protected void calculateRecordWithBLOBsType() {
+ protected FullyQualifiedJavaType calculateRecordWithBLOBsType() {
StringBuilder sb = new StringBuilder();
sb.append(getJavaModelPackage());
sb.append('.');
@@ -644,11 +640,10 @@
sb.append("WithBLOBs"); //$NON-NLS-1$
FullyQualifiedJavaType fqjt = new
FullyQualifiedJavaType(sb.toString());
-
- setAttribute(ATTR_RECORD_WITH_BLOBS_TYPE, fqjt);
+ return fqjt;
}
- protected void calculateExampleType() {
+ protected FullyQualifiedJavaType calculateExampleType() {
StringBuilder sb = new StringBuilder();
sb.append(getJavaModelPackage());
sb.append('.');
@@ -656,41 +651,36 @@
sb.append("Example"); //$NON-NLS-1$
FullyQualifiedJavaType fqjt = new
FullyQualifiedJavaType(sb.toString());
-
- setAttribute(ATTR_EXAMPLE_TYPE, fqjt);
+ return fqjt;
}
- protected void calculateSqlMapPackage() {
+ protected String calculateSqlMapPackage() {
SqlMapGeneratorConfiguration config =
ibatorContext.getSqlMapGeneratorConfiguration();
StringBuilder sb = new StringBuilder(config.getTargetPackage());
if
(StringUtility.isTrue(config.getProperty(PropertyRegistry.ANY_ENABLE_SUB_PACKAGES)))
{
sb.append(fullyQualifiedTable.getSubPackage());
}
-
- setAttribute(ATTR_SQL_MAP_PACKAGE, sb.toString());;
+ return sb.toString();
}
- protected void calculateSqlMapFileName() {
+ protected String calculateSqlMapFileName() {
StringBuilder sb = new StringBuilder();
sb.append(fullyQualifiedTable.getSqlMapNamespace());
sb.append("_SqlMap.xml"); //$NON-NLS-1$
-
- setAttribute(ATTR_SQL_MAP_FILE_NAME, sb.toString());
+ return sb.toString();
}
- protected void calculateSqlMapNamespace() {
- setAttribute(ATTR_SQL_MAP_NAMESPACE,
fullyQualifiedTable.getSqlMapNamespace());
+ protected String calculateSqlMapNamespace() {
+ return fullyQualifiedTable.getSqlMapNamespace();
}
- protected void calculateSqlMapFullyQualifiedRuntimeTableName() {
- setAttribute(ATTR_SQL_MAP_FULLY_QUALIFIED_TABLE_NAME_AT_RUNTIME,
- fullyQualifiedTable.getFullyQualifiedTableNameAtRuntime());
+ protected String calculateSqlMapFullyQualifiedRuntimeTableName() {
+ return fullyQualifiedTable.getFullyQualifiedTableNameAtRuntime();
}
- protected void calculateSqlMapAliasedFullyQualifiedRuntimeTableName() {
-
setAttribute(ATTR_SQL_MAP_ALIASED_FULLY_QUALIFIED_TABLE_NAME_AT_RUNTIME,
-
fullyQualifiedTable.getAliasedFullyQualifiedTableNameAtRuntime());
+ protected String calculateSqlMapAliasedFullyQualifiedRuntimeTableName() {
+ return
fullyQualifiedTable.getAliasedFullyQualifiedTableNameAtRuntime();
}
public String getFullyQualifiedTableNameAtRuntime() {
@@ -761,4 +751,62 @@
public TableConfiguration getTableConfiguration() {
return tableConfiguration;
}
+
+ public void setDAOImplementationPackage(String DAOImplementationPackage) {
+ setAttribute(ATTR_DAO_IMPLEMENTATION_PACKAGE,
DAOImplementationPackage);
+ }
+
+ public void setDAOInterfacePackage(String DAOInterfacePackage) {
+ setAttribute(ATTR_DAO_INTERFACE_PACKAGE, DAOInterfacePackage);
+ }
+
+ public void setDAOImplementationType(FullyQualifiedJavaType
DAOImplementationType) {
+ setAttribute(ATTR_DAO_IMPLEMENTATION_TYPE, DAOImplementationType);
+ }
+
+ public void setDAOInterfaceType(FullyQualifiedJavaType DAOInterfaceType) {
+ setAttribute(ATTR_DAO_INTERFACE_TYPE, DAOInterfaceType);
+ }
+
+ public void setJavaModelPackage(String javaModelPackage) {
+ setAttribute(ATTR_JAVA_MODEL_PACKAGE, javaModelPackage);
+ }
+
+ public void setPrimaryKeyType(FullyQualifiedJavaType primaryKeyType) {
+ setAttribute(ATTR_PRIMARY_KEY_TYPE, primaryKeyType);
+ }
+
+ public void setBaseRecordType(FullyQualifiedJavaType baseRecordType) {
+ setAttribute(ATTR_BASE_RECORD_TYPE, baseRecordType);
+ }
+
+ public void setRecordWithBLOBsType(FullyQualifiedJavaType
recordWithBLOBsType) {
+ setAttribute(ATTR_RECORD_WITH_BLOBS_TYPE, recordWithBLOBsType);
+ }
+
+ public void setExampleType(FullyQualifiedJavaType exampleType) {
+ setAttribute(ATTR_EXAMPLE_TYPE, exampleType);
+ }
+
+ public void setSqlMapPackage(String sqlMapPackage) {
+ setAttribute(ATTR_SQL_MAP_PACKAGE, sqlMapPackage);
+ }
+
+ public void setSqlMapFileName(String sqlMapFileName) {
+ setAttribute(ATTR_SQL_MAP_FILE_NAME, sqlMapFileName);
+ }
+
+ public void setSqlMapNamespace(String sqlMapNamespace) {
+ setAttribute(ATTR_SQL_MAP_NAMESPACE, sqlMapNamespace);
+ }
+
+ public void setSqlMapFullyQualifiedRuntimeTableName(String
fullyQualifiedRuntimeTableName) {
+ setAttribute(ATTR_SQL_MAP_FULLY_QUALIFIED_TABLE_NAME_AT_RUNTIME,
+ fullyQualifiedRuntimeTableName);
+ }
+
+ public void setSqlMapAliasedFullyQualifiedRuntimeTableName(String
aliasedFullyQualifiedRuntimeTableName) {
+
setAttribute(ATTR_SQL_MAP_ALIASED_FULLY_QUALIFIED_TABLE_NAME_AT_RUNTIME,
+ aliasedFullyQualifiedRuntimeTableName);
+ }
}
Modified:
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/generator/ibatis2/model/ExampleGenerator.java
URL:
http://svn.apache.org/viewvc/ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/generator/ibatis2/model/ExampleGenerator.java?rev=767614&r1=767613&r2=767614&view=diff
==============================================================================
---
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/generator/ibatis2/model/ExampleGenerator.java
(original)
+++
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/generator/ibatis2/model/ExampleGenerator.java
Wed Apr 22 18:46:35 2009
@@ -482,6 +482,10 @@
.getDateInstance(), "value")); //$NON-NLS-1$
method.addParameter(new Parameter(FullyQualifiedJavaType
.getStringInstance(), "property")); //$NON-NLS-1$
+ method.addBodyLine("if (value == null) {"); //$NON-NLS-1$
+ method
+ .addBodyLine("throw new RuntimeException(\"Value for \" +
property + \" cannot be null\");"); //$NON-NLS-1$
+ method.addBodyLine("}"); //$NON-NLS-1$
method
.addBodyLine("addCriterion(condition, new
java.sql.Date(value.getTime()), property);"); //$NON-NLS-1$
answer.addMethod(method);
@@ -548,6 +552,10 @@
.getDateInstance(), "value")); //$NON-NLS-1$
method.addParameter(new Parameter(FullyQualifiedJavaType
.getStringInstance(), "property")); //$NON-NLS-1$
+ method.addBodyLine("if (value == null) {"); //$NON-NLS-1$
+ method
+ .addBodyLine("throw new RuntimeException(\"Value for \" +
property + \" cannot be null\");"); //$NON-NLS-1$
+ method.addBodyLine("}"); //$NON-NLS-1$
method
.addBodyLine("addCriterion(condition, new
java.sql.Time(value.getTime()), property);"); //$NON-NLS-1$
answer.addMethod(method);