gdamour 2005/05/17 11:49:38
Modified:
modules/openejb-builder/src/test/org/openejb/deployment/entity/cmp/cmr/manytomany
BBean.java BLocal.java ManyToManyTest.java
Log:
Support mapping of CMP fields to foreign key columns.
When such a CMP field is fetched, the engine actually sources the value
from the CMR field defining the foreign key column. In other words, the
values of such CMP fields always mirror the values of the associated CMR
field.
Also, the implementation does not allow for the update of such CMP fields
as its breaks the CMR relationship contract.
Revision Changes Path
1.2 +5 -2
openejb/modules/openejb-builder/src/test/org/openejb/deployment/entity/cmp/cmr/manytomany/BBean.java
Index: BBean.java
===================================================================
RCS file:
/home/projects/openejb/scm/openejb/modules/openejb-builder/src/test/org/openejb/deployment/entity/cmp/cmr/manytomany/BBean.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- BBean.java 10 Nov 2004 01:35:11 -0000 1.1
+++ BBean.java 17 May 2005 15:49:38 -0000 1.2
@@ -67,7 +67,10 @@
public abstract String getField2();
public abstract void setField2(String field2);
-
+
+ public abstract Integer getField3();
+ public abstract void setField3(Integer field3);
+
// CMR
public abstract Set getA();
public abstract void setA(Set aSet);
1.2 +5 -2
openejb/modules/openejb-builder/src/test/org/openejb/deployment/entity/cmp/cmr/manytomany/BLocal.java
Index: BLocal.java
===================================================================
RCS file:
/home/projects/openejb/scm/openejb/modules/openejb-builder/src/test/org/openejb/deployment/entity/cmp/cmr/manytomany/BLocal.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- BLocal.java 10 Nov 2004 01:35:11 -0000 1.1
+++ BLocal.java 17 May 2005 15:49:38 -0000 1.2
@@ -62,7 +62,10 @@
public String getField2();
public void setField2(String field2);
-
+
+ public Integer getField3();
+ public void setField3(Integer field3);
+
// CMR
public Set getA();
public void setA(Set aSet);
1.4 +2 -2
openejb/modules/openejb-builder/src/test/org/openejb/deployment/entity/cmp/cmr/manytomany/ManyToManyTest.java
Index: ManyToManyTest.java
===================================================================
RCS file:
/home/projects/openejb/scm/openejb/modules/openejb-builder/src/test/org/openejb/deployment/entity/cmp/cmr/manytomany/ManyToManyTest.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- ManyToManyTest.java 1 Mar 2005 23:34:38 -0000 1.3
+++ ManyToManyTest.java 17 May 2005 15:49:38 -0000 1.4
@@ -314,7 +314,7 @@
}
s.execute("CREATE TABLE A(A1 INTEGER, A2 VARCHAR(50))");
- s.execute("CREATE TABLE B(B1 INTEGER, B2 VARCHAR(50))");
+ s.execute("CREATE TABLE B(B1 INTEGER, B2 VARCHAR(50), FKA1
INTEGER)");
s.execute("CREATE TABLE MTM(FKA1 INTEGER, FKB1 INTEGER)");
s.execute("INSERT INTO A(A1, A2) VALUES(1, 'value1')");