You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by da...@apache.org on 2007/03/23 22:40:00 UTC

svn commit: r521910 [2/4] - in /incubator/openejb/trunk/openejb3: container/openejb-core/src/main/java/org/apache/openejb/core/cmp/cmp2/ container/openejb-core/src/main/java/org/apache/openejb/core/cmp/jpa/ container/openejb-core/src/main/java/org/apac...

Copied: incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/manytomany/PlatformLocalHome.java (from r520977, incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/manytomany/ALocalHome.java)
URL: http://svn.apache.org/viewvc/incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/manytomany/PlatformLocalHome.java?view=diff&rev=521910&p1=incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/manytomany/ALocalHome.java&r1=520977&p2=incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/manytomany/PlatformLocalHome.java&r2=521910
==============================================================================
--- incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/manytomany/ALocalHome.java (original)
+++ incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/manytomany/PlatformLocalHome.java Fri Mar 23 14:39:54 2007
@@ -20,20 +20,15 @@
 import javax.ejb.EJBLocalHome;
 import javax.ejb.FinderException;
 
-import org.apache.openejb.test.entity.cmr.CompoundPK;
-
 /**
- *
  * @version $Revision: 451417 $ $Date: 2006-09-29 13:13:22 -0700 (Fri, 29 Sep 2006) $
  */
-public interface ALocalHome extends EJBLocalHome {
-
+public interface PlatformLocalHome extends EJBLocalHome {
     // Create
-    public ALocal create(Integer field1) throws CreateException;
-    public ALocal create(CompoundPK primaryKey) throws CreateException;
+    public PlatformLocal create(Integer primaryKey) throws CreateException;
+    public PlatformLocal create(PlatformPk primaryKey) throws CreateException;
 
     // Finder
-    public ALocal findByPrimaryKey(Integer primaryKey) throws FinderException;
-    public ALocal findByPrimaryKey(CompoundPK primaryKey) throws FinderException;
-
+    public PlatformLocal findByPrimaryKey(Integer primaryKey) throws FinderException;
+    public PlatformLocal findByPrimaryKey(PlatformPk primaryKey) throws FinderException;
 }

Added: incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/manytomany/PlatformPk.java
URL: http://svn.apache.org/viewvc/incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/manytomany/PlatformPk.java?view=auto&rev=521910
==============================================================================
--- incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/manytomany/PlatformPk.java (added)
+++ incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/manytomany/PlatformPk.java Fri Mar 23 14:39:54 2007
@@ -0,0 +1,48 @@
+/**
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ */
+package org.apache.openejb.test.entity.cmr.manytomany;
+
+public class PlatformPk {
+    public Integer id;
+    public String name;
+
+
+    public PlatformPk() {
+    }
+
+    public PlatformPk(Integer id, String name) {
+        this.id = id;
+        this.name = name;
+    }
+
+    public boolean equals(Object o) {
+        if (this == o) return true;
+        if (o == null || getClass() != o.getClass()) return false;
+
+        PlatformPk that = (PlatformPk) o;
+
+        return id.equals(that.id) && name.equals(that.name);
+    }
+
+    public int hashCode() {
+        int result;
+        result = id.hashCode();
+        result = 31 * result + name.hashCode();
+        return result;
+    }
+}

Copied: incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetomany/ArtistBean.java (from r520977, incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetomany/ABean.java)
URL: http://svn.apache.org/viewvc/incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetomany/ArtistBean.java?view=diff&rev=521910&p1=incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetomany/ABean.java&r1=520977&p2=incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetomany/ArtistBean.java&r2=521910
==============================================================================
--- incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetomany/ABean.java (original)
+++ incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetomany/ArtistBean.java Fri Mar 23 14:39:54 2007
@@ -26,50 +26,44 @@
 import org.apache.openejb.test.entity.cmr.CompoundPK;
 
 /**
- *
  * @version $Revision: 451417 $ $Date: 2006-09-29 13:13:22 -0700 (Fri, 29 Sep 2006) $
  */
-public abstract class ABean implements EntityBean {
-
-    private EntityContext context;
-    
+public abstract class ArtistBean implements EntityBean {
     // CMP
-    public abstract Integer getField1();
-    public abstract void setField1(Integer field1);
+    public abstract Integer getId();
+    public abstract void setId(Integer id);
 
-    public abstract String getField2();
-    public abstract void setField2(String field2);
+    public abstract String getName();
+    public abstract void setName(String name);
     
     // CMR
-    public abstract Set<BLocal> getB();
-    public abstract void setB(Set<BLocal> bSet);
+    public abstract Set<SongLocal> getPerformed();
+    public abstract void setPerformed(Set<SongLocal> songs);
 
-    public abstract Set<BLocal> getBNonCascade();
-    public abstract void setBNonCascade(Set<BLocal> bNonCascade);
+    public abstract Set<SongLocal> getComposed();
+    public abstract void setComposed(Set<SongLocal> desserts);
 
-    public Integer ejbCreate(Integer field1)  throws CreateException {
-        setField1(field1);
+    public Integer ejbCreate(Integer id)  throws CreateException {
+        setId(id);
         return null;
     }
 
-    public void ejbPostCreate(Integer field1) {
+    public void ejbPostCreate(Integer id) {
     }
 
-    public CompoundPK ejbCreate(CompoundPK primaryKey)  throws CreateException {
-        setField1(primaryKey.field1);
-        setField2(primaryKey.field2);
+    public CompoundPK ejbCreate(ArtistPk primaryKey)  throws CreateException {
+        setId(primaryKey.id);
+        setName(primaryKey.name);
         return null;
     }
 
-    public void ejbPostCreate(CompoundPK primaryKey) {
+    public void ejbPostCreate(ArtistPk primaryKey) {
     }
 
     public void setEntityContext(EntityContext ctx) {
-        context = ctx;
     }
 
     public void unsetEntityContext() {
-        context = null;
     }
 
     public void ejbActivate() {

Copied: incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetomany/ArtistLocal.java (from r520977, incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetomany/ALocal.java)
URL: http://svn.apache.org/viewvc/incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetomany/ArtistLocal.java?view=diff&rev=521910&p1=incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetomany/ALocal.java&r1=520977&p2=incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetomany/ArtistLocal.java&r2=521910
==============================================================================
--- incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetomany/ALocal.java (original)
+++ incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetomany/ArtistLocal.java Fri Mar 23 14:39:54 2007
@@ -20,22 +20,20 @@
 import javax.ejb.EJBLocalObject;
 
 /**
- *
  * @version $Revision: 451417 $ $Date: 2006-09-29 13:13:22 -0700 (Fri, 29 Sep 2006) $
  */
-public interface ALocal extends EJBLocalObject {
-
+public interface ArtistLocal extends EJBLocalObject {
     // CMP
-    public Integer getField1();
-    public void setField1(Integer field1);
+    public Integer getId();
+    public void setId(Integer id);
 
-    public String getField2();
-    public void setField2(String field2);
+    public String getName();
+    public void setName(String name);
     
     // CMR
-    public Set<BLocal> getB();
-    public void setB(Set<BLocal> bSet);
+    public Set<SongLocal> getPerformed();
+    public void setPerformed(Set<SongLocal> performed);
 
-    public Set<BLocal> getBNonCascade();
-    public void setBNonCascade(Set<BLocal> bNonCascade);
+    public Set<SongLocal> getComposed();
+    public void setComposed(Set<SongLocal> composed);
 }

Copied: incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetomany/ArtistLocalHome.java (from r520977, incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetomany/ALocalHome.java)
URL: http://svn.apache.org/viewvc/incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetomany/ArtistLocalHome.java?view=diff&rev=521910&p1=incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetomany/ALocalHome.java&r1=520977&p2=incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetomany/ArtistLocalHome.java&r2=521910
==============================================================================
--- incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetomany/ALocalHome.java (original)
+++ incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetomany/ArtistLocalHome.java Fri Mar 23 14:39:54 2007
@@ -20,21 +20,15 @@
 import javax.ejb.EJBLocalHome;
 import javax.ejb.FinderException;
 
-import org.apache.openejb.test.entity.cmr.CompoundPK;
-
-
 /**
- *
  * @version $Revision: 451417 $ $Date: 2006-09-29 13:13:22 -0700 (Fri, 29 Sep 2006) $
  */
-public interface ALocalHome extends EJBLocalHome {
-
+public interface ArtistLocalHome extends EJBLocalHome {
     // Create
-    public ALocal create(Integer field1) throws CreateException;
-    public ALocal create(CompoundPK primaryKey) throws CreateException;
+    public ArtistLocal create(Integer field1) throws CreateException;
+    public ArtistLocal create(ArtistPk primaryKey) throws CreateException;
 
     // Finder
-    public ALocal findByPrimaryKey(Integer primaryKey) throws FinderException;
-    public ALocal findByPrimaryKey(CompoundPK primaryKey) throws FinderException;
-
+    public ArtistLocal findByPrimaryKey(Integer primaryKey) throws FinderException;
+    public ArtistLocal findByPrimaryKey(ArtistPk primaryKey) throws FinderException;
 }

Added: incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetomany/ArtistPk.java
URL: http://svn.apache.org/viewvc/incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetomany/ArtistPk.java?view=auto&rev=521910
==============================================================================
--- incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetomany/ArtistPk.java (added)
+++ incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetomany/ArtistPk.java Fri Mar 23 14:39:54 2007
@@ -0,0 +1,48 @@
+/**
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ */
+package org.apache.openejb.test.entity.cmr.onetomany;
+
+public class ArtistPk {
+    public Integer id;
+    public String name;
+
+    public ArtistPk() {
+    }
+
+
+    public ArtistPk(Integer id, String name) {
+        this.id = id;
+        this.name = name;
+    }
+
+    public boolean equals(Object o) {
+        if (this == o) return true;
+        if (o == null || getClass() != o.getClass()) return false;
+
+        ArtistPk artistPk = (ArtistPk) o;
+
+        return id.equals(artistPk.id) && name.equals(artistPk.name);
+    }
+
+    public int hashCode() {
+        int result;
+        result = id.hashCode();
+        result = 31 * result + name.hashCode();
+        return result;
+    }
+}

Copied: incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetomany/SongBean.java (from r520977, incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetomany/BBean.java)
URL: http://svn.apache.org/viewvc/incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetomany/SongBean.java?view=diff&rev=521910&p1=incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetomany/BBean.java&r1=520977&p2=incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetomany/SongBean.java&r2=521910
==============================================================================
--- incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetomany/BBean.java (original)
+++ incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetomany/SongBean.java Fri Mar 23 14:39:54 2007
@@ -27,53 +27,48 @@
  *
  * @version $Revision: 451417 $ $Date: 2006-09-29 13:13:22 -0700 (Fri, 29 Sep 2006) $
  */
-public abstract class BBean implements EntityBean {
-
-    private EntityContext context;
-    
+public abstract class SongBean implements EntityBean {
     // CMP
-    public abstract Integer getField1();
-    public abstract void setField1(Integer field1);
+    public abstract Integer getId();
+    public abstract void setId(Integer id);
 
-    public abstract String getField2();
-    public abstract void setField2(String field2);
+    public abstract String getName();
+    public abstract void setName(String name);
 
-    public abstract Integer getField3();
-    public abstract void setField3(Integer field3);
+    public abstract Integer getBpm();
+    public abstract void setBpm(Integer bpm);
 
-    public abstract String getField4();
-    public abstract void setField4(String field4);
+    public abstract String getDescription();
+    public abstract void setDescription(String description);
 
     // CMR
-    public abstract ALocal getA();
-    public abstract void setA(ALocal a);
+    public abstract ArtistLocal getPerformer();
+    public abstract void setPerformer(ArtistLocal performer);
 
-    public abstract ALocal getANonCascade();
-    public abstract void setANonCascade(ALocal aNonCascade);
+    public abstract ArtistLocal getComposer();
+    public abstract void setComposer(ArtistLocal composer);
     
-    public Integer ejbCreate(Integer field1)  throws CreateException {
-        setField1(field1);
+    public Integer ejbCreate(Integer id)  throws CreateException {
+        setId(id);
         return null;
     }
 
-    public void ejbPostCreate(Integer field1) {
+    public void ejbPostCreate(Integer id) {
     }
 
-    public CompoundPK ejbCreate(CompoundPK primaryKey)  throws CreateException {
-        setField1(primaryKey.field1);
-        setField2(primaryKey.field2);
+    public CompoundPK ejbCreate(SongPk primaryKey)  throws CreateException {
+        setId(primaryKey.id);
+        setName(primaryKey.name);
         return null;
     }
 
-    public void ejbPostCreate(CompoundPK primaryKey) {
+    public void ejbPostCreate(SongPk primaryKey) {
     }
     
     public void setEntityContext(EntityContext ctx) {
-        context = ctx;
     }
 
     public void unsetEntityContext() {
-        context = null;
     }
 
     public void ejbActivate() {

Copied: incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetomany/SongLocal.java (from r520977, incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetomany/BLocal.java)
URL: http://svn.apache.org/viewvc/incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetomany/SongLocal.java?view=diff&rev=521910&p1=incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetomany/BLocal.java&r1=520977&p2=incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetomany/SongLocal.java&r2=521910
==============================================================================
--- incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetomany/BLocal.java (original)
+++ incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetomany/SongLocal.java Fri Mar 23 14:39:54 2007
@@ -19,28 +19,26 @@
 import javax.ejb.EJBLocalObject;
 
 /**
- *
  * @version $Revision: 451417 $ $Date: 2006-09-29 13:13:22 -0700 (Fri, 29 Sep 2006) $
  */
-public interface BLocal extends EJBLocalObject {
-
+public interface SongLocal extends EJBLocalObject {
     // CMP
-    public Integer getField1();
-    public void setField1(Integer field1);
+    public Integer getId();
+    public void setId(Integer id);
 
-    public String getField2();
-    public void setField2(String field2);
+    public String getName();
+    public void setName(String name);
 
-    public Integer getField3();
-    public void setField3(Integer field3);
+    public Integer getBpm();
+    public void setBpm(Integer bpm);
 
-    public String getField4();
-    public void setField4(String field4);
+    public String getDescription();
+    public void setDescription(String description);
 
     // CMR
-    public ALocal getA();
-    public void setA(ALocal a);
+    public ArtistLocal getPerformer();
+    public void setPerformer(ArtistLocal performer);
 
-    public ALocal getANonCascade();
-    public void setANonCascade(ALocal aNonCascade);    
+    public ArtistLocal getComposer();
+    public void setComposer(ArtistLocal composer);
 }

Copied: incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetomany/SongLocalHome.java (from r520977, incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetomany/BLocalHome.java)
URL: http://svn.apache.org/viewvc/incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetomany/SongLocalHome.java?view=diff&rev=521910&p1=incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetomany/BLocalHome.java&r1=520977&p2=incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetomany/SongLocalHome.java&r2=521910
==============================================================================
--- incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetomany/BLocalHome.java (original)
+++ incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetomany/SongLocalHome.java Fri Mar 23 14:39:54 2007
@@ -20,19 +20,15 @@
 import javax.ejb.EJBLocalHome;
 import javax.ejb.FinderException;
 
-import org.apache.openejb.test.entity.cmr.CompoundPK;
-
-
 /**
- *
  * @version $Revision: 451417 $ $Date: 2006-09-29 13:13:22 -0700 (Fri, 29 Sep 2006) $
  */
-public interface BLocalHome extends EJBLocalHome {
+public interface SongLocalHome extends EJBLocalHome {
     // Create
-    public BLocal create(Integer field1) throws CreateException;
-    public BLocal create(CompoundPK primaryKey) throws CreateException;
+    public SongLocal create(Integer field1) throws CreateException;
+    public SongLocal create(SongPk primaryKey) throws CreateException;
 
     // Finder
-    public BLocal findByPrimaryKey(Integer primaryKey) throws FinderException;
-    public BLocal findByPrimaryKey(CompoundPK primaryKey) throws FinderException;
+    public SongLocal findByPrimaryKey(Integer primaryKey) throws FinderException;
+    public SongLocal findByPrimaryKey(SongPk primaryKey) throws FinderException;
 }

Added: incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetomany/SongPk.java
URL: http://svn.apache.org/viewvc/incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetomany/SongPk.java?view=auto&rev=521910
==============================================================================
--- incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetomany/SongPk.java (added)
+++ incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetomany/SongPk.java Fri Mar 23 14:39:54 2007
@@ -0,0 +1,48 @@
+/**
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ */
+package org.apache.openejb.test.entity.cmr.onetomany;
+
+public class SongPk {
+    public Integer id;
+    public String name;
+
+    public SongPk() {
+    }
+
+
+    public SongPk(Integer id, String name) {
+        this.id = id;
+        this.name = name;
+    }
+
+    public boolean equals(Object o) {
+        if (this == o) return true;
+        if (o == null || getClass() != o.getClass()) return false;
+
+        SongPk menuPk = (SongPk) o;
+
+        return id.equals(menuPk.id) && name.equals(menuPk.name);
+    }
+
+    public int hashCode() {
+        int result;
+        result = id.hashCode();
+        result = 31 * result + name.hashCode();
+        return result;
+    }
+}

Copied: incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetoone/LicenseBean.java (from r520977, incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetoone/BBean.java)
URL: http://svn.apache.org/viewvc/incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetoone/LicenseBean.java?view=diff&rev=521910&p1=incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetoone/BBean.java&r1=520977&p2=incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetoone/LicenseBean.java&r2=521910
==============================================================================
--- incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetoone/BBean.java (original)
+++ incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetoone/LicenseBean.java Fri Mar 23 14:39:54 2007
@@ -24,53 +24,47 @@
 import org.apache.openejb.test.entity.cmr.CompoundPK;
 
 /**
- *
  * @version $Revision: 451417 $ $Date: 2006-09-29 13:13:22 -0700 (Fri, 29 Sep 2006) $
  */
-public abstract class BBean implements EntityBean {
-
-    private EntityContext context;
-
+public abstract class LicenseBean implements EntityBean {
     // CMP
-    public abstract Integer getField1();
-    public abstract void setField1(Integer field1);
+    public abstract Integer getId();
+    public abstract void setId(Integer id);
 
-    public abstract String getField2();
-    public abstract void setField2(String field2);
+    public abstract String getNumber();
+    public abstract void setNumber(String number);
 
-    public abstract Integer getField3();
-    public abstract void setField3(Integer field3);
+    public abstract Integer getPoints();
+    public abstract void setPoints(Integer points);
 
-    public abstract String getField4();
-    public abstract void setField4(String field4);
+    public abstract String getNotes();
+    public abstract void setNotes(String notes);
 
     // CMR
-    public abstract ALocal getA();
-    public abstract void setA(ALocal b);
+    public abstract PersonLocal getPerson();
+    public abstract void setPerson(PersonLocal personLocal);
     
-    public Integer ejbCreate(Integer field1)  throws CreateException {
-        setField1(field1);
+    public Integer ejbCreate(Integer id)  throws CreateException {
+        setId(id);
         return null;
     }
 
-    public void ejbPostCreate(Integer field1) {
+    public void ejbPostCreate(Integer id) {
     }
 
-    public CompoundPK ejbCreate(CompoundPK primaryKey)  throws CreateException {
-        setField1(primaryKey.field1);
-        setField2(primaryKey.field2);
+    public CompoundPK ejbCreate(LicensePk primaryKey)  throws CreateException {
+        setId(primaryKey.id);
+        setNumber(primaryKey.number);
         return null;
     }
 
-    public void ejbPostCreate(CompoundPK primaryKey) {
+    public void ejbPostCreate(LicensePk primaryKey) {
     }
 
     public void setEntityContext(EntityContext ctx) {
-        context = ctx;
     }
 
     public void unsetEntityContext() {
-        context = null;
     }
 
     public void ejbActivate() {

Copied: incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetoone/LicenseLocal.java (from r520977, incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetoone/BLocal.java)
URL: http://svn.apache.org/viewvc/incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetoone/LicenseLocal.java?view=diff&rev=521910&p1=incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetoone/BLocal.java&r1=520977&p2=incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetoone/LicenseLocal.java&r2=521910
==============================================================================
--- incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetoone/BLocal.java (original)
+++ incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetoone/LicenseLocal.java Fri Mar 23 14:39:54 2007
@@ -22,23 +22,23 @@
  *
  * @version $Revision: 451417 $ $Date: 2006-09-29 13:13:22 -0700 (Fri, 29 Sep 2006) $
  */
-public interface BLocal extends EJBLocalObject {
+public interface LicenseLocal extends EJBLocalObject {
 
     // CMP
-    public Integer getField1();
-    public void setField1(Integer field1);
+    public Integer getId();
+    public void setId(Integer id);
 
-    public String getField2();
-    public void setField2(String field2);
+    public String getNumber();
+    public void setNumber(String number);
 
-    public Integer getField3();
-    public void setField3(Integer field3);
+    public Integer getPoints();
+    public void setPoints(Integer points);
 
-    public String getField4();
-    public void setField4(String field4);
+    public String getNotes();
+    public void setNotes(String notes);
 
     // CMR
-    public ALocal getA();
-    public void setA(ALocal a);
+    public PersonLocal getPerson();
+    public void setPerson(PersonLocal person);
     
 }

Copied: incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetoone/LicenseLocalHome.java (from r520977, incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetoone/BLocalHome.java)
URL: http://svn.apache.org/viewvc/incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetoone/LicenseLocalHome.java?view=diff&rev=521910&p1=incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetoone/BLocalHome.java&r1=520977&p2=incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetoone/LicenseLocalHome.java&r2=521910
==============================================================================
--- incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetoone/BLocalHome.java (original)
+++ incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetoone/LicenseLocalHome.java Fri Mar 23 14:39:54 2007
@@ -20,20 +20,16 @@
 import javax.ejb.EJBLocalHome;
 import javax.ejb.FinderException;
 
-import org.apache.openejb.test.entity.cmr.CompoundPK;
-
-
 /**
- *
  * @version $Revision: 451417 $ $Date: 2006-09-29 13:13:22 -0700 (Fri, 29 Sep 2006) $
  */
-public interface BLocalHome extends EJBLocalHome {
+public interface LicenseLocalHome extends EJBLocalHome {
 
     // Create
-    public BLocal create(Integer field1) throws CreateException;
-    public BLocal create(CompoundPK primaryKey) throws CreateException;
+    public LicenseLocal create(Integer field1) throws CreateException;
+    public LicenseLocal create(LicensePk primaryKey) throws CreateException;
 
     // Finder
-    public BLocal findByPrimaryKey(Integer primaryKey) throws FinderException;
-    public BLocal findByPrimaryKey(CompoundPK primaryKey) throws FinderException;
+    public LicenseLocal findByPrimaryKey(Integer primaryKey) throws FinderException;
+    public LicenseLocal findByPrimaryKey(LicensePk primaryKey) throws FinderException;
 }

Added: incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetoone/LicensePk.java
URL: http://svn.apache.org/viewvc/incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetoone/LicensePk.java?view=auto&rev=521910
==============================================================================
--- incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetoone/LicensePk.java (added)
+++ incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetoone/LicensePk.java Fri Mar 23 14:39:54 2007
@@ -0,0 +1,47 @@
+/**
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ */
+package org.apache.openejb.test.entity.cmr.onetoone;
+
+public class LicensePk {
+    public Integer id;
+    public String number;
+
+    public LicensePk() {
+    }
+
+    public LicensePk(Integer id, String name) {
+        this.id = id;
+        this.number = name;
+    }
+
+    public boolean equals(Object o) {
+        if (this == o) return true;
+        if (o == null || getClass() != o.getClass()) return false;
+
+        LicensePk personPk = (LicensePk) o;
+
+        return id.equals(personPk.id) && number.equals(personPk.number);
+    }
+
+    public int hashCode() {
+        int result;
+        result = id.hashCode();
+        result = 31 * result + number.hashCode();
+        return result;
+    }
+}

Copied: incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetoone/PersonBean.java (from r520977, incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetoone/ABean.java)
URL: http://svn.apache.org/viewvc/incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetoone/PersonBean.java?view=diff&rev=521910&p1=incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetoone/ABean.java&r1=520977&p2=incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetoone/PersonBean.java&r2=521910
==============================================================================
--- incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetoone/ABean.java (original)
+++ incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetoone/PersonBean.java Fri Mar 23 14:39:54 2007
@@ -1,4 +1,5 @@
 /**
+ *
  * Licensed to the Apache Software Foundation (ASF) under one or more
  * contributor license agreements.  See the NOTICE file distributed with
  * this work for additional information regarding copyright ownership.
@@ -8,64 +9,58 @@
  *
  *     http://www.apache.org/licenses/LICENSE-2.0
  *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
  */
 package org.apache.openejb.test.entity.cmr.onetoone;
 
+import org.apache.openejb.test.entity.cmr.CompoundPK;
 
-import javax.ejb.CreateException;
 import javax.ejb.EntityBean;
 import javax.ejb.EntityContext;
+import javax.ejb.CreateException;
 import javax.ejb.RemoveException;
 
-import org.apache.openejb.test.entity.cmr.CompoundPK;
-
 /**
  *
  * @version $Revision: 451417 $ $Date: 2006-09-29 13:13:22 -0700 (Fri, 29 Sep 2006) $
  */
-public abstract class ABean implements EntityBean {
-
-    private EntityContext context;
-    
+public abstract class PersonBean implements EntityBean {
     // CMP
-    public abstract Integer getField1();
-    public abstract void setField1(Integer field1);
+    public abstract Integer getId();
+    public abstract void setId(Integer id);
+
+    public abstract String getName();
+    public abstract void setName(String name);
 
-    public abstract String getField2();
-    public abstract void setField2(String field2);
-    
     // CMR
-    public abstract BLocal getB();
-    public abstract void setB(BLocal b);
+    public abstract LicenseLocal getLicense();
+    public abstract void setLicense(LicenseLocal license);
 
-    public Integer ejbCreate(Integer field1)  throws CreateException {
-        setField1(field1);
+    public Integer ejbCreate(Integer id)  throws CreateException {
+        setId(id);
         return null;
     }
 
-    public void ejbPostCreate(Integer field1) {
+    public void ejbPostCreate(Integer id) {
     }
 
-    public CompoundPK ejbCreate(CompoundPK primaryKey)  throws CreateException {
-        setField1(primaryKey.field1);
-        setField2(primaryKey.field2);
+    public CompoundPK ejbCreate(PersonPk primaryKey)  throws CreateException {
+        setId(primaryKey.id);
+        setName(primaryKey.name);
         return null;
     }
 
-    public void ejbPostCreate(CompoundPK primaryKey) {
+    public void ejbPostCreate(PersonPk primaryKey) {
     }
 
     public void setEntityContext(EntityContext ctx) {
-        context = ctx;
     }
 
     public void unsetEntityContext() {
-        context = null;
     }
 
     public void ejbActivate() {

Copied: incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetoone/PersonLocal.java (from r520977, incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetoone/ALocal.java)
URL: http://svn.apache.org/viewvc/incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetoone/PersonLocal.java?view=diff&rev=521910&p1=incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetoone/ALocal.java&r1=520977&p2=incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetoone/PersonLocal.java&r2=521910
==============================================================================
--- incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetoone/ALocal.java (original)
+++ incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetoone/PersonLocal.java Fri Mar 23 14:39:54 2007
@@ -22,16 +22,15 @@
  *
  * @version $Revision: 451417 $ $Date: 2006-09-29 13:13:22 -0700 (Fri, 29 Sep 2006) $
  */
-public interface ALocal extends EJBLocalObject {
-
+public interface PersonLocal extends EJBLocalObject {
     // CMP
-    public Integer getField1();
-    public void setField1(Integer field1);
+    public Integer getId();
+    public void setId(Integer field1);
 
-    public String getField2();
-    public void setField2(String field2);
+    public String getName();
+    public void setName(String field2);
     
     // CMR
-    public BLocal getB();
-    public void setB(BLocal b);
+    public LicenseLocal getLicense();
+    public void setLicense(LicenseLocal license);
 }

Copied: incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetoone/PersonLocalHome.java (from r520977, incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetoone/ALocalHome.java)
URL: http://svn.apache.org/viewvc/incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetoone/PersonLocalHome.java?view=diff&rev=521910&p1=incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetoone/ALocalHome.java&r1=520977&p2=incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetoone/PersonLocalHome.java&r2=521910
==============================================================================
--- incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetoone/ALocalHome.java (original)
+++ incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetoone/PersonLocalHome.java Fri Mar 23 14:39:54 2007
@@ -20,21 +20,16 @@
 import javax.ejb.EJBLocalHome;
 import javax.ejb.FinderException;
 
-import org.apache.openejb.test.entity.cmr.CompoundPK;
-
-
 /**
- *
  * @version $Revision: 451417 $ $Date: 2006-09-29 13:13:22 -0700 (Fri, 29 Sep 2006) $
  */
-public interface ALocalHome extends EJBLocalHome {
-
+public interface PersonLocalHome extends EJBLocalHome {
     // Create
-    public ALocal create(Integer field1) throws CreateException;
-    public ALocal create(CompoundPK primaryKey) throws CreateException;
+    public PersonLocal create(Integer field1) throws CreateException;
+    public PersonLocal create(PersonPk primaryKey) throws CreateException;
 
     // Finder
-    public ALocal findByPrimaryKey(Integer primaryKey) throws FinderException;
-    public ALocal findByPrimaryKey(CompoundPK primaryKey) throws FinderException;
+    public PersonLocal findByPrimaryKey(Integer primaryKey) throws FinderException;
+    public PersonLocal findByPrimaryKey(PersonPk primaryKey) throws FinderException;
 
 }

Added: incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetoone/PersonPk.java
URL: http://svn.apache.org/viewvc/incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetoone/PersonPk.java?view=auto&rev=521910
==============================================================================
--- incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetoone/PersonPk.java (added)
+++ incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/entity/cmr/onetoone/PersonPk.java Fri Mar 23 14:39:54 2007
@@ -0,0 +1,47 @@
+/**
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ */
+package org.apache.openejb.test.entity.cmr.onetoone;
+
+public class PersonPk {
+    public Integer id;
+    public String name;
+
+    public PersonPk() {
+    }
+
+    public PersonPk(Integer id, String name) {
+        this.id = id;
+        this.name = name;
+    }
+
+    public boolean equals(Object o) {
+        if (this == o) return true;
+        if (o == null || getClass() != o.getClass()) return false;
+
+        PersonPk personPk = (PersonPk) o;
+
+        return id.equals(personPk.id) && name.equals(personPk.name);
+    }
+
+    public int hashCode() {
+        int result;
+        result = id.hashCode();
+        result = 31 * result + name.hashCode();
+        return result;
+    }
+}

Modified: incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/resources/META-INF/ejb-jar.xml
URL: http://svn.apache.org/viewvc/incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/resources/META-INF/ejb-jar.xml?view=diff&rev=521910&r1=521909&r2=521910
==============================================================================
--- incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/resources/META-INF/ejb-jar.xml (original)
+++ incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/resources/META-INF/ejb-jar.xml Fri Mar 23 14:39:54 2007
@@ -826,145 +826,364 @@
     -->
 
     <entity>
-      <ejb-name>OneToOneA</ejb-name>
-      <local-home>org.apache.openejb.test.entity.cmr.onetoone.ALocalHome</local-home>
-      <local>org.apache.openejb.test.entity.cmr.onetoone.ALocal</local>
-      <ejb-class>org.apache.openejb.test.entity.cmr.onetoone.ABean</ejb-class>
+      <ejb-name>Person</ejb-name>
+      <local-home>org.apache.openejb.test.entity.cmr.onetoone.PersonLocalHome</local-home>
+      <local>org.apache.openejb.test.entity.cmr.onetoone.PersonLocal</local>
+      <ejb-class>org.apache.openejb.test.entity.cmr.onetoone.PersonBean</ejb-class>
       <persistence-type>Container</persistence-type>
       <prim-key-class>java.lang.Integer</prim-key-class>
       <reentrant>false</reentrant>
       <cmp-version>2.x</cmp-version>
-      <abstract-schema-name>OneToOneA</abstract-schema-name>
+      <abstract-schema-name>Person</abstract-schema-name>
       <cmp-field>
-        <field-name>field1</field-name>
+        <field-name>id</field-name>
       </cmp-field>
       <cmp-field>
-        <field-name>field2</field-name>
+        <field-name>name</field-name>
       </cmp-field>
-      <primkey-field>field1</primkey-field>
+      <primkey-field>id</primkey-field>
       <query>
         <!-- CompondPK one-to-one shares the local home interface so we need to declare this useless finder -->
         <query-method>
           <method-name>findByPrimaryKey</method-name>
           <method-params>
-            <method-param>org.apache.openejb.deployment.entity.cmr.CompoundPK</method-param>
+            <method-param>org.apache.openejb.test.entity.cmr.onetoone.PersonPk</method-param>
           </method-params>
         </query-method>
-        <ejb-ql>SELECT OBJECT(A) FROM OneToOneA A</ejb-ql>
+        <ejb-ql>SELECT OBJECT(P) FROM Person P</ejb-ql>
       </query>
-      <persistence-context-ref>
-        <persistence-context-ref-name>openejb/cmp</persistence-context-ref-name>
-        <persistence-unit-name>cmp</persistence-unit-name>
-      </persistence-context-ref>
     </entity>
     <entity>
-      <ejb-name>OneToOneB</ejb-name>
-      <local-home>org.apache.openejb.test.entity.cmr.onetoone.BLocalHome</local-home>
-      <local>org.apache.openejb.test.entity.cmr.onetoone.BLocal</local>
-      <ejb-class>org.apache.openejb.test.entity.cmr.onetoone.BBean</ejb-class>
+      <ejb-name>License</ejb-name>
+      <local-home>org.apache.openejb.test.entity.cmr.onetoone.LicenseLocalHome</local-home>
+      <local>org.apache.openejb.test.entity.cmr.onetoone.LicenseLocal</local>
+      <ejb-class>org.apache.openejb.test.entity.cmr.onetoone.LicenseBean</ejb-class>
       <persistence-type>Container</persistence-type>
       <prim-key-class>java.lang.Integer</prim-key-class>
       <reentrant>false</reentrant>
       <cmp-version>2.x</cmp-version>
-      <abstract-schema-name>OneToOneB</abstract-schema-name>
+      <abstract-schema-name>License</abstract-schema-name>
       <cmp-field>
-        <field-name>field1</field-name>
+        <field-name>id</field-name>
       </cmp-field>
       <cmp-field>
-        <field-name>field2</field-name>
+        <field-name>number</field-name>
       </cmp-field>
       <cmp-field>
-        <field-name>field3</field-name>
+        <field-name>points</field-name>
       </cmp-field>
       <cmp-field>
-        <field-name>field4</field-name>
+        <field-name>notes</field-name>
       </cmp-field>
-      <primkey-field>field1</primkey-field>
+      <primkey-field>id</primkey-field>
       <query>
         <!-- CompondPK one-to-one shares the local home interface so we need to declare this useless finder -->
         <query-method>
           <method-name>findByPrimaryKey</method-name>
           <method-params>
-            <method-param>org.apache.openejb.deployment.entity.cmr.CompoundPK</method-param>
+            <method-param>org.apache.openejb.test.entity.cmr.onetoone.LicensePk</method-param>
           </method-params>
         </query-method>
-        <ejb-ql>SELECT OBJECT(B) FROM OneToOneB B</ejb-ql>
+        <ejb-ql>SELECT OBJECT(DL) FROM License DL</ejb-ql>
       </query>
-      <persistence-context-ref>
-        <persistence-context-ref-name>openejb/cmp</persistence-context-ref-name>
-        <persistence-unit-name>cmp</persistence-unit-name>
-      </persistence-context-ref>
     </entity>
 
     <entity>
-      <ejb-name>OneToManyA</ejb-name>
-      <local-home>org.apache.openejb.test.entity.cmr.onetomany.ALocalHome</local-home>
-      <local>org.apache.openejb.test.entity.cmr.onetomany.ALocal</local>
-      <ejb-class>org.apache.openejb.test.entity.cmr.onetomany.ABean</ejb-class>
+      <ejb-name>Artist</ejb-name>
+      <local-home>org.apache.openejb.test.entity.cmr.onetomany.ArtistLocalHome</local-home>
+      <local>org.apache.openejb.test.entity.cmr.onetomany.ArtistLocal</local>
+      <ejb-class>org.apache.openejb.test.entity.cmr.onetomany.ArtistBean</ejb-class>
       <persistence-type>Container</persistence-type>
       <prim-key-class>java.lang.Integer</prim-key-class>
       <reentrant>false</reentrant>
       <cmp-version>2.x</cmp-version>
-      <abstract-schema-name>OneToManyA</abstract-schema-name>
+      <abstract-schema-name>Artist</abstract-schema-name>
       <cmp-field>
-        <field-name>field1</field-name>
+        <field-name>id</field-name>
       </cmp-field>
       <cmp-field>
-        <field-name>field2</field-name>
+        <field-name>name</field-name>
       </cmp-field>
-      <primkey-field>field1</primkey-field>
+      <primkey-field>id</primkey-field>
       <query>
         <!-- CompondPK one-to-one shares the local home interface so we need to declare this useless finder -->
         <query-method>
           <method-name>findByPrimaryKey</method-name>
           <method-params>
-            <method-param>org.apache.openejb.deployment.entity.cmr.CompoundPK</method-param>
+            <method-param>org.apache.openejb.test.entity.cmr.onetomany.ArtistPk</method-param>
           </method-params>
         </query-method>
-        <ejb-ql>SELECT OBJECT(A) FROM OneToManyA A</ejb-ql>
+        <ejb-ql>SELECT OBJECT(A) FROM Artist A</ejb-ql>
       </query>
-      <persistence-context-ref>
-        <persistence-context-ref-name>openejb/cmp</persistence-context-ref-name>
-        <persistence-unit-name>cmp</persistence-unit-name>
-      </persistence-context-ref>
     </entity>
     <entity>
-      <ejb-name>OneToManyB</ejb-name>
-      <local-home>org.apache.openejb.test.entity.cmr.onetomany.BLocalHome</local-home>
-      <local>org.apache.openejb.test.entity.cmr.onetomany.BLocal</local>
-      <ejb-class>org.apache.openejb.test.entity.cmr.onetomany.BBean</ejb-class>
+      <ejb-name>Song</ejb-name>
+      <local-home>org.apache.openejb.test.entity.cmr.onetomany.SongLocalHome</local-home>
+      <local>org.apache.openejb.test.entity.cmr.onetomany.SongLocal</local>
+      <ejb-class>org.apache.openejb.test.entity.cmr.onetomany.SongBean</ejb-class>
       <persistence-type>Container</persistence-type>
       <prim-key-class>java.lang.Integer</prim-key-class>
       <reentrant>false</reentrant>
       <cmp-version>2.x</cmp-version>
-      <abstract-schema-name>OneToManyB</abstract-schema-name>
+      <abstract-schema-name>Song</abstract-schema-name>
       <cmp-field>
-        <field-name>field1</field-name>
+        <field-name>id</field-name>
       </cmp-field>
       <cmp-field>
-        <field-name>field2</field-name>
+        <field-name>name</field-name>
       </cmp-field>
       <cmp-field>
-        <field-name>field3</field-name>
+        <field-name>bpm</field-name>
       </cmp-field>
       <cmp-field>
-        <field-name>field4</field-name>
+        <field-name>description</field-name>
       </cmp-field>
-      <primkey-field>field1</primkey-field>
+      <primkey-field>id</primkey-field>
       <query>
         <!-- CompondPK one-to-one shares the local home interface so we need to declare this useless finder -->
         <query-method>
           <method-name>findByPrimaryKey</method-name>
           <method-params>
-            <method-param>org.apache.openejb.deployment.entity.cmr.CompoundPK</method-param>
+            <method-param>org.apache.openejb.test.entity.cmr.onetomany.SongPk</method-param>
           </method-params>
         </query-method>
-        <ejb-ql>SELECT OBJECT(B) FROM OneToManyB B</ejb-ql>
+        <ejb-ql>SELECT OBJECT(B) FROM Song B</ejb-ql>
+      </query>
+    </entity>
+
+    <entity>
+      <ejb-name>Game</ejb-name>
+      <local-home>org.apache.openejb.test.entity.cmr.manytomany.GameLocalHome</local-home>
+      <local>org.apache.openejb.test.entity.cmr.manytomany.GameLocal</local>
+      <ejb-class>org.apache.openejb.test.entity.cmr.manytomany.GameBean</ejb-class>
+      <persistence-type>Container</persistence-type>
+      <prim-key-class>java.lang.Integer</prim-key-class>
+      <reentrant>false</reentrant>
+      <cmp-version>2.x</cmp-version>
+      <abstract-schema-name>Game</abstract-schema-name>
+      <cmp-field>
+        <field-name>id</field-name>
+      </cmp-field>
+      <cmp-field>
+        <field-name>name</field-name>
+      </cmp-field>
+      <cmp-field>
+        <field-name>rating</field-name>
+      </cmp-field>
+      <primkey-field>id</primkey-field>
+      <query>
+        <query-method>
+          <method-name>findByPrimaryKey</method-name>
+          <method-params>
+            <method-param>org.apache.openejb.test.entity.cmr.manytomany.GamePk</method-param>
+          </method-params>
+        </query-method>
+        <ejb-ql>SELECT OBJECT(B) FROM Game B</ejb-ql>
+      </query>
+    </entity>
+    <entity>
+      <ejb-name>Platform</ejb-name>
+      <local-home>org.apache.openejb.test.entity.cmr.manytomany.PlatformLocalHome</local-home>
+      <local>org.apache.openejb.test.entity.cmr.manytomany.PlatformLocal</local>
+      <ejb-class>org.apache.openejb.test.entity.cmr.manytomany.PlatformBean</ejb-class>
+      <persistence-type>Container</persistence-type>
+      <prim-key-class>java.lang.Integer</prim-key-class>
+      <reentrant>false</reentrant>
+      <cmp-version>2.x</cmp-version>
+      <abstract-schema-name>Platform</abstract-schema-name>
+      <cmp-field>
+        <field-name>id</field-name>
+      </cmp-field>
+      <cmp-field>
+        <field-name>name</field-name>
+      </cmp-field>
+      <primkey-field>id</primkey-field>
+      <query>
+        <query-method>
+          <method-name>findByPrimaryKey</method-name>
+          <method-params>
+            <method-param>org.apache.openejb.test.entity.cmr.manytomany.PlatformPk</method-param>
+          </method-params>
+        </query-method>
+        <ejb-ql>SELECT OBJECT(B) FROM Platform B</ejb-ql>
+      </query>
+    </entity>
+
+    <entity>
+      <ejb-name>ComplexPerson</ejb-name>
+      <local-home>org.apache.openejb.test.entity.cmr.onetoone.PersonLocalHome</local-home>
+      <local>org.apache.openejb.test.entity.cmr.onetoone.PersonLocal</local>
+      <ejb-class>org.apache.openejb.test.entity.cmr.onetoone.PersonBean</ejb-class>
+      <persistence-type>Container</persistence-type>
+      <prim-key-class>org.apache.openejb.test.entity.cmr.onetoone.PersonPk</prim-key-class>
+      <reentrant>false</reentrant>
+      <cmp-version>2.x</cmp-version>
+      <abstract-schema-name>ComplexPerson</abstract-schema-name>
+      <cmp-field>
+        <field-name>id</field-name>
+      </cmp-field>
+      <cmp-field>
+        <field-name>name</field-name>
+      </cmp-field>
+      <query>
+        <!-- CompondPK one-to-one shares the local home interface so we need to declare this useless finder -->
+        <query-method>
+          <method-name>findByPrimaryKey</method-name>
+          <method-params>
+            <method-param>java.lang.Integer</method-param>
+          </method-params>
+        </query-method>
+        <ejb-ql>SELECT OBJECT(P) FROM ComplexPerson P</ejb-ql>
+      </query>
+    </entity>
+    <entity>
+      <ejb-name>ComplexLicense</ejb-name>
+      <local-home>org.apache.openejb.test.entity.cmr.onetoone.LicenseLocalHome</local-home>
+      <local>org.apache.openejb.test.entity.cmr.onetoone.LicenseLocal</local>
+      <ejb-class>org.apache.openejb.test.entity.cmr.onetoone.LicenseBean</ejb-class>
+      <persistence-type>Container</persistence-type>
+      <prim-key-class>org.apache.openejb.test.entity.cmr.onetoone.LicensePk</prim-key-class>
+      <reentrant>false</reentrant>
+      <cmp-version>2.x</cmp-version>
+      <abstract-schema-name>ComplexLicense</abstract-schema-name>
+      <cmp-field>
+        <field-name>id</field-name>
+      </cmp-field>
+      <cmp-field>
+        <field-name>number</field-name>
+      </cmp-field>
+      <cmp-field>
+        <field-name>points</field-name>
+      </cmp-field>
+      <cmp-field>
+        <field-name>notes</field-name>
+      </cmp-field>
+      <query>
+        <!-- CompondPK one-to-one shares the local home interface so we need to declare this useless finder -->
+        <query-method>
+          <method-name>findByPrimaryKey</method-name>
+          <method-params>
+            <method-param>java.lang.Integer</method-param>
+          </method-params>
+        </query-method>
+        <ejb-ql>SELECT OBJECT(DL) FROM ComplexLicense DL</ejb-ql>
+      </query>
+    </entity>
+    <entity>
+      <ejb-name>ComplexArtist</ejb-name>
+      <local-home>org.apache.openejb.test.entity.cmr.onetomany.ArtistLocalHome</local-home>
+      <local>org.apache.openejb.test.entity.cmr.onetomany.ArtistLocal</local>
+      <ejb-class>org.apache.openejb.test.entity.cmr.onetomany.ArtistBean</ejb-class>
+      <persistence-type>Container</persistence-type>
+      <prim-key-class>org.apache.openejb.test.entity.cmr.onetomany.ArtistPk</prim-key-class>
+      <reentrant>false</reentrant>
+      <cmp-version>2.x</cmp-version>
+      <abstract-schema-name>ComplexArtist</abstract-schema-name>
+      <cmp-field>
+        <field-name>id</field-name>
+      </cmp-field>
+      <cmp-field>
+        <field-name>name</field-name>
+      </cmp-field>
+      <query>
+        <!-- CompondPK one-to-one shares the local home interface so we need to declare this useless finder -->
+        <query-method>
+          <method-name>findByPrimaryKey</method-name>
+          <method-params>
+            <method-param>java.lang.Integer</method-param>
+          </method-params>
+        </query-method>
+        <ejb-ql>SELECT OBJECT(A) FROM ComplexArtist A</ejb-ql>
+      </query>
+    </entity>
+    <entity>
+      <ejb-name>ComplexSong</ejb-name>
+      <local-home>org.apache.openejb.test.entity.cmr.onetomany.SongLocalHome</local-home>
+      <local>org.apache.openejb.test.entity.cmr.onetomany.SongLocal</local>
+      <ejb-class>org.apache.openejb.test.entity.cmr.onetomany.SongBean</ejb-class>
+      <persistence-type>Container</persistence-type>
+      <prim-key-class>org.apache.openejb.test.entity.cmr.onetomany.SongPk</prim-key-class>
+      <reentrant>false</reentrant>
+      <cmp-version>2.x</cmp-version>
+      <abstract-schema-name>ComplexSong</abstract-schema-name>
+      <cmp-field>
+        <field-name>id</field-name>
+      </cmp-field>
+      <cmp-field>
+        <field-name>name</field-name>
+      </cmp-field>
+      <cmp-field>
+        <field-name>bpm</field-name>
+      </cmp-field>
+      <cmp-field>
+        <field-name>description</field-name>
+      </cmp-field>
+      <query>
+        <!-- CompondPK one-to-one shares the local home interface so we need to declare this useless finder -->
+        <query-method>
+          <method-name>findByPrimaryKey</method-name>
+          <method-params>
+            <method-param>java.lang.Integer</method-param>
+          </method-params>
+        </query-method>
+        <ejb-ql>SELECT OBJECT(B) FROM ComplexDish B</ejb-ql>
+      </query>
+    </entity>
+
+    <entity>
+      <ejb-name>ComplexGame</ejb-name>
+      <local-home>org.apache.openejb.test.entity.cmr.manytomany.GameLocalHome</local-home>
+      <local>org.apache.openejb.test.entity.cmr.manytomany.GameLocal</local>
+      <ejb-class>org.apache.openejb.test.entity.cmr.manytomany.GameBean</ejb-class>
+      <persistence-type>Container</persistence-type>
+      <prim-key-class>org.apache.openejb.test.entity.cmr.manytomany.GamePk</prim-key-class>
+      <reentrant>false</reentrant>
+      <cmp-version>2.x</cmp-version>
+      <abstract-schema-name>ComplexGame</abstract-schema-name>
+      <cmp-field>
+        <field-name>id</field-name>
+      </cmp-field>
+      <cmp-field>
+        <field-name>name</field-name>
+      </cmp-field>
+      <cmp-field>
+        <field-name>rating</field-name>
+      </cmp-field>
+      <query>
+        <query-method>
+          <method-name>findByPrimaryKey</method-name>
+          <method-params>
+            <method-param>java.lang.Integer</method-param>
+          </method-params>
+        </query-method>
+        <ejb-ql>SELECT OBJECT(B) FROM ComplexGame B</ejb-ql>
+      </query>
+    </entity>
+    <entity>
+      <ejb-name>ComplexPlatform</ejb-name>
+      <local-home>org.apache.openejb.test.entity.cmr.manytomany.PlatformLocalHome</local-home>
+      <local>org.apache.openejb.test.entity.cmr.manytomany.PlatformLocal</local>
+      <ejb-class>org.apache.openejb.test.entity.cmr.manytomany.PlatformBean</ejb-class>
+      <persistence-type>Container</persistence-type>
+      <prim-key-class>org.apache.openejb.test.entity.cmr.manytomany.PlatformPk</prim-key-class>
+      <reentrant>false</reentrant>
+      <cmp-version>2.x</cmp-version>
+      <abstract-schema-name>ComplexPlatform</abstract-schema-name>
+      <cmp-field>
+        <field-name>id</field-name>
+      </cmp-field>
+      <cmp-field>
+        <field-name>name</field-name>
+      </cmp-field>
+      <query>
+        <query-method>
+          <method-name>findByPrimaryKey</method-name>
+          <method-params>
+            <method-param>java.lang.Integer</method-param>
+          </method-params>
+        </query-method>
+        <ejb-ql>SELECT OBJECT(B) FROM ComplexPlatform B</ejb-ql>
       </query>
-      <persistence-context-ref>
-        <persistence-context-ref-name>openejb/cmp</persistence-context-ref-name>
-        <persistence-unit-name>cmp</persistence-unit-name>
-      </persistence-context-ref>
     </entity>
 
     <entity>
@@ -4764,35 +4983,136 @@
   </enterprise-beans>
 
   <relationships>
+
+    <!-- One to One -->
+    <ejb-relation>
+      <ejb-relationship-role>
+        <multiplicity>One</multiplicity>
+        <cascade-delete/>
+        <relationship-role-source>
+          <ejb-name>License</ejb-name>
+        </relationship-role-source>
+        <cmr-field>
+          <cmr-field-name>person</cmr-field-name>
+        </cmr-field>
+      </ejb-relationship-role>
+      <ejb-relationship-role>
+        <multiplicity>One</multiplicity>
+        <!--<cascade-delete/>-->
+        <relationship-role-source>
+          <ejb-name>Person</ejb-name>
+        </relationship-role-source>
+        <cmr-field>
+          <cmr-field-name>license</cmr-field-name>
+        </cmr-field>
+      </ejb-relationship-role>
+    </ejb-relation>
+
+    <!-- One to Many -->
+    <ejb-relation>
+      <ejb-relationship-role>
+        <multiplicity>One</multiplicity>
+        <relationship-role-source>
+          <ejb-name>Artist</ejb-name>
+        </relationship-role-source>
+        <cmr-field>
+          <cmr-field-name>performed</cmr-field-name>
+          <cmr-field-type>java.util.Set</cmr-field-type>
+        </cmr-field>
+        <cascade-delete/>
+      </ejb-relationship-role>
+      <ejb-relationship-role>
+        <multiplicity>Many</multiplicity>
+        <relationship-role-source>
+          <ejb-name>Song</ejb-name>
+        </relationship-role-source>
+        <cmr-field>
+          <cmr-field-name>performer</cmr-field-name>
+        </cmr-field>
+      </ejb-relationship-role>
+    </ejb-relation>
+
+    <!-- One to Many non cascade -->
+    <ejb-relation>
+      <ejb-relationship-role>
+        <multiplicity>One</multiplicity>
+        <relationship-role-source>
+          <ejb-name>Artist</ejb-name>
+        </relationship-role-source>
+        <cmr-field>
+          <cmr-field-name>composed</cmr-field-name>
+          <cmr-field-type>java.util.Set</cmr-field-type>
+        </cmr-field>
+      </ejb-relationship-role>
+      <ejb-relationship-role>
+        <multiplicity>Many</multiplicity>
+        <relationship-role-source>
+          <ejb-name>Song</ejb-name>
+        </relationship-role-source>
+        <cmr-field>
+          <cmr-field-name>composer</cmr-field-name>
+        </cmr-field>
+      </ejb-relationship-role>
+    </ejb-relation>
+
+    <!-- Many to Many -->
+    <ejb-relation>
+      <ejb-relationship-role>
+        <multiplicity>Many</multiplicity>
+        <relationship-role-source>
+          <ejb-name>Game</ejb-name>
+        </relationship-role-source>
+        <cmr-field>
+          <cmr-field-name>platforms</cmr-field-name>
+          <cmr-field-type>java.util.Set</cmr-field-type>
+        </cmr-field>
+        <cascade-delete/>
+      </ejb-relationship-role>
+      <ejb-relationship-role>
+        <multiplicity>Many</multiplicity>
+        <relationship-role-source>
+          <ejb-name>Platform</ejb-name>
+        </relationship-role-source>
+        <cmr-field>
+          <cmr-field-name>games</cmr-field-name>
+          <cmr-field-type>java.util.Set</cmr-field-type>
+        </cmr-field>
+      </ejb-relationship-role>
+    </ejb-relation>
+
+    <!-- Complex One to One -->
     <ejb-relation>
       <ejb-relationship-role>
         <multiplicity>One</multiplicity>
         <cascade-delete/>
         <relationship-role-source>
-          <ejb-name>OneToOneA</ejb-name>
+          <ejb-name>ComplexLicense</ejb-name>
         </relationship-role-source>
         <cmr-field>
-          <cmr-field-name>b</cmr-field-name>
+          <cmr-field-name>person</cmr-field-name>
         </cmr-field>
       </ejb-relationship-role>
       <ejb-relationship-role>
         <multiplicity>One</multiplicity>
         <relationship-role-source>
-          <ejb-name>OneToOneB</ejb-name>
+          <ejb-name>ComplexPerson</ejb-name>
         </relationship-role-source>
         <cmr-field>
-          <cmr-field-name>a</cmr-field-name>
+          <cmr-field-name>license</cmr-field-name>
         </cmr-field>
       </ejb-relationship-role>
     </ejb-relation>
+
+
+    <!-- Complex One to Many -->
     <ejb-relation>
       <ejb-relationship-role>
         <multiplicity>One</multiplicity>
         <relationship-role-source>
-          <ejb-name>OneToManyA</ejb-name>
+          <ejb-name>ComplexArtist</ejb-name>
         </relationship-role-source>
         <cmr-field>
-          <cmr-field-name>b</cmr-field-name>
+          <cmr-field-name>performed</cmr-field-name>
           <cmr-field-type>java.util.Set</cmr-field-type>
         </cmr-field>
         <cascade-delete/>
@@ -4800,34 +5120,62 @@
       <ejb-relationship-role>
         <multiplicity>Many</multiplicity>
         <relationship-role-source>
-          <ejb-name>OneToManyB</ejb-name>
+          <ejb-name>ComplexSong</ejb-name>
         </relationship-role-source>
         <cmr-field>
-          <cmr-field-name>a</cmr-field-name>
+          <cmr-field-name>performer</cmr-field-name>
         </cmr-field>
       </ejb-relationship-role>
     </ejb-relation>
+
+    <!-- Complex One to Many non cascade -->
     <ejb-relation>
       <ejb-relationship-role>
         <multiplicity>One</multiplicity>
         <relationship-role-source>
-          <ejb-name>OneToManyA</ejb-name>
+          <ejb-name>ComplexArtist</ejb-name>
         </relationship-role-source>
         <cmr-field>
-          <cmr-field-name>bNonCascade</cmr-field-name>
+          <cmr-field-name>composed</cmr-field-name>
           <cmr-field-type>java.util.Set</cmr-field-type>
         </cmr-field>
       </ejb-relationship-role>
       <ejb-relationship-role>
         <multiplicity>Many</multiplicity>
         <relationship-role-source>
-          <ejb-name>OneToManyB</ejb-name>
+          <ejb-name>ComplexSong</ejb-name>
         </relationship-role-source>
         <cmr-field>
-          <cmr-field-name>aNonCascade</cmr-field-name>
+          <cmr-field-name>composer</cmr-field-name>
         </cmr-field>
       </ejb-relationship-role>
     </ejb-relation>
+
+    <!-- Complex Many to Many -->
+    <ejb-relation>
+      <ejb-relationship-role>
+        <multiplicity>Many</multiplicity>
+        <relationship-role-source>
+          <ejb-name>ComplexGame</ejb-name>
+        </relationship-role-source>
+        <cmr-field>
+          <cmr-field-name>platforms</cmr-field-name>
+          <cmr-field-type>java.util.Set</cmr-field-type>
+        </cmr-field>
+        <cascade-delete/>
+      </ejb-relationship-role>
+      <ejb-relationship-role>
+        <multiplicity>Many</multiplicity>
+        <relationship-role-source>
+          <ejb-name>ComplexPlatform</ejb-name>
+        </relationship-role-source>
+        <cmr-field>
+          <cmr-field-name>games</cmr-field-name>
+          <cmr-field-type>java.util.Set</cmr-field-type>
+        </cmr-field>
+      </ejb-relationship-role>
+    </ejb-relation>
+
     <ejb-relation>
       <ejb-relationship-role>
         <multiplicity>One</multiplicity>
@@ -4956,28 +5304,84 @@
     <!-- CMR Test Beans -->
     <container-transaction>
       <method>
-        <ejb-name>OneToOneA</ejb-name>
+        <ejb-name>Person</ejb-name>
+        <method-name>*</method-name>
+      </method>
+      <trans-attribute>Required</trans-attribute>
+    </container-transaction>
+    <container-transaction>
+      <method>
+        <ejb-name>License</ejb-name>
+        <method-name>*</method-name>
+      </method>
+      <trans-attribute>Required</trans-attribute>
+    </container-transaction>
+    <container-transaction>
+      <method>
+        <ejb-name>Artist</ejb-name>
+        <method-name>*</method-name>
+      </method>
+      <trans-attribute>Required</trans-attribute>
+    </container-transaction>
+    <container-transaction>
+      <method>
+        <ejb-name>Song</ejb-name>
+        <method-name>*</method-name>
+      </method>
+      <trans-attribute>Required</trans-attribute>
+    </container-transaction>
+    <container-transaction>
+      <method>
+        <ejb-name>Game</ejb-name>
+        <method-name>*</method-name>
+      </method>
+      <trans-attribute>Required</trans-attribute>
+    </container-transaction>
+    <container-transaction>
+      <method>
+        <ejb-name>Platform</ejb-name>
+        <method-name>*</method-name>
+      </method>
+      <trans-attribute>Required</trans-attribute>
+    </container-transaction>
+    <container-transaction>
+      <method>
+        <ejb-name>ComplexPerson</ejb-name>
+        <method-name>*</method-name>
+      </method>
+      <trans-attribute>Required</trans-attribute>
+    </container-transaction>
+    <container-transaction>
+      <method>
+        <ejb-name>ComplexLicense</ejb-name>
+        <method-name>*</method-name>
+      </method>
+      <trans-attribute>Required</trans-attribute>
+    </container-transaction>
+    <container-transaction>
+      <method>
+        <ejb-name>ComplexArtist</ejb-name>
         <method-name>*</method-name>
       </method>
       <trans-attribute>Required</trans-attribute>
     </container-transaction>
     <container-transaction>
       <method>
-        <ejb-name>OneToOneB</ejb-name>
+        <ejb-name>ComplexSong</ejb-name>
         <method-name>*</method-name>
       </method>
       <trans-attribute>Required</trans-attribute>
     </container-transaction>
     <container-transaction>
       <method>
-        <ejb-name>OneToManyA</ejb-name>
+        <ejb-name>ComplexGame</ejb-name>
         <method-name>*</method-name>
       </method>
       <trans-attribute>Required</trans-attribute>
     </container-transaction>
     <container-transaction>
       <method>
-        <ejb-name>OneToManyB</ejb-name>
+        <ejb-name>ComplexPlatform</ejb-name>
         <method-name>*</method-name>
       </method>
       <trans-attribute>Required</trans-attribute>

Modified: incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/resources/META-INF/jpa.mapping.xml
URL: http://svn.apache.org/viewvc/incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/resources/META-INF/jpa.mapping.xml?view=diff&rev=521910&r1=521909&r2=521910
==============================================================================
--- incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/resources/META-INF/jpa.mapping.xml (original)
+++ incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/resources/META-INF/jpa.mapping.xml Fri Mar 23 14:39:54 2007
@@ -20,13 +20,6 @@
 -->
 
 <entity-mappings xmlns="http://java.sun.com/xml/ns/persistence/orm" version="1.0">
-
-  <!--<table-generator name="id_gen"-->
-  <!--pk-column-name="name"-->
-  <!--value-column-name="value"-->
-  <!--pk-column-value="entity">-->
-  <!--</table-generator>-->
-
   <entity class="org.apache.openejb.test.entity.cmp2.Employee">
     <description>Simple Entity Bean</description>
 
@@ -42,134 +35,6 @@
       <basic name="lastName">
         <column name="last_name"/>
       </basic>
-    </attributes>
-  </entity>
-
-  <!--<entity name="OneOwningSideBean" class="openejb.org.apache.openejb.test.entity.cmr.cmrmapping.OneOwningSideBean">-->
-    <!--<table name="OneOwning"/>-->
-    <!--<attributes>-->
-      <!--<id name="id">-->
-        <!--<column name="col_id"/>-->
-      <!--</id>-->
-      <!--<basic name="field1">-->
-        <!--<column name="col_field1"/>-->
-      <!--</basic>-->
-    <!--</attributes>-->
-  <!--</entity>-->
-<!---->
-  <!--<entity name="OneInverseSideBean" class="openejb.org.apache.openejb.test.entity.cmr.cmrmapping.OneInverseSideBean">-->
-    <!--<table name="OneInverse"/>-->
-    <!--<attributes>-->
-      <!--<id name="id">-->
-        <!--<column name="col_id"/>-->
-      <!--</id>-->
-    <!--</attributes>-->
-  <!--</entity>-->
-<!---->
-  <!--<entity name="ManyOwningSideBean" class="openejb.org.apache.openejb.test.entity.cmr.cmrmapping.ManyOwningSideBean">-->
-    <!--<table name="ManyOwning"/>-->
-    <!--<attributes>-->
-      <!--<id name="id">-->
-        <!--<column name="col_id"/>-->
-      <!--</id>-->
-      <!--<basic name="field1">-->
-        <!--<column name="col_field1"/>-->
-      <!--</basic>-->
-    <!--</attributes>-->
-  <!--</entity>-->
-
-  <!--
-  ########################################################
-  ########################################################
-  ######  CMR  One To One ################################
-  ########################################################
-  ########################################################
-  -->
-
-  <entity name="OneToOneA" class="openejb.org.apache.openejb.test.entity.cmr.onetoone.OneToOneA">
-    <table name="OneToOneA"/>
-    <attributes>
-      <id name="field1">
-        <column name="A1"/>
-      </id>
-      <basic name="field2">
-        <column name="A2"/>
-      </basic>
-      <one-to-one name="b" mapped-by="a"/>
-    </attributes>
-  </entity>
-
-  <entity name="OneToOneB" class="openejb.org.apache.openejb.test.entity.cmr.onetoone.OneToOneB">
-    <table name="OneToOneB"/>
-    <attributes>
-      <id name="field1">
-        <column name="B1"/>
-      </id>
-      <basic name="field2">
-        <column name="B2"/>
-      </basic>
-      <basic name="field3">
-        <column name="B3"/>
-      </basic>
-      <basic name="field4">
-        <column name="B4"/>
-      </basic>
-      <one-to-one name="a">
-        <join-column name="FKA1"/>
-        <cascade>
-          <cascade-all/>
-        </cascade>
-      </one-to-one>
-    </attributes>
-  </entity>
-
-  <!--
-  ########################################################
-  ########################################################
-  ######  CMR  One To Many ###############################
-  ########################################################
-  ########################################################
-  -->
-
-  <entity name="OneToManyA" class="openejb.org.apache.openejb.test.entity.cmr.onetomany.OneToManyA">
-    <table name="OneToManyA"/>
-    <attributes>
-      <id name="field1">
-        <column name="A1"/>
-      </id>
-      <basic name="field2">
-        <column name="A2"/>
-      </basic>
-      <one-to-many name="b" mapped-by="a">
-        <cascade>
-          <cascade-all/>
-        </cascade>
-      </one-to-many>
-      <one-to-many name="bNonCascade" mapped-by="aNonCascade"/>
-    </attributes>
-  </entity>
-
-  <entity name="OneToManyB" class="openejb.org.apache.openejb.test.entity.cmr.onetomany.OneToManyB">
-    <table name="OneToManyB"/>
-    <attributes>
-      <id name="field1">
-        <column name="B1"/>
-      </id>
-      <basic name="field2">
-        <column name="B2"/>
-      </basic>
-      <basic name="field3">
-        <column name="B3"/>
-      </basic>
-      <basic name="field4">
-        <column name="B4"/>
-      </basic>
-      <many-to-one name="a">
-        <join-column name="FKA1"/>
-      </many-to-one>
-      <many-to-one name="aNonCascade">
-        <join-column name="FKA_NonCascade"/>
-      </many-to-one>
     </attributes>
   </entity>
 </entity-mappings>

Modified: incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/resources/META-INF/openejb-jar.xml
URL: http://svn.apache.org/viewvc/incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/resources/META-INF/openejb-jar.xml?view=diff&rev=521910&r1=521909&r2=521910
==============================================================================
--- incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/resources/META-INF/openejb-jar.xml (original)
+++ incubator/openejb/trunk/openejb3/itests/openejb-itests-beans/src/main/resources/META-INF/openejb-jar.xml Fri Mar 23 14:39:54 2007
@@ -192,10 +192,18 @@
   </ejb-deployment>
   <ejb-deployment ejb-name="Cmp RMI-IIOP Bean" deployment-id="client/tests/entity/cmp/RMI-over-IIOP/EJBHome" container-id="Default CMP Container"/>
   <ejb-deployment ejb-name="Cmp2 RMI-IIOP Bean" deployment-id="client/tests/entity/cmp2/RMI-over-IIOP/EJBHome" container-id="Default CMP Container"/>
-  <ejb-deployment ejb-name="OneToOneA" deployment-id="client/tests/entity/cmr/oneToOne/AHome" container-id="Default CMP Container"/>
-  <ejb-deployment ejb-name="OneToOneB" deployment-id="client/tests/entity/cmr/oneToOne/BHome" container-id="Default CMP Container"/>
-  <ejb-deployment ejb-name="OneToManyA" deployment-id="client/tests/entity/cmr/oneToMany/AHome" container-id="Default CMP Container"/>
-  <ejb-deployment ejb-name="OneToManyB" deployment-id="client/tests/entity/cmr/oneToMany/BHome" container-id="Default CMP Container"/>
+  <ejb-deployment ejb-name="Person" deployment-id="client/tests/entity/cmr/oneToOne/Person" container-id="Default CMP Container"/>
+  <ejb-deployment ejb-name="License" deployment-id="client/tests/entity/cmr/oneToOne/License" container-id="Default CMP Container"/>
+  <ejb-deployment ejb-name="Artist" deployment-id="client/tests/entity/cmr/oneToMany/Artist" container-id="Default CMP Container"/>
+  <ejb-deployment ejb-name="Song" deployment-id="client/tests/entity/cmr/oneToMany/Song" container-id="Default CMP Container"/>
+  <ejb-deployment ejb-name="Game" deployment-id="client/tests/entity/cmr/manyToMany/Game" container-id="Default CMP Container"/>
+  <ejb-deployment ejb-name="Platform" deployment-id="client/tests/entity/cmr/manyToMany/Platform" container-id="Default CMP Container"/>
+  <ejb-deployment ejb-name="ComplexPerson" deployment-id="client/tests/entity/cmr/oneToOne/ComplexPerson" container-id="Default CMP Container"/>
+  <ejb-deployment ejb-name="ComplexLicense" deployment-id="client/tests/entity/cmr/oneToOne/ComplexLicense" container-id="Default CMP Container"/>
+  <ejb-deployment ejb-name="ComplexArtist" deployment-id="client/tests/entity/cmr/oneToMany/ComplexArtist" container-id="Default CMP Container"/>
+  <ejb-deployment ejb-name="ComplexSong" deployment-id="client/tests/entity/cmr/oneToMany/ComplexSong" container-id="Default CMP Container"/>
+  <ejb-deployment ejb-name="ComplexGame" deployment-id="client/tests/entity/cmr/manyToMany/ComplexGame" container-id="Default CMP Container"/>
+  <ejb-deployment ejb-name="ComplexPlatform" deployment-id="client/tests/entity/cmr/manyToMany/ComplexPlatform" container-id="Default CMP Container"/>
   <ejb-deployment ejb-name="OneOwningSideBean" deployment-id="client/tests/entity/cmp2/OneOwningSideBean/EJBHome" container-id="Default CMP Container"/>
   <ejb-deployment ejb-name="OneInverseSideBean" deployment-id="client/tests/entity/cmp2/OneInverseSideBean/EJBHome" container-id="Default CMP Container"/>
   <ejb-deployment ejb-name="ManyOwningSideBean" deployment-id="client/tests/entity/cmp2/ManyOwningSideBean/EJBHome" container-id="Default CMP Container"/>

Modified: incubator/openejb/trunk/openejb3/itests/openejb-itests-client/src/main/java/org/apache/openejb/test/HsqldbTestDatabase.java
URL: http://svn.apache.org/viewvc/incubator/openejb/trunk/openejb3/itests/openejb-itests-client/src/main/java/org/apache/openejb/test/HsqldbTestDatabase.java?view=diff&rev=521910&r1=521909&r2=521910
==============================================================================
--- incubator/openejb/trunk/openejb3/itests/openejb-itests-client/src/main/java/org/apache/openejb/test/HsqldbTestDatabase.java (original)
+++ incubator/openejb/trunk/openejb3/itests/openejb-itests-client/src/main/java/org/apache/openejb/test/HsqldbTestDatabase.java Fri Mar 23 14:39:54 2007
@@ -37,18 +37,6 @@
 
     private static String _dropEntity = "DROP TABLE entity";
 
-    // OneToOne
-    private static final String CREATE_ONE_TO_ONE_A = "CREATE TABLE OneToOneA(A1 INTEGER, A2 VARCHAR(255))";
-    private static final String DROP_ONE_TO_ONE_A = "DROP TABLE OneToOneA";
-    private static final String CREATE_ONE_TO_ONE_B = "CREATE TABLE OneToOneB(B1 INTEGER, B2 VARCHAR(255), B3 INTEGER, B4 VARCHAR(255), FKA1 INTEGER)";
-    private static final String DROP_ONE_TO_ONE_B = "DROP TABLE OneToOneB";
-
-    // OneToMany
-    private static final String CREATE_ONE_TO_MANY_A = "CREATE TABLE OneToManyA(A1 INTEGER, A2 VARCHAR(255))";
-    private static final String DROP_ONE_TO_MANY_A = "DROP TABLE OneToManyA";
-    private static final String CREATE_ONE_TO_MANY_B = "CREATE TABLE OneToManyB(B1 INTEGER, B2 VARCHAR(255), B3 INTEGER, B4 VARCHAR(255), FKA1 INTEGER, FKA_NonCascade INTEGER)";
-    private static final String DROP_ONE_TO_MANY_B = "DROP TABLE OneToManyB";
-
     // CmrMapping
     private static final String CREATE_ONE_OWNING = "CREATE TABLE oneowning (col_id INTEGER, col_field1 INTEGER)";
     private static final String DROP_ONE_OWNING = "DROP TABLE oneowning";
@@ -75,6 +63,18 @@
             "ContextLookupCmpBean",
             "Cmp_RMI_IIOP_Bean",
             "RmiIiopCmp2Bean",
+            "Person",
+            "License",
+            "ComplexPerson",
+            "ComplexLicense",
+            "Artist",
+            "Song",
+            "ComplexArtist",
+            "Complexsong",
+            "Game",
+            "Platform",
+            "ComplexGame",
+            "ComplexPlatform",
     };
 
     static {
@@ -84,10 +84,6 @@
 
     public void createEntityTable() throws java.sql.SQLException {
         createTable(_createEntity, _dropEntity);
-        createTable(CREATE_ONE_TO_ONE_A, DROP_ONE_TO_ONE_A);
-        createTable(CREATE_ONE_TO_ONE_B, DROP_ONE_TO_ONE_B);
-        createTable(CREATE_ONE_TO_MANY_A, DROP_ONE_TO_MANY_A);
-        createTable(CREATE_ONE_TO_MANY_B, DROP_ONE_TO_MANY_B);
         createTable(CREATE_ONE_OWNING, DROP_ONE_OWNING);
         createTable(CREATE_ONE_INVERSE, DROP_ONE_INVERSE);
         createTable(CREATE_MANY_OWNING, DROP_MANY_OWNING);
@@ -96,10 +92,6 @@
 
     public void dropEntityTable() throws java.sql.SQLException {
         dropTable(_dropEntity);
-        dropTable(DROP_ONE_TO_ONE_A);
-        dropTable(DROP_ONE_TO_ONE_B);
-        dropTable(DROP_ONE_TO_MANY_A);
-        dropTable(DROP_ONE_TO_MANY_B);
         dropTable(DROP_ONE_OWNING);
         dropTable(DROP_ONE_INVERSE);
         dropTable(DROP_MANY_OWNING);

Modified: incubator/openejb/trunk/openejb3/itests/openejb-itests-client/src/main/java/org/apache/openejb/test/entity/cmr/CmrTestSuite.java
URL: http://svn.apache.org/viewvc/incubator/openejb/trunk/openejb3/itests/openejb-itests-client/src/main/java/org/apache/openejb/test/entity/cmr/CmrTestSuite.java?view=diff&rev=521910&r1=521909&r2=521910
==============================================================================
--- incubator/openejb/trunk/openejb3/itests/openejb-itests-client/src/main/java/org/apache/openejb/test/entity/cmr/CmrTestSuite.java (original)
+++ incubator/openejb/trunk/openejb3/itests/openejb-itests-client/src/main/java/org/apache/openejb/test/entity/cmr/CmrTestSuite.java Fri Mar 23 14:39:54 2007
@@ -17,47 +17,15 @@
  */
 package org.apache.openejb.test.entity.cmr;
 
-import org.apache.openejb.test.TestManager;
-import org.apache.openejb.test.entity.cmp2.Cmp2TestSuite;
-
-import javax.naming.Context;
-import javax.naming.InitialContext;
-import java.util.Properties;
-
 public class CmrTestSuite extends org.apache.openejb.test.TestSuite {
     public CmrTestSuite() {
         super();
         this.addTest(new OneToOneTests());
         this.addTest(new OneToManyTests());
-//        this.addTest(new ManyToManyTests());
-//        this.addTest(new OneToOneCompoundPKTests());
-//        this.addTest(new OneToManyCompoundPKTests());
-//        this.addTest(new ManyToManyCompoundPKTests());
+        this.addTest(new ManyToManyTests());
+        this.addTest(new OneToOneComplexPkTests());
+        this.addTest(new OneToManyComplexPkTests());
+        this.addTest(new ManyToManyComplexPkTests());
 //        this.addTest(new CmrMappingTests());
     }
-
-//    public static junit.framework.Test suite() {
-//        return new CmrTestSuite();
-//    }
-
-//    /**
-//     * Sets up the fixture, for example, open a network connection.
-//     * This method is called before a test is executed.
-//     */
-//    protected void setUp() throws Exception {
-//        Properties props = TestManager.getServer().getContextEnvironment();
-//        props.put(Context.SECURITY_PRINCIPAL, "ENTITY_TEST_CLIENT");
-//        props.put(Context.SECURITY_CREDENTIALS, "ENTITY_TEST_CLIENT");
-//        new InitialContext(props);
-//
-//        TestManager.getDatabase().createEntityTable();
-//    }
-
-//    /**
-//     * Tears down the fixture, for example, close a network connection.
-//     * This method is called after a test is executed.
-//     */
-//    protected void tearDown() throws Exception {
-//        TestManager.getDatabase().dropEntityTable();
-//    }
 }