Author: kai
Date: Mon Aug 10 18:52:52 2009
New Revision: 802895

URL: http://svn.apache.org/viewvc?rev=802895&view=rev
Log:
IBATIS-618 (Provide SQLExecutor's an opportunity to initialise state at 
initialization time)
- applied the supplied patch

Modified:
    
ibatis/trunk/java/ibatis-2/ibatis-2-core/src/com/ibatis/sqlmap/engine/builder/xml/XmlParserState.java
    
ibatis/trunk/java/ibatis-2/ibatis-2-core/src/com/ibatis/sqlmap/engine/execution/DefaultSqlExecutor.java
    
ibatis/trunk/java/ibatis-2/ibatis-2-core/src/com/ibatis/sqlmap/engine/execution/SqlExecutor.java

Modified: 
ibatis/trunk/java/ibatis-2/ibatis-2-core/src/com/ibatis/sqlmap/engine/builder/xml/XmlParserState.java
URL: 
http://svn.apache.org/viewvc/ibatis/trunk/java/ibatis-2/ibatis-2-core/src/com/ibatis/sqlmap/engine/builder/xml/XmlParserState.java?rev=802895&r1=802894&r2=802895&view=diff
==============================================================================
--- 
ibatis/trunk/java/ibatis-2/ibatis-2-core/src/com/ibatis/sqlmap/engine/builder/xml/XmlParserState.java
 (original)
+++ 
ibatis/trunk/java/ibatis-2/ibatis-2-core/src/com/ibatis/sqlmap/engine/builder/xml/XmlParserState.java
 Mon Aug 10 18:52:52 2009
@@ -136,6 +136,7 @@
       if (customizedSQLExecutor != null) {
         try {
           
config.getClient().getDelegate().setCustomExecutor(customizedSQLExecutor);
+          config.getClient().getDelegate().getSqlExecutor().init(config, 
globalProps);
         } catch (Exception e) {
           config.getErrorContext().setCause(e);
           config.getErrorContext().setMoreInfo("Loading of 
customizedSQLExecutor failed. Please check Properties file.");

Modified: 
ibatis/trunk/java/ibatis-2/ibatis-2-core/src/com/ibatis/sqlmap/engine/execution/DefaultSqlExecutor.java
URL: 
http://svn.apache.org/viewvc/ibatis/trunk/java/ibatis-2/ibatis-2-core/src/com/ibatis/sqlmap/engine/execution/DefaultSqlExecutor.java?rev=802895&r1=802894&r2=802895&view=diff
==============================================================================
--- 
ibatis/trunk/java/ibatis-2/ibatis-2-core/src/com/ibatis/sqlmap/engine/execution/DefaultSqlExecutor.java
 (original)
+++ 
ibatis/trunk/java/ibatis-2/ibatis-2-core/src/com/ibatis/sqlmap/engine/execution/DefaultSqlExecutor.java
 Mon Aug 10 18:52:52 2009
@@ -25,7 +25,9 @@
 import java.sql.Types;
 import java.util.ArrayList;
 import java.util.List;
+import java.util.Properties;
 
+import com.ibatis.sqlmap.engine.config.SqlMapConfiguration;
 import com.ibatis.sqlmap.engine.impl.SqlMapClientImpl;
 import com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate;
 import com.ibatis.sqlmap.engine.mapping.parameter.ParameterMap;
@@ -291,6 +293,10 @@
       }
     }
   }
+  
+  public void init(SqlMapConfiguration config, Properties globalProps) {
+    // No implementation is required in DefaultSqlExecutor.
+  }
 
   private ResultSet handleMultipleResults(PreparedStatement ps, StatementScope 
statementScope, int skipResults, int maxResults, RowHandlerCallback callback) 
throws SQLException {
     ResultSet rs;

Modified: 
ibatis/trunk/java/ibatis-2/ibatis-2-core/src/com/ibatis/sqlmap/engine/execution/SqlExecutor.java
URL: 
http://svn.apache.org/viewvc/ibatis/trunk/java/ibatis-2/ibatis-2-core/src/com/ibatis/sqlmap/engine/execution/SqlExecutor.java?rev=802895&r1=802894&r2=802895&view=diff
==============================================================================
--- 
ibatis/trunk/java/ibatis-2/ibatis-2-core/src/com/ibatis/sqlmap/engine/execution/SqlExecutor.java
 (original)
+++ 
ibatis/trunk/java/ibatis-2/ibatis-2-core/src/com/ibatis/sqlmap/engine/execution/SqlExecutor.java
 Mon Aug 10 18:52:52 2009
@@ -3,7 +3,9 @@
 import java.sql.Connection;
 import java.sql.SQLException;
 import java.util.List;
+import java.util.Properties;
 
+import com.ibatis.sqlmap.engine.config.SqlMapConfiguration;
 import com.ibatis.sqlmap.engine.mapping.statement.RowHandlerCallback;
 import com.ibatis.sqlmap.engine.scope.SessionScope;
 import com.ibatis.sqlmap.engine.scope.StatementScope;
@@ -116,4 +118,12 @@
    * @param sessionScope - the session to clean up
    */
   public void cleanup(SessionScope sessionScope);
+  
+  /**
+   * Initializing SQL Executor by passing configuration and global properties.
+   * 
+   * @param config - the configuration class, which contains complete 
configuration info
+   * @param globalProps
+   */
+  public void init(SqlMapConfiguration config, Properties globalProps);
 }


Reply via email to