You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cayenne.apache.org by am...@apache.org on 2007/12/17 12:11:34 UTC
svn commit: r604825 - in
/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne:
./ access/ access/trans/ project/validator/ reflect/
Author: amaniatis
Date: Mon Dec 17 03:11:32 2007
New Revision: 604825
URL: http://svn.apache.org/viewvc?rev=604825&view=rev
Log:
Fix a couple of junit issues created by the previous commit (moving EmbeddedAttribute into subclass of ObjAttribute)
Modified:
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/CayenneDataObject.java
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/access/DataDomainSyncBucket.java
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/project/validator/TreeNodeValidator.java
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/reflect/PersistentDescriptorFactory.java
Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/CayenneDataObject.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/CayenneDataObject.java?rev=604825&r1=604824&r2=604825&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/CayenneDataObject.java (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/CayenneDataObject.java Mon Dec 17 03:11:32 2007
@@ -35,6 +35,7 @@
import org.apache.cayenne.map.DbAttribute;
import org.apache.cayenne.map.DbJoin;
import org.apache.cayenne.map.DbRelationship;
+import org.apache.cayenne.map.EmbeddedAttribute;
import org.apache.cayenne.map.EntityResolver;
import org.apache.cayenne.map.ObjAttribute;
import org.apache.cayenne.map.ObjEntity;
@@ -563,7 +564,7 @@
for (Object next : objEntity.getAttributes()) {
// TODO: andrus, 2/20/2007 - handle embedded attribute
- if (!(next instanceof ObjAttribute)) {
+ if (next instanceof EmbeddedAttribute) {
continue;
}
Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/access/DataDomainSyncBucket.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/access/DataDomainSyncBucket.java?rev=604825&r1=604824&r2=604825&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/access/DataDomainSyncBucket.java (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/access/DataDomainSyncBucket.java Mon Dec 17 03:11:32 2007
@@ -34,6 +34,7 @@
import org.apache.cayenne.graph.CompoundDiff;
import org.apache.cayenne.graph.NodeIdChangeOperation;
import org.apache.cayenne.map.DbEntity;
+import org.apache.cayenne.map.EmbeddedAttribute;
import org.apache.cayenne.map.ObjAttribute;
import org.apache.cayenne.map.ObjEntity;
import org.apache.cayenne.reflect.ArcProperty;
@@ -122,16 +123,11 @@
// Note that this logic won't allow flattened attributes to span multiple
// databases...
- Iterator j = descriptor.getEntity().getAttributeMap().values().iterator();
- while (j.hasNext()) {
- Object next = j.next();
-
+ for (ObjAttribute objAttribute : descriptor.getEntity().getAttributeMap().values()) {
// TODO: andrus, 2/10/2007 - handle embedded
- if (!(next instanceof ObjAttribute)) {
+ if (objAttribute instanceof EmbeddedAttribute) {
continue;
}
-
- ObjAttribute objAttribute = (ObjAttribute) next;
if (!objAttribute.isCompound()) {
continue;
}
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=604825&r1=604824&r2=604825&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 Mon Dec 17 03:11:32 2007
@@ -33,6 +33,7 @@
import org.apache.cayenne.map.DbEntity;
import org.apache.cayenne.map.DbJoin;
import org.apache.cayenne.map.DbRelationship;
+import org.apache.cayenne.map.EmbeddableAttribute;
import org.apache.cayenne.map.ObjAttribute;
import org.apache.cayenne.map.ObjEntity;
import org.apache.cayenne.map.ObjRelationship;
@@ -316,6 +317,10 @@
Expression expression = (Expression) op;
if (expression.getType() == Expression.OBJ_PATH) {
Object last = getObjEntity().lastPathComponent(expression);
+ //TODO: handle EmbeddableAttribute
+ if (last instanceof EmbeddableAttribute)
+ break;
+
if (last instanceof ObjAttribute) {
attribute = ((ObjAttribute) last).getDbAttribute();
break;
Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/project/validator/TreeNodeValidator.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/project/validator/TreeNodeValidator.java?rev=604825&r1=604824&r2=604825&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/project/validator/TreeNodeValidator.java (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/project/validator/TreeNodeValidator.java Mon Dec 17 03:11:32 2007
@@ -25,6 +25,7 @@
import org.apache.cayenne.map.DbAttribute;
import org.apache.cayenne.map.DbEntity;
import org.apache.cayenne.map.DbRelationship;
+import org.apache.cayenne.map.EmbeddedAttribute;
import org.apache.cayenne.map.ObjAttribute;
import org.apache.cayenne.map.ObjEntity;
import org.apache.cayenne.map.ObjRelationship;
@@ -69,6 +70,10 @@
public static void validate(ProjectPath path, Validator validator) {
Object validatedObj = path.getObject();
TreeNodeValidator validatorObj = null;
+ if (validatedObj instanceof EmbeddedAttribute) {
+ //TODO
+ return;
+ }
if (validatedObj instanceof ObjAttribute) {
validatorObj = objAttrValidator;
}
Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/reflect/PersistentDescriptorFactory.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/reflect/PersistentDescriptorFactory.java?rev=604825&r1=604824&r2=604825&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/reflect/PersistentDescriptorFactory.java (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/reflect/PersistentDescriptorFactory.java Mon Dec 17 03:11:32 2007
@@ -70,14 +70,13 @@
// only include this entity attributes and skip superclasses...
for (Attribute attribute : descriptor.getEntity().getDeclaredAttributes()) {
- if (attribute instanceof ObjAttribute) {
- createAttributeProperty(descriptor, (ObjAttribute) attribute);
- }
- else if (attribute instanceof EmbeddedAttribute) {
+ if (attribute instanceof EmbeddedAttribute) {
EmbeddedAttribute embedded = (EmbeddedAttribute) attribute;
for (ObjAttribute objAttribute : embedded.getAttributes()) {
createEmbeddedAttributeProperty(descriptor, embedded, objAttribute);
}
+ } else if (attribute instanceof ObjAttribute) {
+ createAttributeProperty(descriptor, (ObjAttribute) attribute);
}
}