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 2009/01/03 07:23:21 UTC

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

Author: cbegin
Date: Fri Jan  2 22:23:21 2009
New Revision: 730920

URL: http://svn.apache.org/viewvc?rev=730920&view=rev
Log:
Added association element

Modified:
    ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/parser/MapperParser.java
    ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/parser/ibatis-mapper-3.dtd
    ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/api/SqlSessionTest.java
    ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/parser/BlogMapper.xml

Modified: ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/parser/MapperParser.java
URL: http://svn.apache.org/viewvc/ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/parser/MapperParser.java?rev=730920&r1=730919&r2=730920&view=diff
==============================================================================
--- ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/parser/MapperParser.java (original)
+++ ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/parser/MapperParser.java Fri Jan  2 22:23:21 2009
@@ -208,6 +208,13 @@
     resultMappings.add(builder.build());
   }
 
+  //  <association property="" column="" javaType="" select="" resultMap=""/>
+  @Nodelet("/mapper/resultMap/association")
+  public void resultMapAssociationElement(NodeletContext context) throws Exception {
+    ResultMapping.Builder builder = buildResultMappingFromContext(context);
+    resultMappings.add(builder.build());
+  }
+
   //  <discriminator column="" javaType="" jdbcType="">
   @Nodelet("/mapper/resultMap/discriminator")
   public void resultMapDiscriminatorElement(NodeletContext context) throws Exception {

Modified: ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/parser/ibatis-mapper-3.dtd
URL: http://svn.apache.org/viewvc/ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/parser/ibatis-mapper-3.dtd?rev=730920&r1=730919&r2=730920&view=diff
==============================================================================
--- ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/parser/ibatis-mapper-3.dtd (original)
+++ ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/parser/ibatis-mapper-3.dtd Fri Jan  2 22:23:21 2009
@@ -37,7 +37,7 @@
 typeHandler CDATA #IMPLIED
 >
 
-<!ELEMENT resultMap (constructor?,id*,result*,collection*, discriminator?)>
+<!ELEMENT resultMap (constructor?,id*,result*,association*,collection*, discriminator?)>
 <!ATTLIST resultMap
 id CDATA #REQUIRED
 type CDATA #REQUIRED
@@ -75,6 +75,17 @@
 typeHandler CDATA #IMPLIED
 >
 
+<!ELEMENT association EMPTY>
+<!ATTLIST association
+property CDATA #REQUIRED
+column CDATA #IMPLIED
+javaType CDATA #IMPLIED
+jdbcType CDATA #IMPLIED
+select CDATA #IMPLIED
+resultMap CDATA #IMPLIED
+typeHandler CDATA #IMPLIED
+>
+
 <!ELEMENT discriminator (case+)>
 <!ATTLIST discriminator
 column CDATA #IMPLIED

Modified: ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/api/SqlSessionTest.java
URL: http://svn.apache.org/viewvc/ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/api/SqlSessionTest.java?rev=730920&r1=730919&r2=730920&view=diff
==============================================================================
--- ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/api/SqlSessionTest.java (original)
+++ ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/api/SqlSessionTest.java Fri Jan  2 22:23:21 2009
@@ -169,6 +169,8 @@
       Assert.assertEquals("Jim Business", blog.getTitle());
       Assert.assertEquals(2, blog.getPosts().size());
       Assert.assertEquals("Corn nuts",blog.getPosts().get(0).getSubject());
+      Assert.assertEquals(101,blog.getAuthor().getId());
+      Assert.assertEquals("jim",blog.getAuthor().getUsername());
     } finally {
       session.close();
     }

Modified: ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/parser/BlogMapper.xml
URL: http://svn.apache.org/viewvc/ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/parser/BlogMapper.xml?rev=730920&r1=730919&r2=730920&view=diff
==============================================================================
--- ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/parser/BlogMapper.xml (original)
+++ ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/parser/BlogMapper.xml Fri Jan  2 22:23:21 2009
@@ -9,6 +9,7 @@
   <resultMap id="blogWithPosts" type="Blog">
     <id property="id" column="id" />
     <result property="title" column="title" />
+    <association property="author" column="author_id" select="com.domain.AuthorMapper.selectAuthorWithInlineParams"/>
     <collection property="posts" column="id" select="selectPostsForBlog" />
   </resultMap>