You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cayenne.apache.org by aa...@apache.org on 2008/05/04 16:00:00 UTC

svn commit: r653209 - in /cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src: main/java/org/apache/cayenne/access/trans/ main/java/org/apache/cayenne/map/ test/java/org/apache/cayenne/access/ test/java/org/apache/cayenne/map/

Author: aadamchik
Date: Sun May  4 06:59:59 2008
New Revision: 653209

URL: http://svn.apache.org/viewvc?rev=653209&view=rev
Log:
CAY-802  Split Expressions
(renaming the new path resolving method name)

Modified:
    cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/access/trans/QueryAssemblerHelper.java
    cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/access/trans/SelectTranslator.java
    cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/map/DbEntity.java
    cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/map/Entity.java
    cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/map/ObjEntity.java
    cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/map/ObjRelationship.java
    cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/access/DataContextJoinAliasesTest.java
    cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/map/MockEntity.java

Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/access/trans/QueryAssemblerHelper.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/access/trans/QueryAssemblerHelper.java?rev=653209&r1=653208&r2=653209&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/access/trans/QueryAssemblerHelper.java (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/access/trans/QueryAssemblerHelper.java Sun May  4 06:59:59 2008
@@ -92,7 +92,7 @@
         ObjRelationship lastRelationship = null;
 
         for (PathComponent<ObjAttribute, ObjRelationship> component : getObjEntity()
-                .pathComponents(pathExp, queryAssembler.getJoinAliases())) {
+                .resolvePath(pathExp, queryAssembler.getJoinAliases())) {
 
             ObjRelationship relationship = component.getRelationship();
             ObjAttribute attribute = component.getAttribute();
@@ -131,7 +131,7 @@
     protected void appendDbPath(StringBuffer buf, Expression pathExp) {
 
         for (PathComponent<DbAttribute, DbRelationship> component : getDbEntity()
-                .pathComponents(pathExp, queryAssembler.getJoinAliases())) {
+                .resolvePath(pathExp, queryAssembler.getJoinAliases())) {
 
             DbRelationship relationship = component.getRelationship();
 

Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/access/trans/SelectTranslator.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/access/trans/SelectTranslator.java?rev=653209&r1=653208&r2=653209&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/access/trans/SelectTranslator.java (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/access/trans/SelectTranslator.java Sun May  4 06:59:59 2008
@@ -354,7 +354,7 @@
 
                 PathComponent<DbAttribute, DbRelationship> lastComponent = null;
                 for (PathComponent<DbAttribute, DbRelationship> component : table
-                        .pathComponents(pathExp, getJoinAliases())) {
+                        .resolvePath(pathExp, getJoinAliases())) {
 
                     // do not add join for the last DB Rel
                     if (component.getRelationship() != null && !component.isLast()) {
@@ -421,7 +421,7 @@
 
                 DbRelationship r = null;
                 for (PathComponent<DbAttribute, DbRelationship> component : table
-                        .pathComponents(dbPrefetch, getJoinAliases())) {
+                        .resolvePath(dbPrefetch, getJoinAliases())) {
                     r = component.getRelationship();
                     dbRelationshipAdded(r, JoinType.INNER);
                 }

Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/map/DbEntity.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/map/DbEntity.java?rev=653209&r1=653208&r2=653209&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/map/DbEntity.java (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/map/DbEntity.java Sun May  4 06:59:59 2008
@@ -276,7 +276,7 @@
      */
     @Override
     @SuppressWarnings("unchecked")
-    public Iterable<PathComponent<DbAttribute, DbRelationship>> pathComponents(
+    public Iterable<PathComponent<DbAttribute, DbRelationship>> resolvePath(
             final Expression pathExp,
             final Map aliasMap) {
 

Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/map/Entity.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/map/Entity.java?rev=653209&r1=653208&r2=653209&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/map/Entity.java (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/map/Entity.java Sun May  4 06:59:59 2008
@@ -289,9 +289,10 @@
      * 
      * @since 1.1
      */
+    // TODO: andrus 2008/05/03 - support aliases?
     public Object lastPathComponent(Expression pathExp) {
 
-        for (PathComponent<Attribute, Relationship> component : pathComponents(
+        for (PathComponent<Attribute, Relationship> component : resolvePath(
                 pathExp,
                 Collections.EMPTY_MAP)) {
             if (component.isLast()) {
@@ -305,19 +306,20 @@
     }
 
     /**
-     * Processes expression argument and returns an Iterable over the path components.
-     * Path expression can use aliases. In this case an optional aliasMap parameter will
-     * be consulted to resolve them.
+     * Returns an Iterable over the path components with elements represented as
+     * {@link PathComponent} instances, encapsulating a relationship, an attribute or a
+     * subpath alias. An optional "aliasMap" parameter is used to resolve subpaths from
+     * aliases.
      * <p>
-     * This method is lazy in a sense that if path is invalid and can not be resolved from
-     * this entity, this method will still return an Iterator, but an attempt to read the
-     * first invalid path component will result in ExpressionException.
+     * This method is lazy: if path is invalid and can not be resolved from this entity,
+     * this method will still return an Iterator, but an attempt to read the first invalid
+     * path component will result in ExpressionException.
      * </p>
      * 
      * @since 3.0
      */
     @SuppressWarnings("unchecked")
-    public abstract <T extends Attribute, U extends Relationship> Iterable<PathComponent<T, U>> pathComponents(
+    public abstract <T extends Attribute, U extends Relationship> Iterable<PathComponent<T, U>> resolvePath(
             Expression pathExp,
             Map aliasMap);
 

Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/map/ObjEntity.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/map/ObjEntity.java?rev=653209&r1=653208&r2=653209&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/map/ObjEntity.java (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/map/ObjEntity.java Sun May  4 06:59:59 2008
@@ -837,7 +837,7 @@
      */
     @Override
     @SuppressWarnings("unchecked")
-    public Iterable<PathComponent<ObjAttribute, ObjRelationship>> pathComponents(
+    public Iterable<PathComponent<ObjAttribute, ObjRelationship>> resolvePath(
             final Expression pathExp,
             final Map aliasMap) {
 

Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/map/ObjRelationship.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/map/ObjRelationship.java?rev=653209&r1=653208&r2=653209&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/map/ObjRelationship.java (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/map/ObjRelationship.java Sun May  4 06:59:59 2008
@@ -534,7 +534,7 @@
 
         try {
             for (PathComponent<DbAttribute, DbRelationship> pathComponent : dbEntity
-                    .pathComponents(new ASTDbPath(path), Collections.emptyMap())) {
+                    .resolvePath(new ASTDbPath(path), Collections.emptyMap())) {
 
                 if (validPath.length() > 0) {
                     validPath.append(Entity.PATH_SEPARATOR);

Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/access/DataContextJoinAliasesTest.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/access/DataContextJoinAliasesTest.java?rev=653209&r1=653208&r2=653209&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/access/DataContextJoinAliasesTest.java (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/access/DataContextJoinAliasesTest.java Sun May  4 06:59:59 2008
@@ -20,6 +20,7 @@
 
 import java.util.Date;
 import java.util.HashMap;
+import java.util.List;
 import java.util.Map;
 
 import org.apache.art.Artist;
@@ -60,10 +61,10 @@
         query.andQualifier(ExpressionFactory.matchExp("p.toArtist", picasso));
         query.andQualifier(ExpressionFactory.matchExp("d.toArtist", dali));
 
-        // List<Gallery> galleries = context.performQuery(query);
-        //
-        // assertEquals(1, galleries.size());
-        // assertEquals("G1", galleries.get(0).getGalleryName());
+//        List<Gallery> galleries = context.performQuery(query);
+//
+//        assertEquals(1, galleries.size());
+//        assertEquals("G1", galleries.get(0).getGalleryName());
     }
 
 }

Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/map/MockEntity.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/map/MockEntity.java?rev=653209&r1=653208&r2=653209&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/map/MockEntity.java (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/map/MockEntity.java Sun May  4 06:59:59 2008
@@ -52,7 +52,7 @@
     }
     
     @Override
-    public <T extends Attribute, U extends Relationship> Iterable<PathComponent<T, U>> pathComponents(
+    public <T extends Attribute, U extends Relationship> Iterable<PathComponent<T, U>> resolvePath(
             Expression pathExp, Map joinAliases) {
         return null;
     }