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}


Reply via email to