use of org.eclipse.persistence.dynamic.DynamicClassLoader in project eclipselink by eclipse-ee4j.
the class DynamicEmployeeSystem method buildProject.
public static DynamicEmployeeSystem buildProject(DynamicHelper dynamicHelper) {
DynamicClassLoader dcl = dynamicHelper.getDynamicClassLoader();
Class<?> employeeClass = dcl.createDynamicClass(PACKAGE_PREFIX + ".Employee");
Class<?> addressClass = dcl.createDynamicClass(PACKAGE_PREFIX + ".Address");
Class<?> phoneClass = dcl.createDynamicClass(PACKAGE_PREFIX + ".PhoneNumber");
Class<?> periodClass = dcl.createDynamicClass(PACKAGE_PREFIX + ".EmploymentPeriod");
Class<?> projectClass = dcl.createDynamicClass(PACKAGE_PREFIX + ".Project");
JPADynamicTypeBuilder employee = new JPADynamicTypeBuilder(employeeClass, null, "D_EMPLOYEE", "D_SALARY");
JPADynamicTypeBuilder address = new JPADynamicTypeBuilder(addressClass, null, "D_ADDRESS");
JPADynamicTypeBuilder phone = new JPADynamicTypeBuilder(phoneClass, null, "D_PHONE");
JPADynamicTypeBuilder period = new JPADynamicTypeBuilder(periodClass, null);
JPADynamicTypeBuilder project = new JPADynamicTypeBuilder(projectClass, null, "D_PROJECT");
configureAddress(address);
configureEmployee(employee, address, phone, period, project);
configurePhone(phone, employee);
configurePeriod(period);
configureProject(project, employee);
employee.addManyToManyMapping("projects", project.getType(), "D_PROJ_EMP");
dynamicHelper.addTypes(true, true, employee.getType(), address.getType(), phone.getType(), period.getType(), project.getType());
return new DynamicEmployeeSystem();
}
use of org.eclipse.persistence.dynamic.DynamicClassLoader in project eclipselink by eclipse-ee4j.
the class TableSequencingTestSuite method setUp.
@BeforeClass
public static void setUp() {
emf = DynamicTestHelper.createEMF(DYNAMIC_PERSISTENCE_NAME);
helper = new JPADynamicHelper(emf);
DynamicClassLoader dcl = helper.getDynamicClassLoader();
TableSequence sequence = new TableSequence();
sequence.setTableName("TEST_SEQ");
sequence.setCounterFieldName("SEQ_VALUE");
sequence.setNameFieldName("SEQ_NAME");
sequence.setPreallocationSize(5);
helper.getSession().getProject().getLogin().setDefaultSequence(sequence);
sequence.onConnect(helper.getSession().getPlatform());
Class<?> javaType = dcl.createDynamicClass("model.sequencing." + ENTITY_TYPE);
DynamicTypeBuilder typeBuilder = new JPADynamicTypeBuilder(javaType, null, TABLE_NAME);
typeBuilder.setPrimaryKeyFields("SID");
typeBuilder.addDirectMapping("id", int.class, "SID");
typeBuilder.addDirectMapping("value1", String.class, "VAL_1");
typeBuilder.configureSequencing(sequence, ENTITY_TYPE + "_SEQ", "SID");
helper.addTypes(true, true, typeBuilder.getType());
}
use of org.eclipse.persistence.dynamic.DynamicClassLoader in project eclipselink by eclipse-ee4j.
the class SimpleTypes_ManyToMany method setUp.
@BeforeClass
public static void setUp() {
emf = DynamicTestHelper.createEMF(DYNAMIC_PERSISTENCE_NAME);
helper = new JPADynamicHelper(emf);
DynamicClassLoader dcl = helper.getDynamicClassLoader();
Class<?> simpleTypeA = dcl.createDynamicClass("model.SimpleA");
DynamicTypeBuilder aFactory = new JPADynamicTypeBuilder(simpleTypeA, null, "SIMPLE_TYPE_A");
aFactory.setPrimaryKeyFields("SID");
Class<?> simpleTypeB = dcl.createDynamicClass("model.SimpleB");
DynamicTypeBuilder bFactory = new JPADynamicTypeBuilder(simpleTypeB, null, "SIMPLE_TYPE_B");
bFactory.setPrimaryKeyFields("SID");
bFactory.addDirectMapping("id", int.class, "SID");
bFactory.addDirectMapping("value1", String.class, "VAL_1");
bFactory.addOneToOneMapping("a", aFactory.getType(), "A_FK");
aFactory.addDirectMapping("id", int.class, "SID");
aFactory.addDirectMapping("value1", String.class, "VAL_1");
aFactory.addManyToManyMapping("b", bFactory.getType(), "SIMPLE_A_B");
helper.addTypes(true, true, aFactory.getType(), bFactory.getType());
}
use of org.eclipse.persistence.dynamic.DynamicClassLoader in project eclipselink by eclipse-ee4j.
the class SimpleTypeCompositeKeyTestSuite method setUp.
@BeforeClass
public static void setUp() throws Exception {
emf = DynamicTestHelper.createEMF(DYNAMIC_PERSISTENCE_NAME);
helper = new JPADynamicHelper(emf);
DynamicClassLoader dcl = helper.getDynamicClassLoader();
Class<?> javaType = dcl.createDynamicClass("model.Simple");
DynamicTypeBuilder typeBuilder = new JPADynamicTypeBuilder(javaType, null, "SIMPLE_TYPE");
typeBuilder.setPrimaryKeyFields("SID1", "SID2");
typeBuilder.addDirectMapping("id1", int.class, "SID1");
typeBuilder.addDirectMapping("id2", int.class, "SID2");
typeBuilder.addDirectMapping("value1", String.class, "VAL_1");
typeBuilder.addDirectMapping("value2", boolean.class, "VAL_2");
typeBuilder.addDirectMapping("value3", Calendar.class, "VAL_3");
typeBuilder.addDirectMapping("value4", Character.class, "VAL_4");
helper.addTypes(true, true, typeBuilder.getType());
simpleType = helper.getType("Simple");
}
use of org.eclipse.persistence.dynamic.DynamicClassLoader in project eclipselink by eclipse-ee4j.
the class SimpleTypes_AggregateObject method setUp.
@BeforeClass
public static void setUp() {
emf = DynamicTestHelper.createEMF(DYNAMIC_PERSISTENCE_NAME);
helper = new JPADynamicHelper(emf);
DynamicClassLoader dcl = helper.getDynamicClassLoader();
Class<?> simpleTypeB = dcl.createDynamicClass("model.SimpleB");
JPADynamicTypeBuilder bFactory = new JPADynamicTypeBuilder(simpleTypeB, null);
bFactory.addDirectMapping("value2", boolean.class, "VAL_2");
bFactory.addDirectMapping("value3", String.class, "VAL_3");
Class<?> simpleTypeC = dcl.createDynamicClass("model.SimpleC");
JPADynamicTypeBuilder cFactory = new JPADynamicTypeBuilder(simpleTypeC, null);
cFactory.addDirectMapping("value4", double.class, "VAL_4");
cFactory.addDirectMapping("value5", String.class, "VAL_5");
Class<?> simpleTypeA = dcl.createDynamicClass("model.SimpleA");
JPADynamicTypeBuilder aFactory = new JPADynamicTypeBuilder(simpleTypeA, null, "SIMPLE_TYPE_A");
aFactory.setPrimaryKeyFields("SID");
aFactory.addDirectMapping("id", int.class, "SID");
aFactory.addDirectMapping("value1", String.class, "VAL_1");
aFactory.addAggregateObjectMapping("b", bFactory.getType(), true);
aFactory.addAggregateObjectMapping("c", cFactory.getType(), false);
helper.addTypes(true, true, aFactory.getType(), bFactory.getType(), cFactory.getType());
}
Aggregations