You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ibatis.apache.org by cb...@apache.org on 2008/03/23 05:56:52 UTC

svn commit: r640152 - in /ibatis/trunk/java/mapper/mapper2: build/ src/com/ibatis/common/jdbc/ src/com/ibatis/sqlmap/engine/builder/xml/ src/com/ibatis/sqlmap/engine/config/ src/com/ibatis/sqlmap/engine/impl/ src/com/ibatis/sqlmap/engine/mapping/result/

Author: cbegin
Date: Sat Mar 22 21:56:51 2008
New Revision: 640152

URL: http://svn.apache.org/viewvc?rev=640152&view=rev
Log:
Made column label/name configurable RE: issue 490

Modified:
    ibatis/trunk/java/mapper/mapper2/build/version.properties
    ibatis/trunk/java/mapper/mapper2/src/com/ibatis/common/jdbc/ScriptRunner.java
    ibatis/trunk/java/mapper/mapper2/src/com/ibatis/sqlmap/engine/builder/xml/SqlMapConfigParser.java
    ibatis/trunk/java/mapper/mapper2/src/com/ibatis/sqlmap/engine/config/SqlMapConfiguration.java
    ibatis/trunk/java/mapper/mapper2/src/com/ibatis/sqlmap/engine/impl/SqlMapExecutorDelegate.java
    ibatis/trunk/java/mapper/mapper2/src/com/ibatis/sqlmap/engine/mapping/result/AutoResultMap.java
    ibatis/trunk/java/mapper/mapper2/src/com/ibatis/sqlmap/engine/mapping/result/ResultMap.java

Modified: ibatis/trunk/java/mapper/mapper2/build/version.properties
URL: http://svn.apache.org/viewvc/ibatis/trunk/java/mapper/mapper2/build/version.properties?rev=640152&r1=640151&r2=640152&view=diff
==============================================================================
--- ibatis/trunk/java/mapper/mapper2/build/version.properties (original)
+++ ibatis/trunk/java/mapper/mapper2/build/version.properties Sat Mar 22 21:56:51 2008
@@ -1,5 +1,5 @@
 #Build version info
-#Fri Mar 21 19:27:28 MDT 2008
+#Sat Mar 22 22:51:13 MDT 2008
 version=2.3.1
-buildDate=2008/03/21 19\:27
-buildNum=704
+buildDate=2008/03/22 22\:51
+buildNum=706

Modified: ibatis/trunk/java/mapper/mapper2/src/com/ibatis/common/jdbc/ScriptRunner.java
URL: http://svn.apache.org/viewvc/ibatis/trunk/java/mapper/mapper2/src/com/ibatis/common/jdbc/ScriptRunner.java?rev=640152&r1=640151&r2=640152&view=diff
==============================================================================
--- ibatis/trunk/java/mapper/mapper2/src/com/ibatis/common/jdbc/ScriptRunner.java (original)
+++ ibatis/trunk/java/mapper/mapper2/src/com/ibatis/common/jdbc/ScriptRunner.java Sat Mar 22 21:56:51 2008
@@ -180,7 +180,7 @@
             ResultSetMetaData md = rs.getMetaData();
             int cols = md.getColumnCount();
             for (int i = 0; i < cols; i++) {
-              String name = md.getColumnName(i);
+              String name = md.getColumnLabel(i);
               print(name + "\t");
             }
             println("");

Modified: ibatis/trunk/java/mapper/mapper2/src/com/ibatis/sqlmap/engine/builder/xml/SqlMapConfigParser.java
URL: http://svn.apache.org/viewvc/ibatis/trunk/java/mapper/mapper2/src/com/ibatis/sqlmap/engine/builder/xml/SqlMapConfigParser.java?rev=640152&r1=640151&r2=640152&view=diff
==============================================================================
--- ibatis/trunk/java/mapper/mapper2/src/com/ibatis/sqlmap/engine/builder/xml/SqlMapConfigParser.java (original)
+++ ibatis/trunk/java/mapper/mapper2/src/com/ibatis/sqlmap/engine/builder/xml/SqlMapConfigParser.java Sat Mar 22 21:56:51 2008
@@ -111,6 +111,10 @@
         boolean enhancementEnabled = (enhancementEnabledAttr == null || "true".equals(enhancementEnabledAttr));
         config.setEnhancementEnabled(enhancementEnabled);
 
+        String useColumnLabelAttr = attributes.getProperty("useColumnLabel");
+        boolean useColumnLabel = (useColumnLabelAttr == null || "true".equals(useColumnLabelAttr));
+        config.setUseColumnLabel(useColumnLabel);
+
         String defaultTimeoutAttr = attributes.getProperty("defaultStatementTimeout");
         Integer defaultTimeout = defaultTimeoutAttr == null ? null : Integer.valueOf(defaultTimeoutAttr);
         config.setDefaultStatementTimeout(defaultTimeout);

Modified: ibatis/trunk/java/mapper/mapper2/src/com/ibatis/sqlmap/engine/config/SqlMapConfiguration.java
URL: http://svn.apache.org/viewvc/ibatis/trunk/java/mapper/mapper2/src/com/ibatis/sqlmap/engine/config/SqlMapConfiguration.java?rev=640152&r1=640151&r2=640152&view=diff
==============================================================================
--- ibatis/trunk/java/mapper/mapper2/src/com/ibatis/sqlmap/engine/config/SqlMapConfiguration.java (original)
+++ ibatis/trunk/java/mapper/mapper2/src/com/ibatis/sqlmap/engine/config/SqlMapConfiguration.java Sat Mar 22 21:56:51 2008
@@ -85,6 +85,10 @@
     AccessPlanFactory.setBytecodeEnhancementEnabled(enhancementEnabled);
   }
 
+  public void setUseColumnLabel(boolean useColumnLabel) {
+    client.getDelegate().setUseColumnLabel(useColumnLabel);
+  }
+
   public void setDefaultStatementTimeout(Integer defaultTimeout) {
     errorContext.setActivity("setting default timeout");
     if (defaultTimeout != null) {

Modified: ibatis/trunk/java/mapper/mapper2/src/com/ibatis/sqlmap/engine/impl/SqlMapExecutorDelegate.java
URL: http://svn.apache.org/viewvc/ibatis/trunk/java/mapper/mapper2/src/com/ibatis/sqlmap/engine/impl/SqlMapExecutorDelegate.java?rev=640152&r1=640151&r2=640152&view=diff
==============================================================================
--- ibatis/trunk/java/mapper/mapper2/src/com/ibatis/sqlmap/engine/impl/SqlMapExecutorDelegate.java (original)
+++ ibatis/trunk/java/mapper/mapper2/src/com/ibatis/sqlmap/engine/impl/SqlMapExecutorDelegate.java Sat Mar 22 21:56:51 2008
@@ -60,6 +60,7 @@
   private boolean lazyLoadingEnabled;
   private boolean cacheModelsEnabled;
   private boolean enhancementEnabled;
+  private boolean useColumnLabel = true;
 
   private TransactionManager txManager;
 
@@ -167,6 +168,14 @@
    */
   public void setEnhancementEnabled(boolean enhancementEnabled) {
     this.enhancementEnabled = enhancementEnabled;
+  }
+
+  public boolean isUseColumnLabel() {
+    return useColumnLabel;
+  }
+
+  public void setUseColumnLabel(boolean useColumnLabel) {
+    this.useColumnLabel = useColumnLabel;
   }
 
   /**

Modified: ibatis/trunk/java/mapper/mapper2/src/com/ibatis/sqlmap/engine/mapping/result/AutoResultMap.java
URL: http://svn.apache.org/viewvc/ibatis/trunk/java/mapper/mapper2/src/com/ibatis/sqlmap/engine/mapping/result/AutoResultMap.java?rev=640152&r1=640151&r2=640152&view=diff
==============================================================================
--- ibatis/trunk/java/mapper/mapper2/src/com/ibatis/sqlmap/engine/mapping/result/AutoResultMap.java (original)
+++ ibatis/trunk/java/mapper/mapper2/src/com/ibatis/sqlmap/engine/mapping/result/AutoResultMap.java Sat Mar 22 21:56:51 2008
@@ -82,7 +82,7 @@
       List resultMappingList = new ArrayList();
       ResultSetMetaData rsmd = rs.getMetaData();
       for (int i = 0, n = rsmd.getColumnCount(); i < n; i++) {
-        String columnName = rsmd.getColumnName(i + 1);
+        String columnName = getColumnIdentifier(rsmd, i+1);
         String upperColumnName = columnName.toUpperCase(java.util.Locale.ENGLISH);
         String matchedProp = (String) propertyMap.get(upperColumnName);
         Class type = null;
@@ -118,7 +118,7 @@
       List resultMappingList = new ArrayList();
       ResultSetMetaData rsmd = rs.getMetaData();
       for (int i = 0, n = rsmd.getColumnCount(); i < n; i++) {
-        String columnName = rsmd.getColumnName(i + 1);
+        String columnName = getColumnIdentifier(rsmd, i+1);
         ResultMapping resultMapping = new ResultMapping();
         resultMapping.setPropertyName(columnName);
         resultMapping.setColumnName(columnName);
@@ -137,7 +137,7 @@
       List resultMappingList = new ArrayList();
       ResultSetMetaData rsmd = rs.getMetaData();
       for (int i = 0, n = rsmd.getColumnCount(); i < n; i++) {
-        String columnName = rsmd.getColumnName(i + 1);
+        String columnName = getColumnIdentifier(rsmd, i+1);
         ResultMapping resultMapping = new ResultMapping();
         resultMapping.setPropertyName(columnName);
         resultMapping.setColumnName(columnName);
@@ -156,7 +156,7 @@
   private void initializePrimitiveResults(ResultSet rs) {
     try {
       ResultSetMetaData rsmd = rs.getMetaData();
-      String columnName = rsmd.getColumnName(1);
+      String columnName = getColumnIdentifier(rsmd,1);
       ResultMapping resultMapping = new ResultMapping();
       resultMapping.setPropertyName(columnName);
       resultMapping.setColumnName(columnName);
@@ -170,6 +170,14 @@
 
     } catch (SQLException e) {
       throw new RuntimeException("Error automapping columns. Cause: " + e);
+    }
+  }
+
+  private String getColumnIdentifier(ResultSetMetaData rsmd, int i) throws SQLException {
+    if (delegate.isUseColumnLabel()) {
+      return rsmd.getColumnLabel(i);
+    } else {
+      return rsmd.getColumnName(i);
     }
   }
 

Modified: ibatis/trunk/java/mapper/mapper2/src/com/ibatis/sqlmap/engine/mapping/result/ResultMap.java
URL: http://svn.apache.org/viewvc/ibatis/trunk/java/mapper/mapper2/src/com/ibatis/sqlmap/engine/mapping/result/ResultMap.java?rev=640152&r1=640151&r2=640152&view=diff
==============================================================================
--- ibatis/trunk/java/mapper/mapper2/src/com/ibatis/sqlmap/engine/mapping/result/ResultMap.java (original)
+++ ibatis/trunk/java/mapper/mapper2/src/com/ibatis/sqlmap/engine/mapping/result/ResultMap.java Sat Mar 22 21:56:51 2008
@@ -75,7 +75,7 @@
 
   private String resource;
 
-  private SqlMapExecutorDelegate delegate;
+  protected SqlMapExecutorDelegate delegate;
 
   protected boolean allowRemapping = false;
   public static final Object NO_VALUE = new Object();