Author: jgbutler Date: Mon Mar 31 15:20:05 2008 New Revision: 643182 URL: http://svn.apache.org/viewvc?rev=643182&view=rev Log: Abator: handle unsupported data types better
Modified: ibatis/trunk/java/mapper/mapper2/tools/abator/core/build/version.properties ibatis/trunk/java/mapper/mapper2/tools/abator/core/doc/ReleaseNotes.txt ibatis/trunk/java/mapper/mapper2/tools/abator/core/src/org/apache/ibatis/abator/internal/db/DatabaseIntrospector.java ibatis/trunk/java/mapper/mapper2/tools/abator/core/src/org/apache/ibatis/abator/internal/java/model/JavaModelGeneratorJava2Impl.java ibatis/trunk/java/mapper/mapper2/tools/abator/core/src/org/apache/ibatis/abator/internal/types/JavaTypeResolverDefaultImpl.java ibatis/trunk/java/mapper/mapper2/tools/abator/core/src/org/apache/ibatis/abator/internal/util/messages/messages.properties Modified: ibatis/trunk/java/mapper/mapper2/tools/abator/core/build/version.properties URL: http://svn.apache.org/viewvc/ibatis/trunk/java/mapper/mapper2/tools/abator/core/build/version.properties?rev=643182&r1=643181&r2=643182&view=diff ============================================================================== --- ibatis/trunk/java/mapper/mapper2/tools/abator/core/build/version.properties (original) +++ ibatis/trunk/java/mapper/mapper2/tools/abator/core/build/version.properties Mon Mar 31 15:20:05 2008 @@ -1,4 +1,4 @@ #Abator build version info -#Thu Mar 20 19:55:36 CDT 2008 +#Mon Mar 31 17:14:36 CDT 2008 version=1.1.0 -buildNum=426 +buildNum=428 Modified: ibatis/trunk/java/mapper/mapper2/tools/abator/core/doc/ReleaseNotes.txt URL: http://svn.apache.org/viewvc/ibatis/trunk/java/mapper/mapper2/tools/abator/core/doc/ReleaseNotes.txt?rev=643182&r1=643181&r2=643182&view=diff ============================================================================== --- ibatis/trunk/java/mapper/mapper2/tools/abator/core/doc/ReleaseNotes.txt (original) +++ ibatis/trunk/java/mapper/mapper2/tools/abator/core/doc/ReleaseNotes.txt Mon Mar 31 15:20:05 2008 @@ -1,4 +1,10 @@ ------------------------------------------------------------------------------- +Version 1.1.1: +Bugs - +1. When unsupported data type, allow chance to override. Otherwise, default + to Object Java type and OTHER JDBC type + +------------------------------------------------------------------------------- Version 1.1.0: Bugs - 1. corner case where the new "by example" methods fail if a criteria Modified: ibatis/trunk/java/mapper/mapper2/tools/abator/core/src/org/apache/ibatis/abator/internal/db/DatabaseIntrospector.java URL: http://svn.apache.org/viewvc/ibatis/trunk/java/mapper/mapper2/tools/abator/core/src/org/apache/ibatis/abator/internal/db/DatabaseIntrospector.java?rev=643182&r1=643181&r2=643182&view=diff ============================================================================== --- ibatis/trunk/java/mapper/mapper2/tools/abator/core/src/org/apache/ibatis/abator/internal/db/DatabaseIntrospector.java (original) +++ ibatis/trunk/java/mapper/mapper2/tools/abator/core/src/org/apache/ibatis/abator/internal/db/DatabaseIntrospector.java Mon Mar 31 15:20:05 2008 @@ -248,12 +248,25 @@ try { javaTypeResolver.initializeResolvedJavaType(cd); } catch (UnsupportedDataTypeException e) { - // if the type is not supported, then we'll report a warning and - // ignore the column - warnings.add(Messages.getString("Warning.14", //$NON-NLS-1$ + boolean warn = true; + if (tc.isColumnIgnored(cd.getActualColumnName())) { + warn = false; + } + + ColumnOverride co = tc.getColumnOverride(cd.getActualColumnName()); + if (co != null) { + if (StringUtility.stringHasValue(co.getJavaType()) + && StringUtility.stringHasValue(co.getJavaType())) { + warn = false; + } + } + + // if the type is not supported, then we'll report a warning + if (warn) { + warnings.add(Messages.getString("Warning.24", //$NON-NLS-1$ entry.getKey().toString(), cd.getActualColumnName())); - tableColumns.remove(); + } } } } Modified: ibatis/trunk/java/mapper/mapper2/tools/abator/core/src/org/apache/ibatis/abator/internal/java/model/JavaModelGeneratorJava2Impl.java URL: http://svn.apache.org/viewvc/ibatis/trunk/java/mapper/mapper2/tools/abator/core/src/org/apache/ibatis/abator/internal/java/model/JavaModelGeneratorJava2Impl.java?rev=643182&r1=643181&r2=643182&view=diff ============================================================================== --- ibatis/trunk/java/mapper/mapper2/tools/abator/core/src/org/apache/ibatis/abator/internal/java/model/JavaModelGeneratorJava2Impl.java (original) +++ ibatis/trunk/java/mapper/mapper2/tools/abator/core/src/org/apache/ibatis/abator/internal/java/model/JavaModelGeneratorJava2Impl.java Mon Mar 31 15:20:05 2008 @@ -1516,22 +1516,6 @@ } // Ashok's enhancement for checking parent classes... - protected Class loadRootClass(IntrospectedTable introspectedTable) { - Class clazz = null; - - String rootClass = getRootClass(introspectedTable); - - if (rootClass != null) { - try { - clazz = Class.forName(rootClass); - } catch (Exception e) { - warnings.add(Messages.getString("Warning.20", rootClass)); //$NON-NLS-1$ - } - } - - return clazz; - } - protected PropertyDescriptor[] getRootClassPropertyDescriptors(String rootClass) { if (rootClass == null) { return null; Modified: ibatis/trunk/java/mapper/mapper2/tools/abator/core/src/org/apache/ibatis/abator/internal/types/JavaTypeResolverDefaultImpl.java URL: http://svn.apache.org/viewvc/ibatis/trunk/java/mapper/mapper2/tools/abator/core/src/org/apache/ibatis/abator/internal/types/JavaTypeResolverDefaultImpl.java?rev=643182&r1=643181&r2=643182&view=diff ============================================================================== --- ibatis/trunk/java/mapper/mapper2/tools/abator/core/src/org/apache/ibatis/abator/internal/types/JavaTypeResolverDefaultImpl.java (original) +++ ibatis/trunk/java/mapper/mapper2/tools/abator/core/src/org/apache/ibatis/abator/internal/types/JavaTypeResolverDefaultImpl.java Mon Mar 31 15:20:05 2008 @@ -228,7 +228,10 @@ break; default: - throw new UnsupportedDataTypeException(); + type.setJdbcTypeName("OTHER"); //$NON-NLS-1$ + type.setFullyQualifiedJavaType(new FullyQualifiedJavaType(Object.class.getName())); + cd.setResolvedJavaType(type); + throw new UnsupportedDataTypeException(); } cd.setResolvedJavaType(type); Modified: ibatis/trunk/java/mapper/mapper2/tools/abator/core/src/org/apache/ibatis/abator/internal/util/messages/messages.properties URL: http://svn.apache.org/viewvc/ibatis/trunk/java/mapper/mapper2/tools/abator/core/src/org/apache/ibatis/abator/internal/util/messages/messages.properties?rev=643182&r1=643181&r2=643182&view=diff ============================================================================== --- ibatis/trunk/java/mapper/mapper2/tools/abator/core/src/org/apache/ibatis/abator/internal/util/messages/messages.properties (original) +++ ibatis/trunk/java/mapper/mapper2/tools/abator/core/src/org/apache/ibatis/abator/internal/util/messages/messages.properties Mon Mar 31 15:20:05 2008 @@ -61,6 +61,7 @@ Warning.21=Property {0} exists in root class {1}, but is not of type {2}. Abator will generate the property. Warning.22=Property {0} exists in root class {1}, but does not have a getter. Abator will generate the property. Warning.23=Property {0} exists in root class {1}, but does not have a setter. Abator will generate the property. +Warning.24=Unsupported Data Type in table {0}, column: {1}, property defaults to Object type. Progress.0=Connecting to the Database Progress.1=Introspecting table {0}