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/12/01 05:44:38 UTC

svn commit: r721963 - in /ibatis/trunk/java/ibatis-3/ibatis-3-core/src: main/java/org/apache/ibatis/api/ main/java/org/apache/ibatis/builder/ test/java/org/apache/ibatis/api/ test/java/org/apache/ibatis/builder/

Author: cbegin
Date: Sun Nov 30 20:44:38 2008
New Revision: 721963

URL: http://svn.apache.org/viewvc?rev=721963&view=rev
Log:
refactored sql mapper builder vs parser vs factory

Added:
    ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/api/SqlSessionFactoryBuilder.java
      - copied, changed from r721958, ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/SqlMapperBuilder.java
    ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/ParserException.java
      - copied, changed from r721958, ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/BuilderException.java
    ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/api/
    ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/api/SqlSessionTest.java
      - copied, changed from r721958, ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/builder/SqlMapperBuilderTest.java
Removed:
    ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/BuilderException.java
    ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/SqlMapperBuilder.java
    ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/builder/SqlMapperBuilderTest.java
Modified:
    ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/BaseParser.java
    ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/MapperConfigParser.java
    ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/MapperParser.java
    ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/SqlSourceParser.java

Copied: ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/api/SqlSessionFactoryBuilder.java (from r721958, ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/SqlMapperBuilder.java)
URL: http://svn.apache.org/viewvc/ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/api/SqlSessionFactoryBuilder.java?p2=ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/api/SqlSessionFactoryBuilder.java&p1=ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/SqlMapperBuilder.java&r1=721958&r2=721963&rev=721963&view=diff
==============================================================================
--- ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/SqlMapperBuilder.java (original)
+++ ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/api/SqlSessionFactoryBuilder.java Sun Nov 30 20:44:38 2008
@@ -1,13 +1,14 @@
-package org.apache.ibatis.builder;
+package org.apache.ibatis.api;
 
 import org.apache.ibatis.mapping.Configuration;
 import org.apache.ibatis.api.defaults.DefaultSqlSessionFactory;
 import org.apache.ibatis.api.SqlSessionFactory;
+import org.apache.ibatis.builder.MapperConfigParser;
 
 import java.io.Reader;
 import java.util.Properties;
 
-public class SqlMapperBuilder {
+public class SqlSessionFactoryBuilder {
 
   public SqlSessionFactory build(Reader reader) {
     return build(reader,null,null);

Modified: ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/BaseParser.java
URL: http://svn.apache.org/viewvc/ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/BaseParser.java?rev=721963&r1=721962&r2=721963&view=diff
==============================================================================
--- ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/BaseParser.java (original)
+++ ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/BaseParser.java Sun Nov 30 20:44:38 2008
@@ -2,11 +2,6 @@
 
 import org.apache.ibatis.type.*;
 import org.apache.ibatis.mapping.*;
-import org.apache.ibatis.transaction.jdbc.JdbcTransaction;
-import org.apache.ibatis.transaction.managed.ManagedTransaction;
-import org.apache.ibatis.datasource.jndi.JndiDataSourceFactory;
-import org.apache.ibatis.datasource.pooled.PooledDataSourceFactory;
-import org.apache.ibatis.datasource.unpooled.UnpooledDataSourceFactory;
 
 public class BaseParser {
   protected Configuration configuration;
@@ -30,7 +25,7 @@
     try {
       return JdbcType.valueOf(resolveAlias(alias));
     } catch (IllegalArgumentException e) {
-      throw new BuilderException("Error resolving JdbcType. Cause: " + e, e);
+      throw new ParserException("Error resolving JdbcType. Cause: " + e, e);
     }
   }
 
@@ -39,7 +34,7 @@
     try {
       return ResultSetType.valueOf(resolveAlias(alias));
     } catch (IllegalArgumentException e) {
-      throw new BuilderException("Error resolving ResultSetType. Cause: " + e, e);
+      throw new ParserException("Error resolving ResultSetType. Cause: " + e, e);
     }
   }
 
@@ -48,7 +43,7 @@
     try {
       return ParameterMode.valueOf(resolveAlias(alias));
     } catch (IllegalArgumentException e) {
-      throw new BuilderException("Error resolving ParameterMode. Cause: " + e, e);
+      throw new ParserException("Error resolving ParameterMode. Cause: " + e, e);
     }
   }
 
@@ -57,7 +52,7 @@
     try {
       return Class.forName(resolveAlias(alias));
     } catch (ClassNotFoundException e) {
-      throw new BuilderException("Error resolving class . Cause: " + e, e);
+      throw new ParserException("Error resolving class . Cause: " + e, e);
     }
   }
 
@@ -67,7 +62,7 @@
       Class type = resolveClass(alias);
       return type.newInstance();
     } catch (Exception e) {
-      throw new BuilderException("Error instantiating class. Cause: " + e, e);
+      throw new ParserException("Error instantiating class. Cause: " + e, e);
     }
   }
 

Modified: ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/MapperConfigParser.java
URL: http://svn.apache.org/viewvc/ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/MapperConfigParser.java?rev=721963&r1=721962&r2=721963&view=diff
==============================================================================
--- ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/MapperConfigParser.java (original)
+++ ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/MapperConfigParser.java Sun Nov 30 20:44:38 2008
@@ -55,7 +55,7 @@
     assert typeAliasRegistry != null;
     assert typeHandlerRegistry != null;
     if (parsed) {
-      throw new BuilderException("Each MapperConfigParser can only be used once.");
+      throw new ParserException("Each MapperConfigParser can only be used once.");
     }
     parsed = true;
     parser.parse(reader);
@@ -100,7 +100,7 @@
     String resource = context.getStringAttribute("resource");
     String url = context.getStringAttribute("url");
     if (resource != null && url != null) {
-      throw new BuilderException("The properties element cannot specify both a URL and a resource based property file reference.  Please specify one or the other.");
+      throw new ParserException("The properties element cannot specify both a URL and a resource based property file reference.  Please specify one or the other.");
     }
     if (resource != null) {
       defaults.putAll(Resources.getResourceAsProperties(resource));
@@ -124,7 +124,7 @@
     for (Map.Entry entry : props.entrySet()) {
       MetaClass metaConfig = MetaClass.forClass(Configuration.class);
       if (!metaConfig.hasSetter((String) entry.getKey())) {
-        throw new BuilderException("The setting " + entry.getKey() + " is not known.  Make sure you spelled it correctly (case sensitive).");
+        throw new ParserException("The setting " + entry.getKey() + " is not known.  Make sure you spelled it correctly (case sensitive).");
       }
     }
     configuration.setCacheEnabled(booleanValueOf(props.getProperty("cacheEnabled"), true));
@@ -218,7 +218,7 @@
     } else if (url != null && resource == null) {
       reader = Resources.getUrlAsReader(url);
     } else {
-      throw new BuilderException("A mapper element may only specify a url or resource, but not both.");
+      throw new ParserException("A mapper element may only specify a url or resource, but not both.");
     }
     MapperParser mapperParser = new MapperParser(reader, configuration);
     mapperParser.parse();
@@ -226,9 +226,9 @@
 
   private boolean isSpecifiedEnvironment() {
     if (environment == null) {
-      throw new BuilderException("No environment specified.");
+      throw new ParserException("No environment specified.");
     } else if (environmentBuilder.id() == null) {
-      throw new BuilderException("Environment requires an id attribute.");
+      throw new ParserException("Environment requires an id attribute.");
     } else if (environment.equals(environmentBuilder.id())) {
       return true;
     }

Modified: ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/MapperParser.java
URL: http://svn.apache.org/viewvc/ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/MapperParser.java?rev=721963&r1=721962&r2=721963&view=diff
==============================================================================
--- ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/MapperParser.java (original)
+++ ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/MapperParser.java Sun Nov 30 20:44:38 2008
@@ -54,7 +54,7 @@
   public void configurationElement(NodeletContext context) throws Exception {
     namespace = context.getStringAttribute("namespace");
     if (namespace == null) {
-      throw new BuilderException("The mapper element requires a namespace attribute to be specified.");
+      throw new ParserException("The mapper element requires a namespace attribute to be specified.");
     }
   }
 
@@ -63,11 +63,11 @@
   public void cacheRefElement(NodeletContext context) throws Exception {
     String ns = context.getStringAttribute("namespace");
     if (ns == null) {
-      throw new BuilderException("cache-ref element requires a namespace attribute.");
+      throw new ParserException("cache-ref element requires a namespace attribute.");
     }
     cache = configuration.getCache(namespaceCacheId(ns));
     if (cache == null) {
-      throw new BuilderException("No cache for namespace '"+ns+"' could be found.");
+      throw new ParserException("No cache for namespace '"+ns+"' could be found.");
     }
   }
 
@@ -144,7 +144,7 @@
     if (extend != null) {
       ResultMap resultMap = configuration.getResultMap(extend);
       if (resultMap == null) {
-        throw new BuilderException("ResultMap named in extends attribute of " + id + "does not exist or is not defined yet.");
+        throw new ParserException("ResultMap named in extends attribute of " + id + "does not exist or is not defined yet.");
       }
       resultMappings.addAll(resultMap.getResultMappings());
     }
@@ -398,7 +398,7 @@
       javaTypeClass = metaResultType.getSetterType(property);
     }
     if (javaTypeClass == null) {
-      throw new BuilderException("Could not determine javaType for result.  Specify property or javaType attribute.");
+      throw new ParserException("Could not determine javaType for result.  Specify property or javaType attribute.");
     }
     return javaTypeClass;
   }
@@ -436,7 +436,7 @@
       javaTypeClass = metaResultType.getGetterType(property);
     }
     if (javaTypeClass == null) {
-      throw new BuilderException("Could not determine javaType for result.  Specify property or javaType attribute.");
+      throw new ParserException("Could not determine javaType for result.  Specify property or javaType attribute.");
     }
     return javaTypeClass;
   }

Copied: ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/ParserException.java (from r721958, ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/BuilderException.java)
URL: http://svn.apache.org/viewvc/ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/ParserException.java?p2=ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/ParserException.java&p1=ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/BuilderException.java&r1=721958&r2=721963&rev=721963&view=diff
==============================================================================
--- ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/BuilderException.java (original)
+++ ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/ParserException.java Sun Nov 30 20:44:38 2008
@@ -2,21 +2,21 @@
 
 import org.apache.ibatis.mapping.SqlMapperException;
 
-public class BuilderException extends SqlMapperException {
+public class ParserException extends SqlMapperException {
 
-  public BuilderException() {
+  public ParserException() {
     super();
   }
 
-  public BuilderException(String message) {
+  public ParserException(String message) {
     super(message);
   }
 
-  public BuilderException(String message, Throwable cause) {
+  public ParserException(String message, Throwable cause) {
     super(message, cause);
   }
 
-  public BuilderException(Throwable cause) {
+  public ParserException(Throwable cause) {
     super(cause);
   }
 }

Modified: ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/SqlSourceParser.java
URL: http://svn.apache.org/viewvc/ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/SqlSourceParser.java?rev=721963&r1=721962&r2=721963&view=diff
==============================================================================
--- ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/SqlSourceParser.java (original)
+++ ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/SqlSourceParser.java Sun Nov 30 20:44:38 2008
@@ -57,7 +57,7 @@
             builder.typeHandler((TypeHandler) resolveInstance(value));
           }
         } else {
-          throw new BuilderException("Improper inline parameter map format.  Should be: #{propName,attr1=val1,attr2=val2}");
+          throw new ParserException("Improper inline parameter map format.  Should be: #{propName,attr1=val1,attr2=val2}");
         }
       }
       return builder.build();

Copied: ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/api/SqlSessionTest.java (from r721958, ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/builder/SqlMapperBuilderTest.java)
URL: http://svn.apache.org/viewvc/ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/api/SqlSessionTest.java?p2=ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/api/SqlSessionTest.java&p1=ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/builder/SqlMapperBuilderTest.java&r1=721958&r2=721963&rev=721963&view=diff
==============================================================================
--- ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/builder/SqlMapperBuilderTest.java (original)
+++ ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/api/SqlSessionTest.java Sun Nov 30 20:44:38 2008
@@ -1,4 +1,4 @@
-package org.apache.ibatis.builder;
+package org.apache.ibatis.api;
 
 import org.junit.*;
 import org.apache.ibatis.BaseDataTest;
@@ -10,7 +10,7 @@
 
 import domain.blog.Author;
 
-public class SqlMapperBuilderTest extends BaseDataTest {
+public class SqlSessionTest extends BaseDataTest {
   private static SqlSessionFactory sqlMapper;
 
   @BeforeClass
@@ -18,7 +18,7 @@
     createBlogDataSource();
     final String resource = "org/apache/ibatis/builder/MapperConfig.xml";
     final Reader reader = Resources.getResourceAsReader(resource);
-    sqlMapper = new SqlMapperBuilder().build(reader);
+    sqlMapper = new SqlSessionFactoryBuilder().build(reader);
   }
 
   @Test