Author: jgbutler
Date: Wed May 13 20:40:34 2009
New Revision: 774520

URL: http://svn.apache.org/viewvc?rev=774520&view=rev
Log:
[Ibator] Fix for IBATIS-601 - improper validation of <generatedKey>.  Also took 
the opportunity to improve validation in several other places.

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/IbatorRunner.java
    
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/config/ColumnOverride.java
    
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/config/ColumnRenamingRule.java
    
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/config/DAOGeneratorConfiguration.java
    
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/config/GeneratedKey.java
    
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/config/IbatorConfiguration.java
    
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/config/IbatorContext.java
    
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/config/IgnoredColumn.java
    
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/config/JavaModelGeneratorConfiguration.java
    
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/config/SqlMapGeneratorConfiguration.java
    
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/config/TableConfiguration.java
    
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/internal/util/messages/messages.properties

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=774520&r1=774519&r2=774520&view=diff
==============================================================================
--- ibatis/trunk/java/tools/ibator/core/build/version.properties (original)
+++ ibatis/trunk/java/tools/ibator/core/build/version.properties Wed May 13 
20:40:34 2009
@@ -1,4 +1,4 @@
 #Ibator build version info
-#Tue Apr 28 18:50:09 CDT 2009
+#Wed May 13 15:35:15 CDT 2009
 version=1.2.2
-buildNum=729
+buildNum=732

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=774520&r1=774519&r2=774520&view=diff
==============================================================================
--- ibatis/trunk/java/tools/ibator/core/doc/ReleaseNotes.txt (original)
+++ ibatis/trunk/java/tools/ibator/core/doc/ReleaseNotes.txt Wed May 13 
20:40:34 2009
@@ -10,6 +10,7 @@
    across lines
 3. Fixed NPE and incorrect calculation in generated equals when certain
    fields are null - thanks to Benjamin Klatt for finding this bug
+4. Fixed IBATIS-601 - improper validation of <generatedKey>
 
 Enhancements:
 1. IBATIS-569 - Make it easier to override IbatorRules in plugins

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=774520&r1=774519&r2=774520&view=diff
==============================================================================
--- ibatis/trunk/java/tools/ibator/core/htmldoc/whatsNew.html (original)
+++ ibatis/trunk/java/tools/ibator/core/htmldoc/whatsNew.html Wed May 13 
20:40:34 2009
@@ -53,7 +53,7 @@
   <li>Fixed NPE and incorrect calculation in generated equals method
       (from EqualsHashCodePlugin) when certain
       fields are null - thanks to Benjamin Klatt for finding this bug.</li>
-
+  <li>IBATIS-601 - improper validation of &lt;generatedKey&gt;</li>
 </ul>
 
 <h3>Enhancements</h3>

Modified: 
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/api/IbatorRunner.java
URL: 
http://svn.apache.org/viewvc/ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/api/IbatorRunner.java?rev=774520&r1=774519&r2=774520&view=diff
==============================================================================
--- 
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/api/IbatorRunner.java
 (original)
+++ 
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/api/IbatorRunner.java
 Wed May 13 20:40:34 2009
@@ -46,6 +46,8 @@
     private static final String TABLES = "-tables"; //$NON-NLS-1$
     private static final String VERBOSE = "-verbose"; //$NON-NLS-1$
     private static final String FORCE_JAVA_LOGGING = "-forceJavaLogging"; 
//$NON-NLS-1$
+    private static final String HELP_1 = "-?"; //$NON-NLS-1$
+    private static final String HELP_2 = "-h"; //$NON-NLS-1$
 
        public static void main(String[] args) {
         if (args.length == 0) {
@@ -56,6 +58,12 @@
                
         Map<String, String> arguments = parseCommandLine(args);
         
+        if (arguments.containsKey(HELP_1)) {
+            usage();
+            System.exit(0);
+            return;  // only to satisfy compiler, never returns
+        }
+        
         if (!arguments.containsKey(CONFIG_FILE)) {
             writeLine(Messages.getString("RuntimeError.0")); //$NON-NLS-1$
             return;
@@ -176,6 +184,12 @@
                 arguments.put(OVERWRITE, "Y"); //$NON-NLS-1$
             } else if (VERBOSE.equalsIgnoreCase(args[i])) {
                 arguments.put(VERBOSE, "Y"); //$NON-NLS-1$
+            } else if (HELP_1.equalsIgnoreCase(args[i])) {
+                arguments.put(HELP_1, "Y"); //$NON-NLS-1$
+            } else if (HELP_2.equalsIgnoreCase(args[i])) {
+                // put HELP_1 in the map here too - so we only
+                // have to check for one entry in the mainline
+                arguments.put(HELP_1, "Y"); //$NON-NLS-1$
             } else if (FORCE_JAVA_LOGGING.equalsIgnoreCase(args[i])) {
                 LogFactory.forceJavaLogging();
             } else if (CONTEXT_IDS.equalsIgnoreCase(args[i])) {

Modified: 
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/config/ColumnOverride.java
URL: 
http://svn.apache.org/viewvc/ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/config/ColumnOverride.java?rev=774520&r1=774519&r2=774520&view=diff
==============================================================================
--- 
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/config/ColumnOverride.java
 (original)
+++ 
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/config/ColumnOverride.java
 Wed May 13 20:40:34 2009
@@ -15,9 +15,12 @@
  */
 package org.apache.ibatis.ibator.config;
 
+import java.util.List;
+
 import org.apache.ibatis.ibator.api.dom.xml.Attribute;
 import org.apache.ibatis.ibator.api.dom.xml.XmlElement;
 import org.apache.ibatis.ibator.internal.util.StringUtility;
+import org.apache.ibatis.ibator.internal.util.messages.Messages;
 
 /**
  * @author Jeff Butler
@@ -122,4 +125,11 @@
         
         configuredDelimitedColumnName = isColumnNameDelimited ? "true" : 
"false"; //$NON-NLS-1$ //$NON-NLS-2$
     }
+    
+    public void validate(List<String> errors, String tableName) {
+        if (!StringUtility.stringHasValue(columnName)) {
+            errors.add(Messages.getString("ValidationError.22",  //$NON-NLS-1$
+                tableName));
+        }
+    }
 }

Modified: 
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/config/ColumnRenamingRule.java
URL: 
http://svn.apache.org/viewvc/ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/config/ColumnRenamingRule.java?rev=774520&r1=774519&r2=774520&view=diff
==============================================================================
--- 
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/config/ColumnRenamingRule.java
 (original)
+++ 
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/config/ColumnRenamingRule.java
 Wed May 13 20:40:34 2009
@@ -73,9 +73,9 @@
         this.searchString = searchString;
     }
     
-    public void validate(List<String> errors) {
+    public void validate(List<String> errors, String tableName) {
         if (!StringUtility.stringHasValue(searchString)) {
-            errors.add(Messages.getString("ValidationError.14")); //$NON-NLS-1$
+            errors.add(Messages.getString("ValidationError.14", tableName)); 
//$NON-NLS-1$
         }
     }
     

Modified: 
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/config/DAOGeneratorConfiguration.java
URL: 
http://svn.apache.org/viewvc/ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/config/DAOGeneratorConfiguration.java?rev=774520&r1=774519&r2=774520&view=diff
==============================================================================
--- 
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/config/DAOGeneratorConfiguration.java
 (original)
+++ 
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/config/DAOGeneratorConfiguration.java
 Wed May 13 20:40:34 2009
@@ -15,8 +15,12 @@
  */
 package org.apache.ibatis.ibator.config;
 
+import java.util.List;
+
 import org.apache.ibatis.ibator.api.dom.xml.Attribute;
 import org.apache.ibatis.ibator.api.dom.xml.XmlElement;
+import org.apache.ibatis.ibator.internal.util.StringUtility;
+import org.apache.ibatis.ibator.internal.util.messages.Messages;
 
 
 /**
@@ -80,4 +84,20 @@
     public void setImplementationPackage(String implementationPackage) {
         this.implementationPackage = implementationPackage;
     }
+
+    public void validate(List<String> errors, String contextId) {
+        if (!StringUtility.stringHasValue(targetProject)) {
+            errors.add(Messages.getString("ValidationError.2", contextId)); 
//$NON-NLS-1$
+        }
+
+        if (!StringUtility.stringHasValue(targetPackage)) {
+            errors.add(Messages.getString("ValidationError.12", //$NON-NLS-1$
+                    "DAOGenerator", contextId)); //$NON-NLS-1$
+        }
+        
+        if (!StringUtility.stringHasValue(getConfigurationType())) {
+            errors.add(Messages.getString("ValidationError.20", //$NON-NLS-1$
+                    contextId));
+        }
+    }
 }

Modified: 
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/config/GeneratedKey.java
URL: 
http://svn.apache.org/viewvc/ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/config/GeneratedKey.java?rev=774520&r1=774519&r2=774520&view=diff
==============================================================================
--- 
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/config/GeneratedKey.java
 (original)
+++ 
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/config/GeneratedKey.java
 Wed May 13 20:40:34 2009
@@ -15,10 +15,13 @@
  */
 package org.apache.ibatis.ibator.config;
 
+import java.util.List;
+
 import org.apache.ibatis.ibator.api.dom.xml.Attribute;
 import org.apache.ibatis.ibator.api.dom.xml.XmlElement;
 import org.apache.ibatis.ibator.internal.db.DatabaseDialects;
 import org.apache.ibatis.ibator.internal.util.StringUtility;
+import org.apache.ibatis.ibator.internal.util.messages.Messages;
 
 /**
  * This class specifies that a key is auto-generated, either as an identity
@@ -96,4 +99,18 @@
         
         return xmlElement;
     }
+    
+    public void validate(List<String> errors, String tableName) {
+        if (!StringUtility.stringHasValue(runtimeSqlStatement)) {
+            errors.add(Messages.getString("ValidationError.7",  //$NON-NLS-1$
+                        tableName));
+        }
+            
+        if (StringUtility.stringHasValue(type)) {
+            if (!"pre".equals(type) && !"post".equals(type)) { //$NON-NLS-1$ 
//$NON-NLS-2$
+                errors.add(Messages.getString("ValidationError.15",  
//$NON-NLS-1$
+                    tableName));
+            }
+        }
+    }
 }

Modified: 
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/config/IbatorConfiguration.java
URL: 
http://svn.apache.org/viewvc/ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/config/IbatorConfiguration.java?rev=774520&r1=774519&r2=774520&view=diff
==============================================================================
--- 
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/config/IbatorConfiguration.java
 (original)
+++ 
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/config/IbatorConfiguration.java
 Wed May 13 20:40:34 2009
@@ -23,6 +23,7 @@
 import org.apache.ibatis.ibator.api.dom.xml.XmlElement;
 import org.apache.ibatis.ibator.exception.InvalidConfigurationException;
 import org.apache.ibatis.ibator.generator.ibatis2.XmlConstants;
+import org.apache.ibatis.ibator.internal.util.StringUtility;
 import org.apache.ibatis.ibator.internal.util.messages.Messages;
 
 /**
@@ -61,6 +62,14 @@
         */
        public void validate() throws InvalidConfigurationException {
                List<String> errors = new ArrayList<String>();
+               
+               for (String classPathEntry : classPathEntries) {
+                   if (!StringUtility.stringHasValue(classPathEntry)) {
+                   errors.add(Messages.getString("ValidationError.19")); 
//$NON-NLS-1$
+                   // only need to state this error once
+                       break;
+                   }
+               }
         
         if (ibatorContexts.size() == 0) {
             errors.add(Messages.getString("ValidationError.11")); //$NON-NLS-1$

Modified: 
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/config/IbatorContext.java
URL: 
http://svn.apache.org/viewvc/ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/config/IbatorContext.java?rev=774520&r1=774519&r2=774520&view=diff
==============================================================================
--- 
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/config/IbatorContext.java
 (original)
+++ 
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/config/IbatorContext.java
 Wed May 13 20:40:34 2009
@@ -137,50 +137,29 @@
         }
 
         if (jdbcConnectionConfiguration == null) {
-            errors.add(Messages.getString("ValidationError.10")); //$NON-NLS-1$
+            errors.add(Messages.getString("ValidationError.10", id)); 
//$NON-NLS-1$
         } else {
             jdbcConnectionConfiguration.validate(errors);
         }
 
         if (javaModelGeneratorConfiguration == null) {
-            errors.add(Messages.getString("ValidationError.8")); //$NON-NLS-1$
+            errors.add(Messages.getString("ValidationError.8", id)); 
//$NON-NLS-1$
         } else {
-            if 
(!StringUtility.stringHasValue(javaModelGeneratorConfiguration.getTargetProject()))
 {
-                errors.add(Messages.getString("ValidationError.0", id)); 
//$NON-NLS-1$
-            }
-
-            if 
(!StringUtility.stringHasValue(javaModelGeneratorConfiguration.getTargetPackage()))
 {
-                errors.add(Messages.getString("ValidationError.12", 
//$NON-NLS-1$
-                        "JavaModelGenerator", id)); //$NON-NLS-1$
-            }
+            javaModelGeneratorConfiguration.validate(errors, id);
         }
 
         if (sqlMapGeneratorConfiguration == null) {
-            errors.add(Messages.getString("ValidationError.9")); //$NON-NLS-1$
+            errors.add(Messages.getString("ValidationError.9", id)); 
//$NON-NLS-1$
         } else {
-            if 
(!StringUtility.stringHasValue(sqlMapGeneratorConfiguration.getTargetProject()))
 {
-                errors.add(Messages.getString("ValidationError.1", id)); 
//$NON-NLS-1$
-            }
-
-            if 
(!StringUtility.stringHasValue(sqlMapGeneratorConfiguration.getTargetPackage()))
 {
-                errors.add(Messages.getString("ValidationError.12", 
//$NON-NLS-1$
-                        "SQLMapGenerator", id)); //$NON-NLS-1$
-            }
+            sqlMapGeneratorConfiguration.validate(errors, id);
         }
 
         if (daoGeneratorConfiguration != null) {
-            if 
(!StringUtility.stringHasValue(daoGeneratorConfiguration.getTargetProject())) {
-                errors.add(Messages.getString("ValidationError.2", id)); 
//$NON-NLS-1$
-            }
-
-            if 
(!StringUtility.stringHasValue(daoGeneratorConfiguration.getTargetPackage())) {
-                errors.add(Messages.getString("ValidationError.12", 
//$NON-NLS-1$
-                        "DAOGenerator", id)); //$NON-NLS-1$
-            }
+            daoGeneratorConfiguration.validate(errors, id);
         }
 
         if (tableConfigurations.size() == 0) {
-            errors.add(Messages.getString("ValidationError.3")); //$NON-NLS-1$
+            errors.add(Messages.getString("ValidationError.3", id)); 
//$NON-NLS-1$
         } else {
             for (int i = 0; i < tableConfigurations.size(); i++) {
                 TableConfiguration tc = tableConfigurations.get(i);

Modified: 
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/config/IgnoredColumn.java
URL: 
http://svn.apache.org/viewvc/ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/config/IgnoredColumn.java?rev=774520&r1=774519&r2=774520&view=diff
==============================================================================
--- 
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/config/IgnoredColumn.java
 (original)
+++ 
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/config/IgnoredColumn.java
 Wed May 13 20:40:34 2009
@@ -16,9 +16,12 @@
 
 package org.apache.ibatis.ibator.config;
 
+import java.util.List;
+
 import org.apache.ibatis.ibator.api.dom.xml.Attribute;
 import org.apache.ibatis.ibator.api.dom.xml.XmlElement;
 import org.apache.ibatis.ibator.internal.util.StringUtility;
+import org.apache.ibatis.ibator.internal.util.messages.Messages;
 
 /**
  * @author Jeff Butler
@@ -77,4 +80,11 @@
         return xmlElement;
     }
 
+    public void validate(List<String> errors, String tableName) {
+        if (!StringUtility.stringHasValue(columnName)) {
+            errors
+            .add(Messages.getString("ValidationError.21",  //$NON-NLS-1$
+                tableName));
+        }
+    }
 }

Modified: 
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/config/JavaModelGeneratorConfiguration.java
URL: 
http://svn.apache.org/viewvc/ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/config/JavaModelGeneratorConfiguration.java?rev=774520&r1=774519&r2=774520&view=diff
==============================================================================
--- 
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/config/JavaModelGeneratorConfiguration.java
 (original)
+++ 
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/config/JavaModelGeneratorConfiguration.java
 Wed May 13 20:40:34 2009
@@ -15,8 +15,12 @@
  */
 package org.apache.ibatis.ibator.config;
 
+import java.util.List;
+
 import org.apache.ibatis.ibator.api.dom.xml.Attribute;
 import org.apache.ibatis.ibator.api.dom.xml.XmlElement;
+import org.apache.ibatis.ibator.internal.util.StringUtility;
+import org.apache.ibatis.ibator.internal.util.messages.Messages;
 
 
 /**
@@ -66,4 +70,15 @@
         
         return answer;
     }
+
+    public void validate(List<String> errors, String contextId) {
+        if (!StringUtility.stringHasValue(targetProject)) {
+            errors.add(Messages.getString("ValidationError.0", contextId)); 
//$NON-NLS-1$
+        }
+
+        if (!StringUtility.stringHasValue(targetPackage)) {
+            errors.add(Messages.getString("ValidationError.12", //$NON-NLS-1$
+                    "JavaModelGenerator", contextId)); //$NON-NLS-1$
+        }
+    }
 }

Modified: 
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/config/SqlMapGeneratorConfiguration.java
URL: 
http://svn.apache.org/viewvc/ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/config/SqlMapGeneratorConfiguration.java?rev=774520&r1=774519&r2=774520&view=diff
==============================================================================
--- 
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/config/SqlMapGeneratorConfiguration.java
 (original)
+++ 
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/config/SqlMapGeneratorConfiguration.java
 Wed May 13 20:40:34 2009
@@ -15,8 +15,12 @@
  */
 package org.apache.ibatis.ibator.config;
 
+import java.util.List;
+
 import org.apache.ibatis.ibator.api.dom.xml.Attribute;
 import org.apache.ibatis.ibator.api.dom.xml.XmlElement;
+import org.apache.ibatis.ibator.internal.util.StringUtility;
+import org.apache.ibatis.ibator.internal.util.messages.Messages;
 
 
 /**
@@ -65,4 +69,15 @@
         
         return answer;
     }
+    
+    public void validate(List<String> errors, String contextId) {
+        if (!StringUtility.stringHasValue(targetProject)) {
+            errors.add(Messages.getString("ValidationError.1", contextId)); 
//$NON-NLS-1$
+        }
+
+        if (!StringUtility.stringHasValue(targetPackage)) {
+            errors.add(Messages.getString("ValidationError.12", //$NON-NLS-1$
+                    "SQLMapGenerator", contextId)); //$NON-NLS-1$
+        }
+    }
 }

Modified: 
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/config/TableConfiguration.java
URL: 
http://svn.apache.org/viewvc/ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/config/TableConfiguration.java?rev=774520&r1=774519&r2=774520&view=diff
==============================================================================
--- 
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/config/TableConfiguration.java
 (original)
+++ 
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/config/TableConfiguration.java
 Wed May 13 20:40:34 2009
@@ -474,20 +474,8 @@
         String fqTableName = StringUtility.composeFullyQualifiedTableName(
                 catalog, schema, tableName, '.');
         
-        if (generatedKey != null
-                && 
!StringUtility.stringHasValue(generatedKey.getRuntimeSqlStatement())) {
-            errors
-                .add(Messages.getString("ValidationError.7",  //$NON-NLS-1$
-                        fqTableName));
-            
-            String type = generatedKey.getType();
-            if (StringUtility.stringHasValue(type)) {
-                if (!"pre".equals(type) && !"post".equals(type)) { 
//$NON-NLS-1$ //$NON-NLS-2$
-                    errors
-                    .add(Messages.getString("ValidationError.15",  
//$NON-NLS-1$
-                            fqTableName));
-                }
-            }
+        if (generatedKey != null) {
+            generatedKey.validate(errors, fqTableName);
         }
         
         if 
(StringUtility.isTrue(getProperty(PropertyRegistry.TABLE_USE_COLUMN_INDEXES))) {
@@ -505,7 +493,15 @@
         }
         
         if (columnRenamingRule != null) {
-            columnRenamingRule.validate(errors);
+            columnRenamingRule.validate(errors, fqTableName);
+        }
+        
+        for (ColumnOverride columnOverride : columnOverrides) {
+            columnOverride.validate(errors, fqTableName);
+        }
+        
+        for (IgnoredColumn ignoredColumn : ignoredColumns.keySet()) {
+            ignoredColumn.validate(errors, fqTableName);
         }
     }
 

Modified: 
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/internal/util/messages/messages.properties
URL: 
http://svn.apache.org/viewvc/ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/internal/util/messages/messages.properties?rev=774520&r1=774519&r2=774520&view=diff
==============================================================================
--- 
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/internal/util/messages/messages.properties
 (original)
+++ 
ibatis/trunk/java/tools/ibator/core/src/org/apache/ibatis/ibator/internal/util/messages/messages.properties
 Wed May 13 20:40:34 2009
@@ -1,22 +1,26 @@
 ValidationError.0=JavaModelGenerator Target Project is Required for context {0}
 ValidationError.1=SQLMapGenerator Target Project is Required for context {0}
 ValidationError.2=DAOGenerator Target Project is Required for context {0}
-ValidationError.3=No Tables Specified
+ValidationError.3=No Tables Specified for context {0}
 ValidationError.4=JDBC Driver Class Must Be Specified
 ValidationError.5=JDBC Connection URL Must Be Specified
 ValidationError.6=Missing table name in table configuration at index {0}
 ValidationError.7=SQL Statement is required if a generated key is specified in 
table configuration for table {0}
-ValidationError.8=JavaModelGeneratorConfiguration is required
-ValidationError.9=SqlMapGeneratorConfiguration is required
-ValidationError.10=JdbcConnectionConfiguration is required
+ValidationError.8=JavaModelGeneratorConfiguration is required for context {0}
+ValidationError.9=SqlMapGeneratorConfiguration is required for context {0}
+ValidationError.10=JdbcConnectionConfiguration is required for context {0}
 ValidationError.11=At least one IbatorConfiguration element is required
 ValidationError.12={0} Target Package is Required for context {1}
 ValidationError.13=If "useColumnIndexes" property is set, then either both or 
neither query id must be set for table {0}
-ValidationError.14="searchString" is required in a ColumnRenamingRule
+ValidationError.14="searchString" is required for ColumnRenamingRule in table 
{0}
 ValidationError.15=Generated key type must be either "pre" or "post" if the 
type is specified for a generated key for table {0}
 ValidationError.16="id" is required in an IbatorContext
 ValidationError.17="type" is required in an IbatorPlugin in context {0}
 ValidationError.18={0} requires the {1} property
+ValidationError.19=A null or empty string is not allowed for a classpath entry
+ValidationError.20="type" is required for DAO Generator in context {0}
+ValidationError.21="column" is required for <ignoredColumn> in table {0}
+ValidationError.22="column" is required for <columnOverride> in table {0}
 
 RuntimeError.0=configfile is a required parameter
 RuntimeError.1=configfile {0} does not exist
@@ -88,11 +92,11 @@
 Tracing.3=Removing column "{0}" in table "{1}" because it is ignored by 
configuration
 Tracing.4=Found override for column "{0}" in table "{1}"
 
-Usage.Lines=26
+Usage.Lines=28
 Usage.0=Apache iBATIS Ibator - a code generator for iBATIS.  Usage:
 Usage.1=\   java -jar ibator.jar -configfile file_name [-overwrite]
 Usage.2=\                        [-contextids ids] [-tables tableNames]
-Usage.3=\                        [-forceJavaLogging] [-verbose]
+Usage.3=\                        [-forceJavaLogging] [-verbose] [-?|-h]
 Usage.4=
 Usage.5=Where:
 Usage.6=\   -configfile: Specifies the the Ibator XML configuration file 
(required)
@@ -111,7 +115,9 @@
 Usage.19=\            must exactly match the case specified in the 
configuration file.
 Usage.20=
 Usage.21=\   -forceJavaLogging: Used to force Ibator to use standard Java 
logging even if
-Usage.22=\                      Log4J is available in the runtime classpath.  
Ibator normally
-Usage.23=\                      will use Log4J if it is available at runtime.
+Usage.22=\                      Log4J is available in the runtime classpath.  
Ibator
+Usage.23=\                      normally will use Log4J if it is available at 
runtime.
 Usage.24=
 Usage.25=\   -verbose: If specified, Ibator will write progress messages to 
the console.
+Usage.26=
+Usage.27=\   -?|-h: Display this help text and exit.


Reply via email to