Modified: 
openejb/trunk/openejb3/container/openejb-jee/src/main/java/org/apache/openejb/jee/jpa/Attributes.java
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb3/container/openejb-jee/src/main/java/org/apache/openejb/jee/jpa/Attributes.java?rev=665986&r1=665985&r2=665986&view=diff
==============================================================================
--- 
openejb/trunk/openejb3/container/openejb-jee/src/main/java/org/apache/openejb/jee/jpa/Attributes.java
 (original)
+++ 
openejb/trunk/openejb3/container/openejb-jee/src/main/java/org/apache/openejb/jee/jpa/Attributes.java
 Mon Jun  9 23:05:30 2008
@@ -17,8 +17,11 @@
 
 package org.apache.openejb.jee.jpa;
 
+import org.apache.openejb.jee.KeyedCollection;
+
 import java.util.ArrayList;
 import java.util.List;
+import java.util.Map;
 import javax.xml.bind.annotation.XmlAccessType;
 import javax.xml.bind.annotation.XmlAccessorType;
 import javax.xml.bind.annotation.XmlElement;
@@ -324,6 +327,15 @@
         return this.manyToMany;
     }
 
+    public Map<String, RelationField> getRelationshipFieldMap() {
+        KeyedCollection<String, RelationField> fields = new 
KeyedCollection<String, RelationField>();
+        if (oneToOne != null) fields.addAll(oneToOne);
+        if (oneToMany != null) fields.addAll(oneToMany);
+        if (manyToMany != null) fields.addAll(manyToMany);
+        if (manyToOne != null) fields.addAll(manyToOne);
+        return fields.toMap();
+    }
+
     /**
      * Gets the value of the embedded property.
      * 
@@ -382,4 +394,20 @@
         return this._transient;
     }
 
+
+    // TODO: This should not be necessary, but having an empty <attributes/> 
tag
+    // causes some of the unit tests to fail.  Not sure why.  Should be fixed.
+    public boolean isEmpty(){
+        if (id != null) return false;
+        if (embeddedId != null) return false;
+        if (basic != null) return false;
+        if (version != null) return false;
+        if (manyToOne != null) return false;
+        if (oneToMany != null) return false;
+        if (oneToOne != null) return false;
+        if (manyToMany != null) return false;
+        if (embedded != null) return false;
+        if (_transient != null) return false;
+        return true;
+    }
 }

Modified: 
openejb/trunk/openejb3/container/openejb-jee/src/main/java/org/apache/openejb/jee/jpa/Basic.java
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb3/container/openejb-jee/src/main/java/org/apache/openejb/jee/jpa/Basic.java?rev=665986&r1=665985&r2=665986&view=diff
==============================================================================
--- 
openejb/trunk/openejb3/container/openejb-jee/src/main/java/org/apache/openejb/jee/jpa/Basic.java
 (original)
+++ 
openejb/trunk/openejb3/container/openejb-jee/src/main/java/org/apache/openejb/jee/jpa/Basic.java
 Mon Jun  9 23:05:30 2008
@@ -260,4 +260,7 @@
         this.optional = value;
     }
 
+    public Object getKey() {
+        return name;
+    }
 }

Modified: 
openejb/trunk/openejb3/container/openejb-jee/src/main/java/org/apache/openejb/jee/jpa/Entity.java
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb3/container/openejb-jee/src/main/java/org/apache/openejb/jee/jpa/Entity.java?rev=665986&r1=665985&r2=665986&view=diff
==============================================================================
--- 
openejb/trunk/openejb3/container/openejb-jee/src/main/java/org/apache/openejb/jee/jpa/Entity.java
 (original)
+++ 
openejb/trunk/openejb3/container/openejb-jee/src/main/java/org/apache/openejb/jee/jpa/Entity.java
 Mon Jun  9 23:05:30 2008
@@ -184,6 +184,16 @@
     @XmlTransient
     protected String ejbName;
 
+    @XmlTransient
+    protected boolean xmlMetadataComplete;
+
+    public Entity() {
+    }
+
+    public Entity(String clazz) {
+        this.clazz = clazz;
+    }
+
     /**
      * Gets the value of the description property.
      * 
@@ -947,6 +957,14 @@
         this.ejbName = ejbName;
     }
 
+    public boolean isXmlMetadataComplete() {
+        return xmlMetadataComplete;
+    }
+
+    public void setXmlMetadataComplete(boolean xmlMetadataComplete) {
+        this.xmlMetadataComplete = xmlMetadataComplete;
+    }
+
     public void addField(Field field) {
         if (field == null) throw new NullPointerException("field is null");
         if (field instanceof Id) {

Modified: 
openejb/trunk/openejb3/container/openejb-jee/src/main/java/org/apache/openejb/jee/jpa/Field.java
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb3/container/openejb-jee/src/main/java/org/apache/openejb/jee/jpa/Field.java?rev=665986&r1=665985&r2=665986&view=diff
==============================================================================
--- 
openejb/trunk/openejb3/container/openejb-jee/src/main/java/org/apache/openejb/jee/jpa/Field.java
 (original)
+++ 
openejb/trunk/openejb3/container/openejb-jee/src/main/java/org/apache/openejb/jee/jpa/Field.java
 Mon Jun  9 23:05:30 2008
@@ -16,7 +16,9 @@
  */
 package org.apache.openejb.jee.jpa;
 
-public interface Field {
+import org.apache.openejb.jee.Keyable;
+
+public interface Field extends Keyable {
     Column getColumn();
 
     void setColumn(Column value);

Modified: 
openejb/trunk/openejb3/container/openejb-jee/src/main/java/org/apache/openejb/jee/jpa/Id.java
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb3/container/openejb-jee/src/main/java/org/apache/openejb/jee/jpa/Id.java?rev=665986&r1=665985&r2=665986&view=diff
==============================================================================
--- 
openejb/trunk/openejb3/container/openejb-jee/src/main/java/org/apache/openejb/jee/jpa/Id.java
 (original)
+++ 
openejb/trunk/openejb3/container/openejb-jee/src/main/java/org/apache/openejb/jee/jpa/Id.java
 Mon Jun  9 23:05:30 2008
@@ -232,4 +232,7 @@
         this.name = value;
     }
 
+    public Object getKey() {
+        return name;
+    }
 }

Modified: 
openejb/trunk/openejb3/container/openejb-jee/src/main/java/org/apache/openejb/jee/jpa/ManyToMany.java
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb3/container/openejb-jee/src/main/java/org/apache/openejb/jee/jpa/ManyToMany.java?rev=665986&r1=665985&r2=665986&view=diff
==============================================================================
--- 
openejb/trunk/openejb3/container/openejb-jee/src/main/java/org/apache/openejb/jee/jpa/ManyToMany.java
 (original)
+++ 
openejb/trunk/openejb3/container/openejb-jee/src/main/java/org/apache/openejb/jee/jpa/ManyToMany.java
 Mon Jun  9 23:05:30 2008
@@ -323,4 +323,8 @@
     public void setSyntheticField(boolean syntheticField) {
         this.syntheticField = syntheticField;
     }
+
+    public Object getKey() {
+        return name;
+    }
 }

Modified: 
openejb/trunk/openejb3/container/openejb-jee/src/main/java/org/apache/openejb/jee/jpa/ManyToOne.java
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb3/container/openejb-jee/src/main/java/org/apache/openejb/jee/jpa/ManyToOne.java?rev=665986&r1=665985&r2=665986&view=diff
==============================================================================
--- 
openejb/trunk/openejb3/container/openejb-jee/src/main/java/org/apache/openejb/jee/jpa/ManyToOne.java
 (original)
+++ 
openejb/trunk/openejb3/container/openejb-jee/src/main/java/org/apache/openejb/jee/jpa/ManyToOne.java
 Mon Jun  9 23:05:30 2008
@@ -307,4 +307,8 @@
     public void setSyntheticField(boolean syntheticField) {
         this.syntheticField = syntheticField;
     }
+
+    public Object getKey() {
+        return name;
+    }
 }

Modified: 
openejb/trunk/openejb3/container/openejb-jee/src/main/java/org/apache/openejb/jee/jpa/OneToMany.java
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb3/container/openejb-jee/src/main/java/org/apache/openejb/jee/jpa/OneToMany.java?rev=665986&r1=665985&r2=665986&view=diff
==============================================================================
--- 
openejb/trunk/openejb3/container/openejb-jee/src/main/java/org/apache/openejb/jee/jpa/OneToMany.java
 (original)
+++ 
openejb/trunk/openejb3/container/openejb-jee/src/main/java/org/apache/openejb/jee/jpa/OneToMany.java
 Mon Jun  9 23:05:30 2008
@@ -355,4 +355,8 @@
     public void setSyntheticField(boolean syntheticField) {
         this.syntheticField = syntheticField;
     }
+
+    public Object getKey() {
+        return name;
+    }
 }

Modified: 
openejb/trunk/openejb3/container/openejb-jee/src/main/java/org/apache/openejb/jee/jpa/OneToOne.java
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb3/container/openejb-jee/src/main/java/org/apache/openejb/jee/jpa/OneToOne.java?rev=665986&r1=665985&r2=665986&view=diff
==============================================================================
--- 
openejb/trunk/openejb3/container/openejb-jee/src/main/java/org/apache/openejb/jee/jpa/OneToOne.java
 (original)
+++ 
openejb/trunk/openejb3/container/openejb-jee/src/main/java/org/apache/openejb/jee/jpa/OneToOne.java
 Mon Jun  9 23:05:30 2008
@@ -350,4 +350,8 @@
     public void setSyntheticField(boolean syntheticField) {
         this.syntheticField = syntheticField;
     }
+
+    public Object getKey() {
+        return name;
+    }
 }

Modified: 
openejb/trunk/openejb3/container/openejb-jee/src/main/java/org/apache/openejb/jee/jpa/RelationField.java
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb3/container/openejb-jee/src/main/java/org/apache/openejb/jee/jpa/RelationField.java?rev=665986&r1=665985&r2=665986&view=diff
==============================================================================
--- 
openejb/trunk/openejb3/container/openejb-jee/src/main/java/org/apache/openejb/jee/jpa/RelationField.java
 (original)
+++ 
openejb/trunk/openejb3/container/openejb-jee/src/main/java/org/apache/openejb/jee/jpa/RelationField.java
 Mon Jun  9 23:05:30 2008
@@ -16,9 +16,11 @@
  */
 package org.apache.openejb.jee.jpa;
 
+import org.apache.openejb.jee.Keyable;
+
 import java.util.List;
 
-public interface RelationField {
+public interface RelationField extends Keyable {
     List<JoinColumn> getJoinColumn();
 
     JoinTable getJoinTable();

Modified: 
openejb/trunk/openejb3/container/openejb-jee/src/main/java/org/apache/openejb/jee/jpa/Transient.java
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb3/container/openejb-jee/src/main/java/org/apache/openejb/jee/jpa/Transient.java?rev=665986&r1=665985&r2=665986&view=diff
==============================================================================
--- 
openejb/trunk/openejb3/container/openejb-jee/src/main/java/org/apache/openejb/jee/jpa/Transient.java
 (original)
+++ 
openejb/trunk/openejb3/container/openejb-jee/src/main/java/org/apache/openejb/jee/jpa/Transient.java
 Mon Jun  9 23:05:30 2008
@@ -92,4 +92,8 @@
     public void setColumn(Column value) {
         throw new UnsupportedOperationException("Transient fields don't have 
column mappings");
     }
+
+    public Object getKey() {
+        return name;
+    }
 }


Reply via email to