Refactor Multi Tier Project
Project: http://git-wip-us.apache.org/repos/asf/cayenne/repo Commit: http://git-wip-us.apache.org/repos/asf/cayenne/commit/fb8660e7 Tree: http://git-wip-us.apache.org/repos/asf/cayenne/tree/fb8660e7 Diff: http://git-wip-us.apache.org/repos/asf/cayenne/diff/fb8660e7 Branch: refs/heads/CAY-1946 Commit: fb8660e76986335b9c77ffbe3cc15b78e2d7be96 Parents: 49dd104 Author: Savva Kolbechev <s.kolbac...@gmail.com> Authored: Thu Nov 6 16:37:14 2014 +0300 Committer: Savva Kolbechev <s.kolbac...@gmail.com> Committed: Thu Nov 6 16:37:15 2014 +0300 ---------------------------------------------------------------------- .../cayenne/CayenneContextDeleteRulesIT.java | 26 +-- .../CayenneContextMapRelationshipIT.java | 44 ++-- .../cayenne/CayenneContextMeaningfulPKIT.java | 53 +++++ .../cayenne/CayenneContextPrimitiveIT.java | 34 ++-- .../cayenne/CayenneContextReflexiveIT.java | 74 +++++++ .../CayenneContextWithDataContextIT.java | 79 ------- .../apache/cayenne/NestedCayenneContextIT.java | 156 -------------- .../cayenne/NestedCayenneContextTooneIT.java | 204 +++++++++++++++++++ .../cayenne/map/ClientEntityResolverIT.java | 69 ------- .../cayenne/map/ClientEntityResolverTest.java | 66 ++++++ .../cayenne/remote/LightSuperClassIT.java | 2 +- .../cayenne/remote/ROPPrefetchToManyMapIT.java | 19 +- .../cayenne/remote/RemoteCallbacksIT.java | 8 +- .../cayenne/unit/di/client/ClientCase.java | 8 + .../apache/cayenne/CDOMapRelationshipIT.java | 8 +- .../testdo/deleterules/ClientDeleteCascade.java | 28 +++ .../testdo/deleterules/ClientDeleteDeny.java | 28 +++ .../testdo/deleterules/ClientDeleteNullify.java | 28 +++ .../testdo/deleterules/ClientDeleteRule.java | 28 +++ .../testdo/deleterules/DeleteCascade.java | 28 +++ .../cayenne/testdo/deleterules/DeleteDeny.java | 28 +++ .../testdo/deleterules/DeleteNullify.java | 28 +++ .../cayenne/testdo/deleterules/DeleteRule.java | 28 +++ .../deleterules/auto/_ClientDeleteCascade.java | 56 +++++ .../deleterules/auto/_ClientDeleteDeny.java | 56 +++++ .../deleterules/auto/_ClientDeleteNullify.java | 56 +++++ .../deleterules/auto/_ClientDeleteRule.java | 114 +++++++++++ .../testdo/deleterules/auto/_DeleteCascade.java | 35 ++++ .../testdo/deleterules/auto/_DeleteDeny.java | 35 ++++ .../testdo/deleterules/auto/_DeleteNullify.java | 35 ++++ .../testdo/deleterules/auto/_DeleteRule.java | 68 +++++++ .../testdo/lifecycles/ClientLifecycles.java | 28 +++ .../cayenne/testdo/lifecycles/Lifecycles.java | 25 +++ .../lifecycles/auto/_ClientLifecycles.java | 37 ++++ .../testdo/lifecycles/auto/_Lifecycles.java | 24 +++ .../testdo/map_to_many/ClientIdMapToMany.java | 28 +++ .../map_to_many/ClientIdMapToManyTarget.java | 28 +++ .../cayenne/testdo/map_to_many/IdMapToMany.java | 28 +++ .../testdo/map_to_many/IdMapToManyTarget.java | 28 +++ .../cayenne/testdo/map_to_many/MapToMany.java | 28 +++ .../testdo/map_to_many/MapToManyTarget.java | 28 +++ .../map_to_many/auto/_ClientIdMapToMany.java | 41 ++++ .../auto/_ClientIdMapToManyTarget.java | 33 +++ .../testdo/map_to_many/auto/_IdMapToMany.java | 32 +++ .../map_to_many/auto/_IdMapToManyTarget.java | 27 +++ .../testdo/map_to_many/auto/_MapToMany.java | 32 +++ .../map_to_many/auto/_MapToManyTarget.java | 35 ++++ .../meaningful_pk/ClientMeaningfulPk.java | 28 +++ .../testdo/meaningful_pk/MeaningfulPk.java | 25 +++ .../meaningful_pk/auto/_ClientMeaningfulPk.java | 37 ++++ .../meaningful_pk/auto/_MeaningfulPk.java | 24 +++ .../testdo/mt/ClientMtDeleteCascade.java | 28 --- .../cayenne/testdo/mt/ClientMtDeleteDeny.java | 28 --- .../testdo/mt/ClientMtDeleteNullify.java | 28 --- .../cayenne/testdo/mt/ClientMtDeleteRule.java | 28 --- .../cayenne/testdo/mt/ClientMtLifecycles.java | 28 --- .../cayenne/testdo/mt/ClientMtMapToMany.java | 28 --- .../testdo/mt/ClientMtMapToManyTarget.java | 28 --- .../cayenne/testdo/mt/ClientMtMeaningfulPk.java | 28 --- .../cayenne/testdo/mt/ClientMtReflexive.java | 28 --- .../testdo/mt/ClientMtTablePrimitives.java | 28 --- .../cayenne/testdo/mt/ClientMtTooneDep.java | 28 --- .../cayenne/testdo/mt/ClientMtTooneMaster.java | 28 --- .../cayenne/testdo/mt/MtDeleteCascade.java | 28 --- .../apache/cayenne/testdo/mt/MtDeleteDeny.java | 28 --- .../cayenne/testdo/mt/MtDeleteNullify.java | 28 --- .../apache/cayenne/testdo/mt/MtDeleteRule.java | 28 --- .../apache/cayenne/testdo/mt/MtLifecycles.java | 25 --- .../apache/cayenne/testdo/mt/MtMapToMany.java | 28 --- .../cayenne/testdo/mt/MtMapToManyTarget.java | 28 --- .../cayenne/testdo/mt/MtMeaningfulPk.java | 25 --- .../apache/cayenne/testdo/mt/MtReflexive.java | 28 --- .../cayenne/testdo/mt/MtTablePrimitives.java | 25 --- .../apache/cayenne/testdo/mt/MtTooneDep.java | 25 --- .../apache/cayenne/testdo/mt/MtTooneMaster.java | 25 --- .../testdo/mt/auto/_ClientMtDeleteCascade.java | 56 ----- .../testdo/mt/auto/_ClientMtDeleteDeny.java | 56 ----- .../testdo/mt/auto/_ClientMtDeleteNullify.java | 56 ----- .../testdo/mt/auto/_ClientMtDeleteRule.java | 114 ----------- .../testdo/mt/auto/_ClientMtLifecycles.java | 37 ---- .../testdo/mt/auto/_ClientMtMapToMany.java | 41 ---- .../mt/auto/_ClientMtMapToManyTarget.java | 33 --- .../testdo/mt/auto/_ClientMtMeaningfulPk.java | 37 ---- .../testdo/mt/auto/_ClientMtReflexive.java | 82 -------- .../mt/auto/_ClientMtTablePrimitives.java | 60 ------ .../testdo/mt/auto/_ClientMtTooneDep.java | 33 --- .../testdo/mt/auto/_ClientMtTooneMaster.java | 33 --- .../testdo/mt/auto/_MtDeleteCascade.java | 35 ---- .../cayenne/testdo/mt/auto/_MtDeleteDeny.java | 35 ---- .../testdo/mt/auto/_MtDeleteNullify.java | 35 ---- .../cayenne/testdo/mt/auto/_MtDeleteRule.java | 68 ------- .../cayenne/testdo/mt/auto/_MtLifecycles.java | 24 --- .../cayenne/testdo/mt/auto/_MtMapToMany.java | 32 --- .../testdo/mt/auto/_MtMapToManyTarget.java | 27 --- .../cayenne/testdo/mt/auto/_MtMeaningfulPk.java | 24 --- .../cayenne/testdo/mt/auto/_MtReflexive.java | 50 ----- .../testdo/mt/auto/_MtTablePrimitives.java | 34 ---- .../cayenne/testdo/mt/auto/_MtTooneDep.java | 27 --- .../cayenne/testdo/mt/auto/_MtTooneMaster.java | 27 --- .../testdo/reflexive/ClientReflexive.java | 28 +++ .../cayenne/testdo/reflexive/Reflexive.java | 28 +++ .../testdo/reflexive/auto/_ClientReflexive.java | 82 ++++++++ .../testdo/reflexive/auto/_Reflexive.java | 50 +++++ .../testdo/relationship/IdMapToMany.java | 28 --- .../testdo/relationship/IdMapToManyTarget.java | 28 --- .../cayenne/testdo/relationship/MapToMany.java | 28 --- .../testdo/relationship/MapToManyTarget.java | 28 --- .../testdo/relationship/auto/_IdMapToMany.java | 32 --- .../relationship/auto/_IdMapToManyTarget.java | 27 --- .../testdo/relationship/auto/_MapToMany.java | 32 --- .../relationship/auto/_MapToManyTarget.java | 35 ---- .../table_primitives/ClientTablePrimitives.java | 28 +++ .../table_primitives/TablePrimitives.java | 25 +++ .../auto/_ClientTablePrimitives.java | 60 ++++++ .../table_primitives/auto/_TablePrimitives.java | 34 ++++ .../cayenne/testdo/toone/ClientTooneDep.java | 28 +++ .../cayenne/testdo/toone/ClientTooneMaster.java | 28 +++ .../apache/cayenne/testdo/toone/TooneDep.java | 25 +++ .../cayenne/testdo/toone/TooneMaster.java | 25 +++ .../testdo/toone/auto/_ClientTooneDep.java | 33 +++ .../testdo/toone/auto/_ClientTooneMaster.java | 33 +++ .../cayenne/testdo/toone/auto/_TooneDep.java | 27 +++ .../cayenne/testdo/toone/auto/_TooneMaster.java | 27 +++ .../cayenne/unit/di/server/SchemaBuilder.java | 28 +-- .../cayenne/unit/di/server/ServerCase.java | 1 + .../src/test/resources/cayenne-delete-rules.xml | 4 + .../src/test/resources/cayenne-lifecycles.xml | 4 + .../src/test/resources/cayenne-map-to-many.xml | 4 + .../test/resources/cayenne-meaningful-pk.xml | 4 + .../src/test/resources/cayenne-persistent.xml | 4 + .../src/test/resources/cayenne-reflexive.xml | 4 + .../test/resources/cayenne-table-primitives.xml | 4 + .../src/test/resources/cayenne-toone.xml | 4 + .../src/test/resources/delete-rules.map.xml | 64 ++++++ .../src/test/resources/lifecycles.map.xml | 16 ++ .../src/test/resources/map-to-many.map.xml | 57 ++++++ .../src/test/resources/meaningful-pk.map.xml | 15 ++ .../src/test/resources/multi-tier.map.xml | 153 -------------- .../src/test/resources/persistent.map.xml | 32 +++ .../src/test/resources/reflexive.map.xml | 25 +++ .../src/test/resources/relationships.map.xml | 40 ---- .../src/test/resources/table-primitives.map.xml | 18 ++ cayenne-server/src/test/resources/toone.map.xml | 27 +++ 143 files changed, 2614 insertions(+), 2531 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cayenne/blob/fb8660e7/cayenne-client/src/test/java/org/apache/cayenne/CayenneContextDeleteRulesIT.java ---------------------------------------------------------------------- diff --git a/cayenne-client/src/test/java/org/apache/cayenne/CayenneContextDeleteRulesIT.java b/cayenne-client/src/test/java/org/apache/cayenne/CayenneContextDeleteRulesIT.java index c4d6bc5..c43bac9 100644 --- a/cayenne-client/src/test/java/org/apache/cayenne/CayenneContextDeleteRulesIT.java +++ b/cayenne-client/src/test/java/org/apache/cayenne/CayenneContextDeleteRulesIT.java @@ -20,10 +20,10 @@ package org.apache.cayenne; import org.apache.cayenne.di.Inject; -import org.apache.cayenne.testdo.mt.ClientMtDeleteCascade; -import org.apache.cayenne.testdo.mt.ClientMtDeleteDeny; -import org.apache.cayenne.testdo.mt.ClientMtDeleteNullify; -import org.apache.cayenne.testdo.mt.ClientMtDeleteRule; +import org.apache.cayenne.testdo.deleterules.ClientDeleteCascade; +import org.apache.cayenne.testdo.deleterules.ClientDeleteDeny; +import org.apache.cayenne.testdo.deleterules.ClientDeleteNullify; +import org.apache.cayenne.testdo.deleterules.ClientDeleteRule; import org.apache.cayenne.unit.di.client.ClientCase; import org.apache.cayenne.unit.di.server.UseServerRuntime; import org.junit.Test; @@ -34,7 +34,7 @@ import static org.junit.Assert.assertNull; import static org.junit.Assert.assertTrue; import static org.junit.Assert.fail; -@UseServerRuntime(ClientCase.MULTI_TIER_PROJECT) +@UseServerRuntime(ClientCase.DELETE_RULES_PROJECT) public class CayenneContextDeleteRulesIT extends ClientCase { @Inject @@ -43,10 +43,10 @@ public class CayenneContextDeleteRulesIT extends ClientCase { @Test public void testNullifyToOne() { - ClientMtDeleteNullify object = context.newObject(ClientMtDeleteNullify.class); + ClientDeleteNullify object = context.newObject(ClientDeleteNullify.class); object.setName("object"); - ClientMtDeleteRule related = context.newObject(ClientMtDeleteRule.class); + ClientDeleteRule related = context.newObject(ClientDeleteRule.class); object.setName("related"); object.setNullify(related); @@ -63,8 +63,8 @@ public class CayenneContextDeleteRulesIT extends ClientCase { @Test public void testDenyToOne() { - ClientMtDeleteDeny object = context.newObject(ClientMtDeleteDeny.class); - ClientMtDeleteRule related = context.newObject(ClientMtDeleteRule.class); + ClientDeleteDeny object = context.newObject(ClientDeleteDeny.class); + ClientDeleteRule related = context.newObject(ClientDeleteRule.class); object.setDeny(related); context.commitChanges(); @@ -84,10 +84,10 @@ public class CayenneContextDeleteRulesIT extends ClientCase { @Test public void testCascadeToOne() { - ClientMtDeleteCascade object = context.newObject(ClientMtDeleteCascade.class); + ClientDeleteCascade object = context.newObject(ClientDeleteCascade.class); object.setName("object"); - ClientMtDeleteRule related = context.newObject(ClientMtDeleteRule.class); + ClientDeleteRule related = context.newObject(ClientDeleteRule.class); object.setName("related"); object.setCascade(related); @@ -104,10 +104,10 @@ public class CayenneContextDeleteRulesIT extends ClientCase { @Test public void testCascadeToOneNewObject() { - ClientMtDeleteRule related = context.newObject(ClientMtDeleteRule.class); + ClientDeleteRule related = context.newObject(ClientDeleteRule.class); context.commitChanges(); - ClientMtDeleteCascade object = context.newObject(ClientMtDeleteCascade.class); + ClientDeleteCascade object = context.newObject(ClientDeleteCascade.class); object.setName("object"); object.setCascade(related); http://git-wip-us.apache.org/repos/asf/cayenne/blob/fb8660e7/cayenne-client/src/test/java/org/apache/cayenne/CayenneContextMapRelationshipIT.java ---------------------------------------------------------------------- diff --git a/cayenne-client/src/test/java/org/apache/cayenne/CayenneContextMapRelationshipIT.java b/cayenne-client/src/test/java/org/apache/cayenne/CayenneContextMapRelationshipIT.java index 46fd918..7ae2dee 100644 --- a/cayenne-client/src/test/java/org/apache/cayenne/CayenneContextMapRelationshipIT.java +++ b/cayenne-client/src/test/java/org/apache/cayenne/CayenneContextMapRelationshipIT.java @@ -23,9 +23,9 @@ import org.apache.cayenne.query.ObjectIdQuery; import org.apache.cayenne.query.RefreshQuery; import org.apache.cayenne.test.jdbc.DBHelper; import org.apache.cayenne.test.jdbc.TableHelper; -import org.apache.cayenne.testdo.mt.ClientMtMapToMany; -import org.apache.cayenne.testdo.mt.ClientMtMapToManyTarget; -import org.apache.cayenne.testdo.mt.MtMapToMany; +import org.apache.cayenne.testdo.map_to_many.ClientIdMapToMany; +import org.apache.cayenne.testdo.map_to_many.ClientIdMapToManyTarget; +import org.apache.cayenne.testdo.map_to_many.IdMapToMany; import org.apache.cayenne.unit.di.client.ClientCase; import org.apache.cayenne.unit.di.server.UseServerRuntime; import org.junit.Test; @@ -37,7 +37,7 @@ import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertSame; import static org.junit.Assert.assertTrue; -@UseServerRuntime(ClientCase.MULTI_TIER_PROJECT) +@UseServerRuntime(ClientCase.MAP_TO_MANY_PROJECT) public class CayenneContextMapRelationshipIT extends ClientCase { @Inject @@ -46,36 +46,36 @@ public class CayenneContextMapRelationshipIT extends ClientCase { @Inject private DBHelper dbHelper; - private TableHelper tMtMapToMany; - private TableHelper tMtMapToManyTarget; + private TableHelper tMapToMany; + private TableHelper tMapToManyTarget; @Override protected void setUpAfterInjection() throws Exception { - dbHelper.deleteAll("MT_MAP_TO_MANY_TARGET"); - dbHelper.deleteAll("MT_MAP_TO_MANY"); + dbHelper.deleteAll("ID_MAP_TO_MANY_TARGET"); + dbHelper.deleteAll("ID_MAP_TO_MANY"); - tMtMapToMany = new TableHelper(dbHelper, "MT_MAP_TO_MANY"); - tMtMapToMany.setColumns("ID"); + tMapToMany = new TableHelper(dbHelper, "ID_MAP_TO_MANY"); + tMapToMany.setColumns("ID"); - tMtMapToManyTarget = new TableHelper(dbHelper, "MT_MAP_TO_MANY_TARGET"); - tMtMapToManyTarget.setColumns("ID", "MAP_TO_MANY_ID"); + tMapToManyTarget = new TableHelper(dbHelper, "ID_MAP_TO_MANY_TARGET"); + tMapToManyTarget.setColumns("ID", "MAP_TO_MANY_ID"); } private void createTwoMapToManysWithTargetsDataSet() throws Exception { - tMtMapToMany.insert(1).insert(2); - tMtMapToManyTarget.insert(1, 1).insert(2, 1).insert(3, 1).insert(4, 2); + tMapToMany.insert(1).insert(2); + tMapToManyTarget.insert(1, 1).insert(2, 1).insert(3, 1).insert(4, 2); } @Test public void testReadToMany() throws Exception { createTwoMapToManysWithTargetsDataSet(); - ObjectId id = new ObjectId("MtMapToMany", MtMapToMany.ID_PK_COLUMN, 1); - ClientMtMapToMany o1 = (ClientMtMapToMany) Cayenne.objectForQuery( + ObjectId id = new ObjectId("IdMapToMany", IdMapToMany.ID_PK_COLUMN, 1); + ClientIdMapToMany o1 = (ClientIdMapToMany) Cayenne.objectForQuery( context, new ObjectIdQuery(id)); - Map<Object, ClientMtMapToManyTarget> targets = o1.getTargets(); + Map<Object, ClientIdMapToManyTarget> targets = o1.getTargets(); assertTrue(((ValueHolder) targets).isFault()); @@ -90,17 +90,17 @@ public class CayenneContextMapRelationshipIT extends ClientCase { public void testAddToMany() throws Exception { createTwoMapToManysWithTargetsDataSet(); - ObjectId id = new ObjectId("MtMapToMany", MtMapToMany.ID_PK_COLUMN, 1); - ClientMtMapToMany o1 = (ClientMtMapToMany) Cayenne.objectForQuery( + ObjectId id = new ObjectId("IdMapToMany", IdMapToMany.ID_PK_COLUMN, 1); + ClientIdMapToMany o1 = (ClientIdMapToMany) Cayenne.objectForQuery( context, new ObjectIdQuery(id)); - Map<Object, ClientMtMapToManyTarget> targets = o1.getTargets(); + Map<Object, ClientIdMapToManyTarget> targets = o1.getTargets(); assertNotNull(targets); assertEquals(3, targets.size()); - ClientMtMapToManyTarget newTarget = o1.getObjectContext().newObject( - ClientMtMapToManyTarget.class); + ClientIdMapToManyTarget newTarget = o1.getObjectContext().newObject( + ClientIdMapToManyTarget.class); o1.addToTargets(newTarget); assertEquals(4, targets.size()); http://git-wip-us.apache.org/repos/asf/cayenne/blob/fb8660e7/cayenne-client/src/test/java/org/apache/cayenne/CayenneContextMeaningfulPKIT.java ---------------------------------------------------------------------- diff --git a/cayenne-client/src/test/java/org/apache/cayenne/CayenneContextMeaningfulPKIT.java b/cayenne-client/src/test/java/org/apache/cayenne/CayenneContextMeaningfulPKIT.java new file mode 100644 index 0000000..89dd47e --- /dev/null +++ b/cayenne-client/src/test/java/org/apache/cayenne/CayenneContextMeaningfulPKIT.java @@ -0,0 +1,53 @@ +package org.apache.cayenne; + +import org.apache.cayenne.di.Inject; +import org.apache.cayenne.query.SelectQuery; +import org.apache.cayenne.query.SortOrder; +import org.apache.cayenne.test.jdbc.DBHelper; +import org.apache.cayenne.test.jdbc.TableHelper; +import org.apache.cayenne.testdo.meaningful_pk.ClientMeaningfulPk; +import org.apache.cayenne.unit.di.client.ClientCase; +import org.apache.cayenne.unit.di.server.UseServerRuntime; +import org.junit.Test; + +import java.util.List; + +import static org.junit.Assert.assertEquals; + +@UseServerRuntime(ClientCase.MEANINGFUL_PK_PROJECT) +public class CayenneContextMeaningfulPKIT extends ClientCase { + + @Inject + private CayenneContext clientContext; + + @Inject + private DBHelper dbHelper; + + private TableHelper tMeaningfulPK; + + @Override + protected void setUpAfterInjection() throws Exception { + dbHelper.deleteAll("MEANINGFUL_PK"); + + tMeaningfulPK = new TableHelper(dbHelper, "MEANINGFUL_PK"); + tMeaningfulPK.setColumns("PK"); + } + + private void deleteAndCreateTwoMeaningfulPKsDataSet() throws Exception { + tMeaningfulPK.deleteAll(); + tMeaningfulPK.insert("A"); + tMeaningfulPK.insert("B"); + } + + @Test + public void testMeaningfulPK() throws Exception { + deleteAndCreateTwoMeaningfulPKsDataSet(); + + SelectQuery query = new SelectQuery(ClientMeaningfulPk.class); + query.addOrdering(ClientMeaningfulPk.PK_PROPERTY, SortOrder.DESCENDING); + + List<?> results = clientContext.performQuery(query); + assertEquals(2, results.size()); + } + +} http://git-wip-us.apache.org/repos/asf/cayenne/blob/fb8660e7/cayenne-client/src/test/java/org/apache/cayenne/CayenneContextPrimitiveIT.java ---------------------------------------------------------------------- diff --git a/cayenne-client/src/test/java/org/apache/cayenne/CayenneContextPrimitiveIT.java b/cayenne-client/src/test/java/org/apache/cayenne/CayenneContextPrimitiveIT.java index f75111c..0c402d5 100644 --- a/cayenne-client/src/test/java/org/apache/cayenne/CayenneContextPrimitiveIT.java +++ b/cayenne-client/src/test/java/org/apache/cayenne/CayenneContextPrimitiveIT.java @@ -23,8 +23,8 @@ import org.apache.cayenne.query.SelectQuery; import org.apache.cayenne.query.SortOrder; import org.apache.cayenne.test.jdbc.DBHelper; import org.apache.cayenne.test.jdbc.TableHelper; -import org.apache.cayenne.testdo.mt.ClientMtTablePrimitives; -import org.apache.cayenne.testdo.mt.MtTablePrimitives; +import org.apache.cayenne.testdo.table_primitives.ClientTablePrimitives; +import org.apache.cayenne.testdo.table_primitives.TablePrimitives; import org.apache.cayenne.unit.UnitDbAdapter; import org.apache.cayenne.unit.di.client.ClientCase; import org.apache.cayenne.unit.di.server.UseServerRuntime; @@ -37,7 +37,7 @@ import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; -@UseServerRuntime(ClientCase.MULTI_TIER_PROJECT) +@UseServerRuntime(ClientCase.TABLE_PRIMITIVES_PROJECT) public class CayenneContextPrimitiveIT extends ClientCase { @Inject @@ -49,34 +49,34 @@ public class CayenneContextPrimitiveIT extends ClientCase { @Inject private DBHelper dbHelper; - private TableHelper tMtTablePrimitives; + private TableHelper tTablePrimitives; @Override protected void setUpAfterInjection() throws Exception { - dbHelper.deleteAll("MT_TABLE_PRIMITIVES"); + dbHelper.deleteAll("TABLE_PRIMITIVES"); int bool = accessStackAdapter.supportsBoolean() ? Types.BOOLEAN : Types.INTEGER; - tMtTablePrimitives = new TableHelper(dbHelper, "MT_TABLE_PRIMITIVES"); - tMtTablePrimitives.setColumns("ID", "BOOLEAN_COLUMN", "INT_COLUMN").setColumnTypes( + tTablePrimitives = new TableHelper(dbHelper, "TABLE_PRIMITIVES"); + tTablePrimitives.setColumns("ID", "BOOLEAN_COLUMN", "INT_COLUMN").setColumnTypes( Types.INTEGER, bool, Types.INTEGER); } private void createTwoPrimitivesDataSet() throws Exception { - tMtTablePrimitives.insert(1, accessStackAdapter.supportsBoolean() ? true : 1, 0); - tMtTablePrimitives.insert(2, accessStackAdapter.supportsBoolean() ? false : 0, 5); + tTablePrimitives.insert(1, accessStackAdapter.supportsBoolean() ? true : 1, 0); + tTablePrimitives.insert(2, accessStackAdapter.supportsBoolean() ? false : 0, 5); } @Test public void testSelectPrimitives() throws Exception { createTwoPrimitivesDataSet(); - SelectQuery query = new SelectQuery(ClientMtTablePrimitives.class); - query.addOrdering("db:" + MtTablePrimitives.ID_PK_COLUMN, SortOrder.ASCENDING); + SelectQuery query = new SelectQuery(ClientTablePrimitives.class); + query.addOrdering("db:" + TablePrimitives.ID_PK_COLUMN, SortOrder.ASCENDING); - List<ClientMtTablePrimitives> results = context.performQuery(query); + List<ClientTablePrimitives> results = context.performQuery(query); assertTrue(results.get(0).isBooleanColumn()); assertFalse(results.get(1).isBooleanColumn()); @@ -87,21 +87,21 @@ public class CayenneContextPrimitiveIT extends ClientCase { @Test public void testCommitChangesPrimitives() throws Exception { - ClientMtTablePrimitives object = context.newObject(ClientMtTablePrimitives.class); + ClientTablePrimitives object = context.newObject(ClientTablePrimitives.class); object.setBooleanColumn(true); object.setIntColumn(3); context.commitChanges(); - assertTrue(tMtTablePrimitives.getBoolean("BOOLEAN_COLUMN")); - assertEquals(3, tMtTablePrimitives.getInt("INT_COLUMN")); + assertTrue(tTablePrimitives.getBoolean("BOOLEAN_COLUMN")); + assertEquals(3, tTablePrimitives.getInt("INT_COLUMN")); object.setBooleanColumn(false); object.setIntColumn(8); context.commitChanges(); - assertFalse(tMtTablePrimitives.getBoolean("BOOLEAN_COLUMN")); - assertEquals(8, tMtTablePrimitives.getInt("INT_COLUMN")); + assertFalse(tTablePrimitives.getBoolean("BOOLEAN_COLUMN")); + assertEquals(8, tTablePrimitives.getInt("INT_COLUMN")); } } http://git-wip-us.apache.org/repos/asf/cayenne/blob/fb8660e7/cayenne-client/src/test/java/org/apache/cayenne/CayenneContextReflexiveIT.java ---------------------------------------------------------------------- diff --git a/cayenne-client/src/test/java/org/apache/cayenne/CayenneContextReflexiveIT.java b/cayenne-client/src/test/java/org/apache/cayenne/CayenneContextReflexiveIT.java new file mode 100644 index 0000000..04fb4e2 --- /dev/null +++ b/cayenne-client/src/test/java/org/apache/cayenne/CayenneContextReflexiveIT.java @@ -0,0 +1,74 @@ +package org.apache.cayenne; + +import org.apache.cayenne.access.ClientServerChannel; +import org.apache.cayenne.di.Inject; +import org.apache.cayenne.reflect.LifecycleCallbackRegistry; +import org.apache.cayenne.testdo.reflexive.ClientReflexive; +import org.apache.cayenne.testdo.reflexive.Reflexive; +import org.apache.cayenne.unit.di.client.ClientCase; +import org.apache.cayenne.unit.di.server.UseServerRuntime; +import org.junit.Test; + +@UseServerRuntime(ClientCase.REFLEXIVE_PROJECT) +public class CayenneContextReflexiveIT extends ClientCase { + + @Inject + private CayenneContext clientContext; + + @Inject + private ClientServerChannel clientServerChannel; + + @Test + public void testCAY830() throws Exception { + + // an exception was triggered within POST_LOAD callback + LifecycleCallbackRegistry callbackRegistry = clientServerChannel + .getEntityResolver() + .getCallbackRegistry(); + + try { + callbackRegistry.addListener(Reflexive.class, new LifecycleListener() { + + public void postLoad(Object entity) { + } + + public void postPersist(Object entity) { + } + + public void postRemove(Object entity) { + } + + public void postUpdate(Object entity) { + } + + public void postAdd(Object entity) { + } + + public void preRemove(Object entity) { + } + + public void preUpdate(Object entity) { + } + + public void prePersist(Object entity) { + } + }); + + ClientReflexive o1 = clientContext.newObject(ClientReflexive.class); + o1.setName("parent"); + + ClientReflexive o2 = clientContext.newObject(ClientReflexive.class); + o2.setName("child"); + o2.setToParent(o1); + clientContext.commitChanges(); + + clientContext.deleteObjects(o1); + clientContext.deleteObjects(o2); + clientContext.commitChanges(); + // per CAY-830 an exception is thrown here + } + finally { + callbackRegistry.clear(); + } + } +} http://git-wip-us.apache.org/repos/asf/cayenne/blob/fb8660e7/cayenne-client/src/test/java/org/apache/cayenne/CayenneContextWithDataContextIT.java ---------------------------------------------------------------------- diff --git a/cayenne-client/src/test/java/org/apache/cayenne/CayenneContextWithDataContextIT.java b/cayenne-client/src/test/java/org/apache/cayenne/CayenneContextWithDataContextIT.java index ed19ebe..69676c7 100644 --- a/cayenne-client/src/test/java/org/apache/cayenne/CayenneContextWithDataContextIT.java +++ b/cayenne-client/src/test/java/org/apache/cayenne/CayenneContextWithDataContextIT.java @@ -32,11 +32,8 @@ import org.apache.cayenne.remote.RemoteIncrementalFaultList; import org.apache.cayenne.test.jdbc.DBHelper; import org.apache.cayenne.test.jdbc.TableHelper; import org.apache.cayenne.test.parallel.ParallelTestContainer; -import org.apache.cayenne.testdo.mt.ClientMtMeaningfulPk; -import org.apache.cayenne.testdo.mt.ClientMtReflexive; import org.apache.cayenne.testdo.mt.ClientMtTable1; import org.apache.cayenne.testdo.mt.ClientMtTable2; -import org.apache.cayenne.testdo.mt.MtReflexive; import org.apache.cayenne.testdo.mt.MtTable1; import org.apache.cayenne.unit.di.DataChannelInterceptor; import org.apache.cayenne.unit.di.UnitTestClosure; @@ -74,8 +71,6 @@ public class CayenneContextWithDataContextIT extends ClientCase { private TableHelper tMtTable1; private TableHelper tMtTable2; - private TableHelper tMtMeaningfulPK; - @Override protected void setUpAfterInjection() throws Exception { dbHelper.deleteAll("MT_TABLE2"); @@ -87,15 +82,6 @@ public class CayenneContextWithDataContextIT extends ClientCase { tMtTable2 = new TableHelper(dbHelper, "MT_TABLE2"); tMtTable2.setColumns("TABLE2_ID", "TABLE1_ID", "GLOBAL_ATTRIBUTE").setColumnTypes( Types.INTEGER, Types.INTEGER, Types.VARCHAR); - - tMtMeaningfulPK = new TableHelper(dbHelper, "MT_MEANINGFUL_PK"); - tMtMeaningfulPK.setColumns("PK"); - } - - private void deleteAndCreateTwoMeaningfulPKsDataSet() throws Exception { - tMtMeaningfulPK.deleteAll(); - tMtMeaningfulPK.insert("A"); - tMtMeaningfulPK.insert("B"); } private void createTwoMtTable1sAnd2sDataSet() throws Exception { @@ -304,60 +290,6 @@ public class CayenneContextWithDataContextIT extends ClientCase { } @Test - public void testCAY830() throws Exception { - - // an exception was triggered within POST_LOAD callback - LifecycleCallbackRegistry callbackRegistry = clientServerChannel - .getEntityResolver() - .getCallbackRegistry(); - - try { - callbackRegistry.addListener(MtReflexive.class, new LifecycleListener() { - - public void postLoad(Object entity) { - } - - public void postPersist(Object entity) { - } - - public void postRemove(Object entity) { - } - - public void postUpdate(Object entity) { - } - - public void postAdd(Object entity) { - } - - public void preRemove(Object entity) { - } - - public void preUpdate(Object entity) { - } - - public void prePersist(Object entity) { - } - }); - - ClientMtReflexive o1 = clientContext.newObject(ClientMtReflexive.class); - o1.setName("parent"); - - ClientMtReflexive o2 = clientContext.newObject(ClientMtReflexive.class); - o2.setName("child"); - o2.setToParent(o1); - clientContext.commitChanges(); - - clientContext.deleteObjects(o1); - clientContext.deleteObjects(o2); - clientContext.commitChanges(); - // per CAY-830 an exception is thrown here - } - finally { - callbackRegistry.clear(); - } - } - - @Test public void testRollbackChanges() throws Exception { ClientMtTable1 o = clientContext.newObject(ClientMtTable1.class); @@ -417,17 +349,6 @@ public class CayenneContextWithDataContextIT extends ClientCase { } @Test - public void testMeaningfulPK() throws Exception { - deleteAndCreateTwoMeaningfulPKsDataSet(); - - SelectQuery query = new SelectQuery(ClientMtMeaningfulPk.class); - query.addOrdering(ClientMtMeaningfulPk.PK_PROPERTY, SortOrder.DESCENDING); - - List<?> results = clientContext.performQuery(query); - assertEquals(2, results.size()); - } - - @Test public void testPrefetchingToOne() throws Exception { createTwoMtTable1sAnd2sDataSet(); http://git-wip-us.apache.org/repos/asf/cayenne/blob/fb8660e7/cayenne-client/src/test/java/org/apache/cayenne/NestedCayenneContextIT.java ---------------------------------------------------------------------- diff --git a/cayenne-client/src/test/java/org/apache/cayenne/NestedCayenneContextIT.java b/cayenne-client/src/test/java/org/apache/cayenne/NestedCayenneContextIT.java index 20b7a5d..0e489ab 100644 --- a/cayenne-client/src/test/java/org/apache/cayenne/NestedCayenneContextIT.java +++ b/cayenne-client/src/test/java/org/apache/cayenne/NestedCayenneContextIT.java @@ -29,8 +29,6 @@ import org.apache.cayenne.remote.service.LocalConnection; import org.apache.cayenne.test.jdbc.DBHelper; import org.apache.cayenne.testdo.mt.ClientMtTable1; import org.apache.cayenne.testdo.mt.ClientMtTable2; -import org.apache.cayenne.testdo.mt.ClientMtTooneDep; -import org.apache.cayenne.testdo.mt.ClientMtTooneMaster; import org.apache.cayenne.unit.di.DataChannelInterceptor; import org.apache.cayenne.unit.di.UnitTestClosure; import org.apache.cayenne.unit.di.client.ClientCase; @@ -499,102 +497,6 @@ public class NestedCayenneContextIT extends RemoteCayenneCase { assertEquals("DDD", parentDeleted.getGlobalAttribute1()); } - /* - * was added for CAY-1636 - */ - @Test - public void testCAY1636() throws Exception { - - ClientMtTooneMaster A = clientContext - .newObject(ClientMtTooneMaster.class); - clientContext.commitChanges(); - - ClientMtTooneDep B = clientContext.newObject(ClientMtTooneDep.class); - A.setToDependent(B); - clientContext.commitChanges(); - - ObjectContext child = runtime.newContext(clientContext); - - SelectQuery<ClientMtTooneMaster> query = new SelectQuery<ClientMtTooneMaster>( - ClientMtTooneMaster.class); - List<ClientMtTooneMaster> objects = child.select(query); - - assertEquals(1, objects.size()); - - ClientMtTooneMaster childDeleted = (ClientMtTooneMaster) objects.get(0); - - child.deleteObjects(childDeleted); - - child.commitChangesToParent(); - - ClientMtTooneMaster parentDeleted = (ClientMtTooneMaster) clientContext - .getGraphManager().getNode(childDeleted.getObjectId()); - - assertNotNull(parentDeleted); - assertEquals(PersistenceState.DELETED, - parentDeleted.getPersistenceState()); - - clientContext.commitChanges(); - - SelectQuery<ClientMtTooneMaster> query2 = new SelectQuery<ClientMtTooneMaster>( - ClientMtTooneMaster.class); - List<ClientMtTooneMaster> objects2 = child.select(query2); - - assertEquals(0, objects2.size()); - - } - - @Test - public void testCAY1636_2() throws Exception { - - ClientMtTooneMaster A = clientContext - .newObject(ClientMtTooneMaster.class); - clientContext.commitChanges(); - - ClientMtTooneDep B = clientContext.newObject(ClientMtTooneDep.class); - A.setToDependent(B); - clientContext.commitChanges(); - - ObjectContext child = runtime.newContext(clientContext); - - SelectQuery<ClientMtTooneDep> queryB = new SelectQuery<ClientMtTooneDep>( - ClientMtTooneDep.class); - List<?> objectsB = child.performQuery(queryB); - - assertEquals(1, objectsB.size()); - - ClientMtTooneDep childBDeleted = (ClientMtTooneDep) objectsB.get(0); - child.deleteObjects(childBDeleted); - - SelectQuery<ClientMtTooneMaster> query = new SelectQuery<ClientMtTooneMaster>( - ClientMtTooneMaster.class); - List<ClientMtTooneMaster> objects = child.select(query); - - assertEquals(1, objects.size()); - - ClientMtTooneMaster childDeleted = objects.get(0); - - child.deleteObjects(childDeleted); - - child.commitChangesToParent(); - - ClientMtTooneMaster parentDeleted = (ClientMtTooneMaster) clientContext - .getGraphManager().getNode(childDeleted.getObjectId()); - - assertNotNull(parentDeleted); - assertEquals(PersistenceState.DELETED, - parentDeleted.getPersistenceState()); - - clientContext.commitChanges(); - - SelectQuery<ClientMtTooneMaster> query2 = new SelectQuery<ClientMtTooneMaster>( - ClientMtTooneMaster.class); - List<ClientMtTooneMaster> objects2 = child.select(query2); - - assertEquals(0, objects2.size()); - - } - @Test public void testCommitChanges() throws Exception { clientContext.newObject(ClientMtTable1.class); @@ -853,62 +755,4 @@ public class NestedCayenneContextIT extends RemoteCayenneCase { assertEquals(2, arcDiffs[0]); } - @Test - public void testCommitChangesToParentOneToOne() throws Exception { - ObjectContext child = runtime.newContext(clientContext); - - ClientMtTooneMaster master = child.newObject(ClientMtTooneMaster.class); - ClientMtTooneDep dep = child.newObject(ClientMtTooneDep.class); - master.setToDependent(dep); - - child.commitChangesToParent(); - - ClientMtTooneMaster masterParent = (ClientMtTooneMaster) clientContext - .getGraphManager().getNode(master.getObjectId()); - ClientMtTooneDep depParent = (ClientMtTooneDep) clientContext - .getGraphManager().getNode(dep.getObjectId()); - - assertNotNull(masterParent); - assertNotNull(depParent); - - assertSame(masterParent, depParent.getToMaster()); - assertSame(depParent, masterParent.getToDependent()); - - // check that arc changes got recorded in the parent context - GraphDiff diffs = clientContext.internalGraphManager().getDiffs(); - - final int[] arcDiffs = new int[1]; - final int[] newNodes = new int[1]; - - diffs.apply(new GraphChangeHandler() { - - public void arcCreated(Object nodeId, Object targetNodeId, - Object arcId) { - arcDiffs[0]++; - } - - public void arcDeleted(Object nodeId, Object targetNodeId, - Object arcId) { - arcDiffs[0]--; - } - - public void nodeCreated(Object nodeId) { - newNodes[0]++; - } - - public void nodeIdChanged(Object nodeId, Object newId) { - } - - public void nodePropertyChanged(Object nodeId, String property, - Object oldValue, Object newValue) { - } - - public void nodeRemoved(Object nodeId) { - newNodes[0]--; - } - }); - - assertEquals(2, newNodes[0]); - assertEquals(2, arcDiffs[0]); - } } http://git-wip-us.apache.org/repos/asf/cayenne/blob/fb8660e7/cayenne-client/src/test/java/org/apache/cayenne/NestedCayenneContextTooneIT.java ---------------------------------------------------------------------- diff --git a/cayenne-client/src/test/java/org/apache/cayenne/NestedCayenneContextTooneIT.java b/cayenne-client/src/test/java/org/apache/cayenne/NestedCayenneContextTooneIT.java new file mode 100644 index 0000000..e548368 --- /dev/null +++ b/cayenne-client/src/test/java/org/apache/cayenne/NestedCayenneContextTooneIT.java @@ -0,0 +1,204 @@ +package org.apache.cayenne; + +import org.apache.cayenne.configuration.rop.client.ClientRuntime; +import org.apache.cayenne.di.Inject; +import org.apache.cayenne.graph.GraphChangeHandler; +import org.apache.cayenne.graph.GraphDiff; +import org.apache.cayenne.query.SelectQuery; +import org.apache.cayenne.remote.RemoteCayenneCase; +import org.apache.cayenne.remote.service.LocalConnection; +import org.apache.cayenne.testdo.toone.ClientTooneDep; +import org.apache.cayenne.testdo.toone.ClientTooneMaster; +import org.apache.cayenne.unit.di.DataChannelInterceptor; +import org.apache.cayenne.unit.di.client.ClientCase; +import org.apache.cayenne.unit.di.server.UseServerRuntime; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.junit.runners.Parameterized; + +import java.util.Arrays; +import java.util.Collection; +import java.util.List; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertSame; + +@UseServerRuntime(ClientCase.TOONE_PROJECT) +@RunWith(value = Parameterized.class) +public class NestedCayenneContextTooneIT extends RemoteCayenneCase { + + @Inject + private ClientRuntime runtime; + + @Inject + private DataChannelInterceptor queryInterceptor; + + @Parameterized.Parameters + public static Collection<Object[]> data() { + return Arrays.asList(new Object[][]{ + {LocalConnection.HESSIAN_SERIALIZATION}, + {LocalConnection.JAVA_SERIALIZATION}, + {LocalConnection.NO_SERIALIZATION},}); + } + + public NestedCayenneContextTooneIT(int serializationPolicy) { + super.serializationPolicy = serializationPolicy; + } + + /* + * was added for CAY-1636 + */ + @Test + public void testCAY1636() throws Exception { + + ClientTooneMaster A = clientContext + .newObject(ClientTooneMaster.class); + clientContext.commitChanges(); + + ClientTooneDep B = clientContext.newObject(ClientTooneDep.class); + A.setToDependent(B); + clientContext.commitChanges(); + + ObjectContext child = runtime.newContext(clientContext); + + SelectQuery<ClientTooneMaster> query = new SelectQuery<ClientTooneMaster>( + ClientTooneMaster.class); + List<ClientTooneMaster> objects = child.select(query); + + assertEquals(1, objects.size()); + + ClientTooneMaster childDeleted = (ClientTooneMaster) objects.get(0); + + child.deleteObjects(childDeleted); + + child.commitChangesToParent(); + + ClientTooneMaster parentDeleted = (ClientTooneMaster) clientContext + .getGraphManager().getNode(childDeleted.getObjectId()); + + assertNotNull(parentDeleted); + assertEquals(PersistenceState.DELETED, + parentDeleted.getPersistenceState()); + + clientContext.commitChanges(); + + SelectQuery<ClientTooneMaster> query2 = new SelectQuery<ClientTooneMaster>( + ClientTooneMaster.class); + List<ClientTooneMaster> objects2 = child.select(query2); + + assertEquals(0, objects2.size()); + + } + + @Test + public void testCAY1636_2() throws Exception { + + ClientTooneMaster A = clientContext + .newObject(ClientTooneMaster.class); + clientContext.commitChanges(); + + ClientTooneDep B = clientContext.newObject(ClientTooneDep.class); + A.setToDependent(B); + clientContext.commitChanges(); + + ObjectContext child = runtime.newContext(clientContext); + + SelectQuery<ClientTooneDep> queryB = new SelectQuery<ClientTooneDep>( + ClientTooneDep.class); + List<?> objectsB = child.performQuery(queryB); + + assertEquals(1, objectsB.size()); + + ClientTooneDep childBDeleted = (ClientTooneDep) objectsB.get(0); + child.deleteObjects(childBDeleted); + + SelectQuery<ClientTooneMaster> query = new SelectQuery<ClientTooneMaster>( + ClientTooneMaster.class); + List<ClientTooneMaster> objects = child.select(query); + + assertEquals(1, objects.size()); + + ClientTooneMaster childDeleted = objects.get(0); + + child.deleteObjects(childDeleted); + + child.commitChangesToParent(); + + ClientTooneMaster parentDeleted = (ClientTooneMaster) clientContext + .getGraphManager().getNode(childDeleted.getObjectId()); + + assertNotNull(parentDeleted); + assertEquals(PersistenceState.DELETED, + parentDeleted.getPersistenceState()); + + clientContext.commitChanges(); + + SelectQuery<ClientTooneMaster> query2 = new SelectQuery<ClientTooneMaster>( + ClientTooneMaster.class); + List<ClientTooneMaster> objects2 = child.select(query2); + + assertEquals(0, objects2.size()); + + } + + @Test + public void testCommitChangesToParentOneToOne() throws Exception { + ObjectContext child = runtime.newContext(clientContext); + + ClientTooneMaster master = child.newObject(ClientTooneMaster.class); + ClientTooneDep dep = child.newObject(ClientTooneDep.class); + master.setToDependent(dep); + + child.commitChangesToParent(); + + ClientTooneMaster masterParent = (ClientTooneMaster) clientContext + .getGraphManager().getNode(master.getObjectId()); + ClientTooneDep depParent = (ClientTooneDep) clientContext + .getGraphManager().getNode(dep.getObjectId()); + + assertNotNull(masterParent); + assertNotNull(depParent); + + assertSame(masterParent, depParent.getToMaster()); + assertSame(depParent, masterParent.getToDependent()); + + // check that arc changes got recorded in the parent context + GraphDiff diffs = clientContext.internalGraphManager().getDiffs(); + + final int[] arcDiffs = new int[1]; + final int[] newNodes = new int[1]; + + diffs.apply(new GraphChangeHandler() { + + public void arcCreated(Object nodeId, Object targetNodeId, + Object arcId) { + arcDiffs[0]++; + } + + public void arcDeleted(Object nodeId, Object targetNodeId, + Object arcId) { + arcDiffs[0]--; + } + + public void nodeCreated(Object nodeId) { + newNodes[0]++; + } + + public void nodeIdChanged(Object nodeId, Object newId) { + } + + public void nodePropertyChanged(Object nodeId, String property, + Object oldValue, Object newValue) { + } + + public void nodeRemoved(Object nodeId) { + newNodes[0]--; + } + }); + + assertEquals(2, newNodes[0]); + assertEquals(2, arcDiffs[0]); + } + +} http://git-wip-us.apache.org/repos/asf/cayenne/blob/fb8660e7/cayenne-client/src/test/java/org/apache/cayenne/map/ClientEntityResolverIT.java ---------------------------------------------------------------------- diff --git a/cayenne-client/src/test/java/org/apache/cayenne/map/ClientEntityResolverIT.java b/cayenne-client/src/test/java/org/apache/cayenne/map/ClientEntityResolverIT.java deleted file mode 100644 index c87060c..0000000 --- a/cayenne-client/src/test/java/org/apache/cayenne/map/ClientEntityResolverIT.java +++ /dev/null @@ -1,69 +0,0 @@ -/***************************************************************** - * 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.cayenne.map; - -import org.apache.cayenne.remote.hessian.service.HessianUtil; -import org.apache.cayenne.testdo.testmap.Artist; -import org.apache.cayenne.unit.di.client.ClientCase; -import org.apache.cayenne.unit.di.server.UseServerRuntime; -import org.junit.Test; - -import java.util.Collection; -import java.util.Collections; - -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertNotNull; -import static org.junit.Assert.assertNotSame; -import static org.junit.Assert.assertTrue; - -@UseServerRuntime(ClientCase.MULTI_TIER_PROJECT) -public class ClientEntityResolverIT extends ClientCase { - - @Test - public void testSerializabilityWithHessian() throws Exception { - ObjEntity entity = new ObjEntity("test_entity"); - entity.setClassName(Artist.class.getName()); - - DataMap dataMap = new DataMap("test"); - dataMap.addObjEntity(entity); - Collection<DataMap> maps = Collections.singleton(dataMap); - EntityResolver resolver = new EntityResolver(maps); - - // 1. simple case - Object c1 = HessianUtil.cloneViaClientServerSerialization(resolver, new EntityResolver()); - - assertNotNull(c1); - assertTrue(c1 instanceof EntityResolver); - EntityResolver cr1 = (EntityResolver) c1; - - assertNotSame(resolver, cr1); - assertEquals(1, cr1.getObjEntities().size()); - assertNotNull(cr1.getObjEntity(entity.getName())); - - // 2. with descriptors resolved... - assertNotNull(resolver.getClassDescriptor(entity.getName())); - - EntityResolver cr2 = (EntityResolver) HessianUtil.cloneViaClientServerSerialization(resolver, - new EntityResolver()); - assertNotNull(cr2); - assertEquals(1, cr2.getObjEntities().size()); - assertNotNull(cr2.getObjEntity(entity.getName())); - assertNotNull(cr2.getClassDescriptor(entity.getName())); - } -} http://git-wip-us.apache.org/repos/asf/cayenne/blob/fb8660e7/cayenne-client/src/test/java/org/apache/cayenne/map/ClientEntityResolverTest.java ---------------------------------------------------------------------- diff --git a/cayenne-client/src/test/java/org/apache/cayenne/map/ClientEntityResolverTest.java b/cayenne-client/src/test/java/org/apache/cayenne/map/ClientEntityResolverTest.java new file mode 100644 index 0000000..ad61805 --- /dev/null +++ b/cayenne-client/src/test/java/org/apache/cayenne/map/ClientEntityResolverTest.java @@ -0,0 +1,66 @@ +/***************************************************************** + * 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.cayenne.map; + +import org.apache.cayenne.remote.hessian.service.HessianUtil; +import org.apache.cayenne.testdo.testmap.Artist; +import org.junit.Test; + +import java.util.Collection; +import java.util.Collections; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertNotSame; +import static org.junit.Assert.assertTrue; + +public class ClientEntityResolverTest { + + @Test + public void testSerializabilityWithHessian() throws Exception { + ObjEntity entity = new ObjEntity("test_entity"); + entity.setClassName(Artist.class.getName()); + + DataMap dataMap = new DataMap("test"); + dataMap.addObjEntity(entity); + Collection<DataMap> maps = Collections.singleton(dataMap); + EntityResolver resolver = new EntityResolver(maps); + + // 1. simple case + Object c1 = HessianUtil.cloneViaClientServerSerialization(resolver, new EntityResolver()); + + assertNotNull(c1); + assertTrue(c1 instanceof EntityResolver); + EntityResolver cr1 = (EntityResolver) c1; + + assertNotSame(resolver, cr1); + assertEquals(1, cr1.getObjEntities().size()); + assertNotNull(cr1.getObjEntity(entity.getName())); + + // 2. with descriptors resolved... + assertNotNull(resolver.getClassDescriptor(entity.getName())); + + EntityResolver cr2 = (EntityResolver) HessianUtil.cloneViaClientServerSerialization(resolver, + new EntityResolver()); + assertNotNull(cr2); + assertEquals(1, cr2.getObjEntities().size()); + assertNotNull(cr2.getObjEntity(entity.getName())); + assertNotNull(cr2.getClassDescriptor(entity.getName())); + } +} http://git-wip-us.apache.org/repos/asf/cayenne/blob/fb8660e7/cayenne-client/src/test/java/org/apache/cayenne/remote/LightSuperClassIT.java ---------------------------------------------------------------------- diff --git a/cayenne-client/src/test/java/org/apache/cayenne/remote/LightSuperClassIT.java b/cayenne-client/src/test/java/org/apache/cayenne/remote/LightSuperClassIT.java index 3ffeb20..c6e06dc 100644 --- a/cayenne-client/src/test/java/org/apache/cayenne/remote/LightSuperClassIT.java +++ b/cayenne-client/src/test/java/org/apache/cayenne/remote/LightSuperClassIT.java @@ -41,7 +41,7 @@ import static org.junit.Assert.assertEquals; /** * Test for entites that are implemented in same class on client and server */ -@UseServerRuntime(ClientCase.MULTI_TIER_PROJECT) +@UseServerRuntime(ClientCase.PERSISTENT_PROJECT) @RunWith(value=Parameterized.class) public class LightSuperClassIT extends RemoteCayenneCase { http://git-wip-us.apache.org/repos/asf/cayenne/blob/fb8660e7/cayenne-client/src/test/java/org/apache/cayenne/remote/ROPPrefetchToManyMapIT.java ---------------------------------------------------------------------- diff --git a/cayenne-client/src/test/java/org/apache/cayenne/remote/ROPPrefetchToManyMapIT.java b/cayenne-client/src/test/java/org/apache/cayenne/remote/ROPPrefetchToManyMapIT.java index 6e456f3..1fa8c40 100644 --- a/cayenne-client/src/test/java/org/apache/cayenne/remote/ROPPrefetchToManyMapIT.java +++ b/cayenne-client/src/test/java/org/apache/cayenne/remote/ROPPrefetchToManyMapIT.java @@ -25,10 +25,11 @@ import org.apache.cayenne.query.RefreshQuery; import org.apache.cayenne.query.SelectQuery; import org.apache.cayenne.remote.service.LocalConnection; import org.apache.cayenne.test.jdbc.DBHelper; -import org.apache.cayenne.testdo.mt.ClientMtMapToMany; -import org.apache.cayenne.testdo.mt.ClientMtMapToManyTarget; +import org.apache.cayenne.testdo.map_to_many.ClientIdMapToMany; +import org.apache.cayenne.testdo.map_to_many.ClientIdMapToManyTarget; import org.apache.cayenne.unit.di.DataChannelInterceptor; import org.apache.cayenne.unit.di.UnitTestClosure; +import org.apache.cayenne.unit.di.client.ClientCase; import org.apache.cayenne.unit.di.server.UseServerRuntime; import org.junit.Test; import org.junit.runner.RunWith; @@ -40,7 +41,7 @@ import java.util.Collection; import static org.junit.Assert.assertEquals; -@UseServerRuntime("cayenne-multi-tier.xml") +@UseServerRuntime(ClientCase.MAP_TO_MANY_PROJECT) @RunWith(value=Parameterized.class) public class ROPPrefetchToManyMapIT extends RemoteCayenneCase { @@ -65,25 +66,25 @@ public class ROPPrefetchToManyMapIT extends RemoteCayenneCase { @Override public void setUpAfterInjection() throws Exception { - dbHelper.deleteAll("MT_MAP_TO_MANY_TARGET"); - dbHelper.deleteAll("MT_MAP_TO_MANY"); + dbHelper.deleteAll("ID_MAP_TO_MANY_TARGET"); + dbHelper.deleteAll("ID_MAP_TO_MANY"); } @Test public void test() throws Exception { ObjectContext context = createROPContext(); - ClientMtMapToMany map = context.newObject(ClientMtMapToMany.class); - ClientMtMapToManyTarget target = context.newObject(ClientMtMapToManyTarget.class); + ClientIdMapToMany map = context.newObject(ClientIdMapToMany.class); + ClientIdMapToManyTarget target = context.newObject(ClientIdMapToManyTarget.class); target.setMapToMany(map); context.commitChanges(); context.performQuery(new RefreshQuery()); - SelectQuery<ClientMtMapToMany> query = new SelectQuery<ClientMtMapToMany>(ClientMtMapToMany.class); + SelectQuery<ClientIdMapToMany> query = new SelectQuery<ClientIdMapToMany>(ClientIdMapToMany.class); query.addPrefetch("targets"); - final ClientMtMapToMany mapToMany = (ClientMtMapToMany) Cayenne.objectForQuery(context, query); + final ClientIdMapToMany mapToMany = (ClientIdMapToMany) Cayenne.objectForQuery(context, query); queryInterceptor.runWithQueriesBlocked(new UnitTestClosure() { http://git-wip-us.apache.org/repos/asf/cayenne/blob/fb8660e7/cayenne-client/src/test/java/org/apache/cayenne/remote/RemoteCallbacksIT.java ---------------------------------------------------------------------- diff --git a/cayenne-client/src/test/java/org/apache/cayenne/remote/RemoteCallbacksIT.java b/cayenne-client/src/test/java/org/apache/cayenne/remote/RemoteCallbacksIT.java index d7bf475..afeb9fb 100644 --- a/cayenne-client/src/test/java/org/apache/cayenne/remote/RemoteCallbacksIT.java +++ b/cayenne-client/src/test/java/org/apache/cayenne/remote/RemoteCallbacksIT.java @@ -21,7 +21,7 @@ package org.apache.cayenne.remote; import org.apache.cayenne.LifecycleListener; import org.apache.cayenne.ObjectContext; import org.apache.cayenne.remote.service.LocalConnection; -import org.apache.cayenne.testdo.mt.ClientMtLifecycles; +import org.apache.cayenne.testdo.lifecycles.ClientLifecycles; import org.apache.cayenne.unit.di.client.ClientCase; import org.apache.cayenne.unit.di.server.UseServerRuntime; import org.junit.Test; @@ -34,7 +34,7 @@ import java.util.Collection; import static org.junit.Assert.assertEquals; -@UseServerRuntime(ClientCase.MULTI_TIER_PROJECT) +@UseServerRuntime(ClientCase.LIFECYCLES_PROJECT) @RunWith(value=Parameterized.class) public class RemoteCallbacksIT extends RemoteCayenneCase implements LifecycleListener { private int added, loaded, prePersisted, postPersisted, preRemoved, postRemoved, preUpdated, postUpdated; @@ -69,10 +69,10 @@ public class RemoteCallbacksIT extends RemoteCayenneCase implements LifecycleLis @Test public void testDefault() throws InterruptedException { ObjectContext context = createROPContext(); - context.getEntityResolver().getCallbackRegistry().addListener(ClientMtLifecycles.class, this); + context.getEntityResolver().getCallbackRegistry().addListener(ClientLifecycles.class, this); assertAll(0, 0, 0, 0, 0, 0, 0, 0); - ClientMtLifecycles l1 = context.newObject(ClientMtLifecycles.class); + ClientLifecycles l1 = context.newObject(ClientLifecycles.class); assertAll(1, 0, 0, 0, 0, 0, 0, 0); l1.setName("x"); http://git-wip-us.apache.org/repos/asf/cayenne/blob/fb8660e7/cayenne-client/src/test/java/org/apache/cayenne/unit/di/client/ClientCase.java ---------------------------------------------------------------------- diff --git a/cayenne-client/src/test/java/org/apache/cayenne/unit/di/client/ClientCase.java b/cayenne-client/src/test/java/org/apache/cayenne/unit/di/client/ClientCase.java index 70516f1..f9bdc55 100644 --- a/cayenne-client/src/test/java/org/apache/cayenne/unit/di/client/ClientCase.java +++ b/cayenne-client/src/test/java/org/apache/cayenne/unit/di/client/ClientCase.java @@ -30,6 +30,14 @@ public class ClientCase extends DICase { public static final String ROP_CLIENT_KEY = "client"; public static final String MULTI_TIER_PROJECT = "cayenne-multi-tier.xml"; + public static final String PERSISTENT_PROJECT = "cayenne-persistent.xml"; + public static final String REFLEXIVE_PROJECT = "cayenne-reflexive.xml"; + public static final String DELETE_RULES_PROJECT = "cayenne-delete-rules.xml"; + public static final String LIFECYCLES_PROJECT = "cayenne-lifecycles.xml"; + public static final String MAP_TO_MANY_PROJECT = "cayenne-map-to-many.xml"; + public static final String TOONE_PROJECT = "cayenne-toone.xml"; + public static final String MEANINGFUL_PK_PROJECT = "cayenne-meaningful-pk.xml"; + public static final String TABLE_PRIMITIVES_PROJECT = "cayenne-table-primitives.xml"; private static final Injector injector; http://git-wip-us.apache.org/repos/asf/cayenne/blob/fb8660e7/cayenne-server/src/test/java/org/apache/cayenne/CDOMapRelationshipIT.java ---------------------------------------------------------------------- diff --git a/cayenne-server/src/test/java/org/apache/cayenne/CDOMapRelationshipIT.java b/cayenne-server/src/test/java/org/apache/cayenne/CDOMapRelationshipIT.java index 988af5c..ada0d70 100644 --- a/cayenne-server/src/test/java/org/apache/cayenne/CDOMapRelationshipIT.java +++ b/cayenne-server/src/test/java/org/apache/cayenne/CDOMapRelationshipIT.java @@ -24,9 +24,9 @@ import org.apache.cayenne.query.RefreshQuery; import org.apache.cayenne.query.SelectQuery; import org.apache.cayenne.test.jdbc.DBHelper; import org.apache.cayenne.test.jdbc.TableHelper; -import org.apache.cayenne.testdo.relationship.IdMapToMany; -import org.apache.cayenne.testdo.relationship.MapToMany; -import org.apache.cayenne.testdo.relationship.MapToManyTarget; +import org.apache.cayenne.testdo.map_to_many.IdMapToMany; +import org.apache.cayenne.testdo.map_to_many.MapToMany; +import org.apache.cayenne.testdo.map_to_many.MapToManyTarget; import org.apache.cayenne.unit.di.server.ServerCase; import org.apache.cayenne.unit.di.server.UseServerRuntime; import org.junit.Test; @@ -40,7 +40,7 @@ import static org.junit.Assert.assertNull; import static org.junit.Assert.assertSame; import static org.junit.Assert.assertTrue; -@UseServerRuntime(ServerCase.RELATIONSHIPS_PROJECT) +@UseServerRuntime(ServerCase.MAP_TO_MANY_PROJECT) public class CDOMapRelationshipIT extends ServerCase { @Inject http://git-wip-us.apache.org/repos/asf/cayenne/blob/fb8660e7/cayenne-server/src/test/java/org/apache/cayenne/testdo/deleterules/ClientDeleteCascade.java ---------------------------------------------------------------------- diff --git a/cayenne-server/src/test/java/org/apache/cayenne/testdo/deleterules/ClientDeleteCascade.java b/cayenne-server/src/test/java/org/apache/cayenne/testdo/deleterules/ClientDeleteCascade.java new file mode 100644 index 0000000..c835315 --- /dev/null +++ b/cayenne-server/src/test/java/org/apache/cayenne/testdo/deleterules/ClientDeleteCascade.java @@ -0,0 +1,28 @@ +/***************************************************************** + * 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.cayenne.testdo.deleterules; + +import org.apache.cayenne.testdo.deleterules.auto._ClientDeleteCascade; + +/** + * A persistent class mapped as "DeleteCascade" Cayenne entity. + */ +public class ClientDeleteCascade extends _ClientDeleteCascade { + +} http://git-wip-us.apache.org/repos/asf/cayenne/blob/fb8660e7/cayenne-server/src/test/java/org/apache/cayenne/testdo/deleterules/ClientDeleteDeny.java ---------------------------------------------------------------------- diff --git a/cayenne-server/src/test/java/org/apache/cayenne/testdo/deleterules/ClientDeleteDeny.java b/cayenne-server/src/test/java/org/apache/cayenne/testdo/deleterules/ClientDeleteDeny.java new file mode 100644 index 0000000..87ee510 --- /dev/null +++ b/cayenne-server/src/test/java/org/apache/cayenne/testdo/deleterules/ClientDeleteDeny.java @@ -0,0 +1,28 @@ +/***************************************************************** + * 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.cayenne.testdo.deleterules; + +import org.apache.cayenne.testdo.deleterules.auto._ClientDeleteDeny; + +/** + * A persistent class mapped as "DeleteDeny" Cayenne entity. + */ +public class ClientDeleteDeny extends _ClientDeleteDeny { + +} http://git-wip-us.apache.org/repos/asf/cayenne/blob/fb8660e7/cayenne-server/src/test/java/org/apache/cayenne/testdo/deleterules/ClientDeleteNullify.java ---------------------------------------------------------------------- diff --git a/cayenne-server/src/test/java/org/apache/cayenne/testdo/deleterules/ClientDeleteNullify.java b/cayenne-server/src/test/java/org/apache/cayenne/testdo/deleterules/ClientDeleteNullify.java new file mode 100644 index 0000000..a08b3fd --- /dev/null +++ b/cayenne-server/src/test/java/org/apache/cayenne/testdo/deleterules/ClientDeleteNullify.java @@ -0,0 +1,28 @@ +/***************************************************************** + * 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.cayenne.testdo.deleterules; + +import org.apache.cayenne.testdo.deleterules.auto._ClientDeleteNullify; + +/** + * A persistent class mapped as "DeleteNullify" Cayenne entity. + */ +public class ClientDeleteNullify extends _ClientDeleteNullify { + +} http://git-wip-us.apache.org/repos/asf/cayenne/blob/fb8660e7/cayenne-server/src/test/java/org/apache/cayenne/testdo/deleterules/ClientDeleteRule.java ---------------------------------------------------------------------- diff --git a/cayenne-server/src/test/java/org/apache/cayenne/testdo/deleterules/ClientDeleteRule.java b/cayenne-server/src/test/java/org/apache/cayenne/testdo/deleterules/ClientDeleteRule.java new file mode 100644 index 0000000..caa455c --- /dev/null +++ b/cayenne-server/src/test/java/org/apache/cayenne/testdo/deleterules/ClientDeleteRule.java @@ -0,0 +1,28 @@ +/***************************************************************** + * 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.cayenne.testdo.deleterules; + +import org.apache.cayenne.testdo.deleterules.auto._ClientDeleteRule; + +/** + * A persistent class mapped as "DeleteRule" Cayenne entity. + */ +public class ClientDeleteRule extends _ClientDeleteRule { + +} http://git-wip-us.apache.org/repos/asf/cayenne/blob/fb8660e7/cayenne-server/src/test/java/org/apache/cayenne/testdo/deleterules/DeleteCascade.java ---------------------------------------------------------------------- diff --git a/cayenne-server/src/test/java/org/apache/cayenne/testdo/deleterules/DeleteCascade.java b/cayenne-server/src/test/java/org/apache/cayenne/testdo/deleterules/DeleteCascade.java new file mode 100644 index 0000000..9b46a78 --- /dev/null +++ b/cayenne-server/src/test/java/org/apache/cayenne/testdo/deleterules/DeleteCascade.java @@ -0,0 +1,28 @@ +/***************************************************************** + * 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.cayenne.testdo.deleterules; + +import org.apache.cayenne.testdo.deleterules.auto._DeleteCascade; + +public class DeleteCascade extends _DeleteCascade { + +} + + + http://git-wip-us.apache.org/repos/asf/cayenne/blob/fb8660e7/cayenne-server/src/test/java/org/apache/cayenne/testdo/deleterules/DeleteDeny.java ---------------------------------------------------------------------- diff --git a/cayenne-server/src/test/java/org/apache/cayenne/testdo/deleterules/DeleteDeny.java b/cayenne-server/src/test/java/org/apache/cayenne/testdo/deleterules/DeleteDeny.java new file mode 100644 index 0000000..b1becb8 --- /dev/null +++ b/cayenne-server/src/test/java/org/apache/cayenne/testdo/deleterules/DeleteDeny.java @@ -0,0 +1,28 @@ +/***************************************************************** + * 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.cayenne.testdo.deleterules; + +import org.apache.cayenne.testdo.deleterules.auto._DeleteDeny; + +public class DeleteDeny extends _DeleteDeny { + +} + + + http://git-wip-us.apache.org/repos/asf/cayenne/blob/fb8660e7/cayenne-server/src/test/java/org/apache/cayenne/testdo/deleterules/DeleteNullify.java ---------------------------------------------------------------------- diff --git a/cayenne-server/src/test/java/org/apache/cayenne/testdo/deleterules/DeleteNullify.java b/cayenne-server/src/test/java/org/apache/cayenne/testdo/deleterules/DeleteNullify.java new file mode 100644 index 0000000..81247a2 --- /dev/null +++ b/cayenne-server/src/test/java/org/apache/cayenne/testdo/deleterules/DeleteNullify.java @@ -0,0 +1,28 @@ +/***************************************************************** + * 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.cayenne.testdo.deleterules; + +import org.apache.cayenne.testdo.deleterules.auto._DeleteNullify; + +public class DeleteNullify extends _DeleteNullify { + +} + + + http://git-wip-us.apache.org/repos/asf/cayenne/blob/fb8660e7/cayenne-server/src/test/java/org/apache/cayenne/testdo/deleterules/DeleteRule.java ---------------------------------------------------------------------- diff --git a/cayenne-server/src/test/java/org/apache/cayenne/testdo/deleterules/DeleteRule.java b/cayenne-server/src/test/java/org/apache/cayenne/testdo/deleterules/DeleteRule.java new file mode 100644 index 0000000..07b542b --- /dev/null +++ b/cayenne-server/src/test/java/org/apache/cayenne/testdo/deleterules/DeleteRule.java @@ -0,0 +1,28 @@ +/***************************************************************** + * 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.cayenne.testdo.deleterules; + +import org.apache.cayenne.testdo.deleterules.auto._DeleteRule; + +public class DeleteRule extends _DeleteRule { + +} + + + http://git-wip-us.apache.org/repos/asf/cayenne/blob/fb8660e7/cayenne-server/src/test/java/org/apache/cayenne/testdo/deleterules/auto/_ClientDeleteCascade.java ---------------------------------------------------------------------- diff --git a/cayenne-server/src/test/java/org/apache/cayenne/testdo/deleterules/auto/_ClientDeleteCascade.java b/cayenne-server/src/test/java/org/apache/cayenne/testdo/deleterules/auto/_ClientDeleteCascade.java new file mode 100644 index 0000000..4cc341e --- /dev/null +++ b/cayenne-server/src/test/java/org/apache/cayenne/testdo/deleterules/auto/_ClientDeleteCascade.java @@ -0,0 +1,56 @@ +package org.apache.cayenne.testdo.deleterules.auto; + +import org.apache.cayenne.PersistentObject; +import org.apache.cayenne.ValueHolder; +import org.apache.cayenne.testdo.deleterules.ClientDeleteRule; + +/** + * A generated persistent class mapped as "DeleteCascade" Cayenne entity. It is a good idea to + * avoid changing this class manually, since it will be overwritten next time code is + * regenerated. If you need to make any customizations, put them in a subclass. + */ +public abstract class _ClientDeleteCascade extends PersistentObject { + + public static final String NAME_PROPERTY = "name"; + public static final String CASCADE_PROPERTY = "cascade"; + + protected String name; + protected ValueHolder cascade; + + public String getName() { + if(objectContext != null) { + objectContext.prepareForAccess(this, "name", false); + } + + return name; + } + public void setName(String name) { + if(objectContext != null) { + objectContext.prepareForAccess(this, "name", false); + } + + Object oldValue = this.name; + this.name = name; + + // notify objectContext about simple property change + if(objectContext != null) { + objectContext.propertyChanged(this, "name", oldValue, name); + } + } + + public ClientDeleteRule getCascade() { + if(objectContext != null) { + objectContext.prepareForAccess(this, "cascade", true); + } + + return (ClientDeleteRule) cascade.getValue(); + } + public void setCascade(ClientDeleteRule cascade) { + if(objectContext != null) { + objectContext.prepareForAccess(this, "cascade", true); + } + + this.cascade.setValue(cascade); + } + +} http://git-wip-us.apache.org/repos/asf/cayenne/blob/fb8660e7/cayenne-server/src/test/java/org/apache/cayenne/testdo/deleterules/auto/_ClientDeleteDeny.java ---------------------------------------------------------------------- diff --git a/cayenne-server/src/test/java/org/apache/cayenne/testdo/deleterules/auto/_ClientDeleteDeny.java b/cayenne-server/src/test/java/org/apache/cayenne/testdo/deleterules/auto/_ClientDeleteDeny.java new file mode 100644 index 0000000..f16dded --- /dev/null +++ b/cayenne-server/src/test/java/org/apache/cayenne/testdo/deleterules/auto/_ClientDeleteDeny.java @@ -0,0 +1,56 @@ +package org.apache.cayenne.testdo.deleterules.auto; + +import org.apache.cayenne.PersistentObject; +import org.apache.cayenne.ValueHolder; +import org.apache.cayenne.testdo.deleterules.ClientDeleteRule; + +/** + * A generated persistent class mapped as "DeleteDeny" Cayenne entity. It is a good idea to + * avoid changing this class manually, since it will be overwritten next time code is + * regenerated. If you need to make any customizations, put them in a subclass. + */ +public abstract class _ClientDeleteDeny extends PersistentObject { + + public static final String NAME_PROPERTY = "name"; + public static final String DENY_PROPERTY = "deny"; + + protected String name; + protected ValueHolder deny; + + public String getName() { + if(objectContext != null) { + objectContext.prepareForAccess(this, "name", false); + } + + return name; + } + public void setName(String name) { + if(objectContext != null) { + objectContext.prepareForAccess(this, "name", false); + } + + Object oldValue = this.name; + this.name = name; + + // notify objectContext about simple property change + if(objectContext != null) { + objectContext.propertyChanged(this, "name", oldValue, name); + } + } + + public ClientDeleteRule getDeny() { + if(objectContext != null) { + objectContext.prepareForAccess(this, "deny", true); + } + + return (ClientDeleteRule) deny.getValue(); + } + public void setDeny(ClientDeleteRule deny) { + if(objectContext != null) { + objectContext.prepareForAccess(this, "deny", true); + } + + this.deny.setValue(deny); + } + +} http://git-wip-us.apache.org/repos/asf/cayenne/blob/fb8660e7/cayenne-server/src/test/java/org/apache/cayenne/testdo/deleterules/auto/_ClientDeleteNullify.java ---------------------------------------------------------------------- diff --git a/cayenne-server/src/test/java/org/apache/cayenne/testdo/deleterules/auto/_ClientDeleteNullify.java b/cayenne-server/src/test/java/org/apache/cayenne/testdo/deleterules/auto/_ClientDeleteNullify.java new file mode 100644 index 0000000..3abc65e --- /dev/null +++ b/cayenne-server/src/test/java/org/apache/cayenne/testdo/deleterules/auto/_ClientDeleteNullify.java @@ -0,0 +1,56 @@ +package org.apache.cayenne.testdo.deleterules.auto; + +import org.apache.cayenne.PersistentObject; +import org.apache.cayenne.ValueHolder; +import org.apache.cayenne.testdo.deleterules.ClientDeleteRule; + +/** + * A generated persistent class mapped as "DeleteNullify" Cayenne entity. It is a good idea to + * avoid changing this class manually, since it will be overwritten next time code is + * regenerated. If you need to make any customizations, put them in a subclass. + */ +public abstract class _ClientDeleteNullify extends PersistentObject { + + public static final String NAME_PROPERTY = "name"; + public static final String NULLIFY_PROPERTY = "nullify"; + + protected String name; + protected ValueHolder nullify; + + public String getName() { + if(objectContext != null) { + objectContext.prepareForAccess(this, "name", false); + } + + return name; + } + public void setName(String name) { + if(objectContext != null) { + objectContext.prepareForAccess(this, "name", false); + } + + Object oldValue = this.name; + this.name = name; + + // notify objectContext about simple property change + if(objectContext != null) { + objectContext.propertyChanged(this, "name", oldValue, name); + } + } + + public ClientDeleteRule getNullify() { + if(objectContext != null) { + objectContext.prepareForAccess(this, "nullify", true); + } + + return (ClientDeleteRule) nullify.getValue(); + } + public void setNullify(ClientDeleteRule nullify) { + if(objectContext != null) { + objectContext.prepareForAccess(this, "nullify", true); + } + + this.nullify.setValue(nullify); + } + +} http://git-wip-us.apache.org/repos/asf/cayenne/blob/fb8660e7/cayenne-server/src/test/java/org/apache/cayenne/testdo/deleterules/auto/_ClientDeleteRule.java ---------------------------------------------------------------------- diff --git a/cayenne-server/src/test/java/org/apache/cayenne/testdo/deleterules/auto/_ClientDeleteRule.java b/cayenne-server/src/test/java/org/apache/cayenne/testdo/deleterules/auto/_ClientDeleteRule.java new file mode 100644 index 0000000..e42946b --- /dev/null +++ b/cayenne-server/src/test/java/org/apache/cayenne/testdo/deleterules/auto/_ClientDeleteRule.java @@ -0,0 +1,114 @@ +package org.apache.cayenne.testdo.deleterules.auto; + +import org.apache.cayenne.PersistentObject; +import org.apache.cayenne.testdo.deleterules.ClientDeleteCascade; +import org.apache.cayenne.testdo.deleterules.ClientDeleteDeny; +import org.apache.cayenne.testdo.deleterules.ClientDeleteNullify; + +import java.util.List; + +/** + * A generated persistent class mapped as "DeleteRule" Cayenne entity. It is a good idea to + * avoid changing this class manually, since it will be overwritten next time code is + * regenerated. If you need to make any customizations, put them in a subclass. + */ +public abstract class _ClientDeleteRule extends PersistentObject { + + public static final String NAME_PROPERTY = "name"; + public static final String FROM_CASCADE_PROPERTY = "fromCascade"; + public static final String FROM_DENY_PROPERTY = "fromDeny"; + public static final String FROM_NULLIFY_PROPERTY = "fromNullify"; + + protected String name; + protected List<ClientDeleteCascade> fromCascade; + protected List<ClientDeleteDeny> fromDeny; + protected List<ClientDeleteNullify> fromNullify; + + public String getName() { + if(objectContext != null) { + objectContext.prepareForAccess(this, "name", false); + } + + return name; + } + public void setName(String name) { + if(objectContext != null) { + objectContext.prepareForAccess(this, "name", false); + } + + Object oldValue = this.name; + this.name = name; + + // notify objectContext about simple property change + if(objectContext != null) { + objectContext.propertyChanged(this, "name", oldValue, name); + } + } + + public List<ClientDeleteCascade> getFromCascade() { + if(objectContext != null) { + objectContext.prepareForAccess(this, "fromCascade", true); + } + + return fromCascade; + } + public void addToFromCascade(ClientDeleteCascade object) { + if(objectContext != null) { + objectContext.prepareForAccess(this, "fromCascade", true); + } + + this.fromCascade.add(object); + } + public void removeFromFromCascade(ClientDeleteCascade object) { + if(objectContext != null) { + objectContext.prepareForAccess(this, "fromCascade", true); + } + + this.fromCascade.remove(object); + } + + public List<ClientDeleteDeny> getFromDeny() { + if(objectContext != null) { + objectContext.prepareForAccess(this, "fromDeny", true); + } + + return fromDeny; + } + public void addToFromDeny(ClientDeleteDeny object) { + if(objectContext != null) { + objectContext.prepareForAccess(this, "fromDeny", true); + } + + this.fromDeny.add(object); + } + public void removeFromFromDeny(ClientDeleteDeny object) { + if(objectContext != null) { + objectContext.prepareForAccess(this, "fromDeny", true); + } + + this.fromDeny.remove(object); + } + + public List<ClientDeleteNullify> getFromNullify() { + if(objectContext != null) { + objectContext.prepareForAccess(this, "fromNullify", true); + } + + return fromNullify; + } + public void addToFromNullify(ClientDeleteNullify object) { + if(objectContext != null) { + objectContext.prepareForAccess(this, "fromNullify", true); + } + + this.fromNullify.add(object); + } + public void removeFromFromNullify(ClientDeleteNullify object) { + if(objectContext != null) { + objectContext.prepareForAccess(this, "fromNullify", true); + } + + this.fromNullify.remove(object); + } + +} http://git-wip-us.apache.org/repos/asf/cayenne/blob/fb8660e7/cayenne-server/src/test/java/org/apache/cayenne/testdo/deleterules/auto/_DeleteCascade.java ---------------------------------------------------------------------- diff --git a/cayenne-server/src/test/java/org/apache/cayenne/testdo/deleterules/auto/_DeleteCascade.java b/cayenne-server/src/test/java/org/apache/cayenne/testdo/deleterules/auto/_DeleteCascade.java new file mode 100644 index 0000000..bd8be7c --- /dev/null +++ b/cayenne-server/src/test/java/org/apache/cayenne/testdo/deleterules/auto/_DeleteCascade.java @@ -0,0 +1,35 @@ +package org.apache.cayenne.testdo.deleterules.auto; + +import org.apache.cayenne.CayenneDataObject; +import org.apache.cayenne.testdo.deleterules.DeleteRule; + +/** + * Class _DeleteCascade was generated by Cayenne. + * It is probably a good idea to avoid changing this class manually, + * since it may be overwritten next time code is regenerated. + * If you need to make any customizations, please use subclass. + */ +public abstract class _DeleteCascade extends CayenneDataObject { + + public static final String NAME_PROPERTY = "name"; + public static final String CASCADE_PROPERTY = "cascade"; + + public static final String DELETE_CASCADE_ID_PK_COLUMN = "DELETE_CASCADE_ID"; + + public void setName(String name) { + writeProperty(NAME_PROPERTY, name); + } + public String getName() { + return (String)readProperty(NAME_PROPERTY); + } + + public void setCascade(DeleteRule cascade) { + setToOneTarget(CASCADE_PROPERTY, cascade, true); + } + + public DeleteRule getCascade() { + return (DeleteRule)readProperty(CASCADE_PROPERTY); + } + + +}