Author: jgbutler
Date: Wed Feb  3 22:44:12 2010
New Revision: 906271

URL: http://svn.apache.org/viewvc?rev=906271&view=rev
Log:
[Ibator] Add new "useCompoundTableNames" property

Modified:
    ibatis/java/ibator/trunk/core/ibator-core/doc/ReleaseNotes.txt
    
ibatis/java/ibator/trunk/core/ibator-core/src/main/java/org/apache/ibatis/ibator/config/PropertyRegistry.java
    
ibatis/java/ibator/trunk/core/ibator-core/src/main/java/org/apache/ibatis/ibator/internal/db/DatabaseIntrospector.java
    
ibatis/java/ibator/trunk/core/ibator-core/src/main/java/org/apache/ibatis/ibator/internal/util/JavaBeansUtil.java

Modified: ibatis/java/ibator/trunk/core/ibator-core/doc/ReleaseNotes.txt
URL: 
http://svn.apache.org/viewvc/ibatis/java/ibator/trunk/core/ibator-core/doc/ReleaseNotes.txt?rev=906271&r1=906270&r2=906271&view=diff
==============================================================================
--- ibatis/java/ibator/trunk/core/ibator-core/doc/ReleaseNotes.txt (original)
+++ ibatis/java/ibator/trunk/core/ibator-core/doc/ReleaseNotes.txt Wed Feb  3 
22:44:12 2010
@@ -40,6 +40,7 @@
 17. Added ability to set annotations on method parameters
 18. Addedd support for "distinct" on select by example methods
 19. Added new "or" method to example classes
+20. Added new "useCompoundColumnNames" property on <table>
 
 -------------------------------------------------------------------------------
 Version 1.2.1:

Modified: 
ibatis/java/ibator/trunk/core/ibator-core/src/main/java/org/apache/ibatis/ibator/config/PropertyRegistry.java
URL: 
http://svn.apache.org/viewvc/ibatis/java/ibator/trunk/core/ibator-core/src/main/java/org/apache/ibatis/ibator/config/PropertyRegistry.java?rev=906271&r1=906270&r2=906271&view=diff
==============================================================================
--- 
ibatis/java/ibator/trunk/core/ibator-core/src/main/java/org/apache/ibatis/ibator/config/PropertyRegistry.java
 (original)
+++ 
ibatis/java/ibator/trunk/core/ibator-core/src/main/java/org/apache/ibatis/ibator/config/PropertyRegistry.java
 Wed Feb  3 22:44:12 2010
@@ -40,6 +40,7 @@
 
     public static final String TABLE_USE_COLUMN_INDEXES = "useColumnIndexes"; 
//$NON-NLS-1$
     public static final String TABLE_USE_ACTUAL_COLUMN_NAMES = 
"useActualColumnNames"; //$NON-NLS-1$
+    public static final String TABLE_USE_COMPOUND_COLUMN_NAMES = 
"useCompoundColumnNames"; //$NON-NLS-1$
     public static final String TABLE_IGNORE_QUALIFIERS_AT_RUNTIME = 
"ignoreQualifiersAtRuntime"; //$NON-NLS-1$
     public static final String TABLE_RUNTIME_CATALOG = "runtimeCatalog"; 
//$NON-NLS-1$
     public static final String TABLE_RUNTIME_SCHEMA = "runtimeSchema"; 
//$NON-NLS-1$

Modified: 
ibatis/java/ibator/trunk/core/ibator-core/src/main/java/org/apache/ibatis/ibator/internal/db/DatabaseIntrospector.java
URL: 
http://svn.apache.org/viewvc/ibatis/java/ibator/trunk/core/ibator-core/src/main/java/org/apache/ibatis/ibator/internal/db/DatabaseIntrospector.java?rev=906271&r1=906270&r2=906271&view=diff
==============================================================================
--- 
ibatis/java/ibator/trunk/core/ibator-core/src/main/java/org/apache/ibatis/ibator/internal/db/DatabaseIntrospector.java
 (original)
+++ 
ibatis/java/ibator/trunk/core/ibator-core/src/main/java/org/apache/ibatis/ibator/internal/db/DatabaseIntrospector.java
 Wed Feb  3 22:44:12 2010
@@ -214,6 +214,7 @@
     
     private void calculateExtraColumnInformation(TableConfiguration tc,
                Map<ActualTableName, List<IntrospectedColumn>> columns) {
+       StringBuilder sb = new StringBuilder();
         Pattern pattern = null;
         String replaceString = null;
         if (tc.getColumnRenamingRule() != null) {
@@ -234,6 +235,12 @@
                 
                 if 
(StringUtility.isTrue(tc.getProperty(PropertyRegistry.TABLE_USE_ACTUAL_COLUMN_NAMES)))
 {
                     
introspectedColumn.setJavaProperty(JavaBeansUtil.getValidPropertyName(calculatedColumnName));
+                } else if 
(StringUtility.isTrue(tc.getProperty(PropertyRegistry.TABLE_USE_COMPOUND_COLUMN_NAMES)))
 {
+                       sb.setLength(0);
+                       sb.append(calculatedColumnName);
+                       sb.append('_');
+                       
sb.append(JavaBeansUtil.getCamelCaseString(introspectedColumn.getRemarks(), 
true));
+                       
introspectedColumn.setJavaProperty(JavaBeansUtil.getValidPropertyName(sb.toString()));
                 } else {
                     
introspectedColumn.setJavaProperty(JavaBeansUtil.getCamelCaseString(calculatedColumnName,
 false));
                 }

Modified: 
ibatis/java/ibator/trunk/core/ibator-core/src/main/java/org/apache/ibatis/ibator/internal/util/JavaBeansUtil.java
URL: 
http://svn.apache.org/viewvc/ibatis/java/ibator/trunk/core/ibator-core/src/main/java/org/apache/ibatis/ibator/internal/util/JavaBeansUtil.java?rev=906271&r1=906270&r2=906271&view=diff
==============================================================================
--- 
ibatis/java/ibator/trunk/core/ibator-core/src/main/java/org/apache/ibatis/ibator/internal/util/JavaBeansUtil.java
 (original)
+++ 
ibatis/java/ibator/trunk/core/ibator-core/src/main/java/org/apache/ibatis/ibator/internal/util/JavaBeansUtil.java
 Wed Feb  3 22:44:12 2010
@@ -112,6 +112,7 @@
             case '$':
             case '#':
             case ' ':
+            case '/':
                                if (sb.length() > 0) {
                                        nextUpperCase = true;
                                }


Reply via email to