/******************************************************************************* | |
* Copyright (c) 1998, 2013 Oracle and/or its affiliates. All rights reserved. | |
* This program and the accompanying materials are made available under the | |
* terms of the Eclipse Public License v1.0 and Eclipse Distribution License v. 1.0 | |
* which accompanies this distribution. | |
* The Eclipse Public License is available at http://www.eclipse.org/legal/epl-v10.html | |
* and the Eclipse Distribution License is available at | |
* http://www.eclipse.org/org/documents/edl-v10.php. | |
* | |
* Contributors: | |
* Oracle - initial API and implementation from Oracle TopLink | |
******************************************************************************/ | |
package org.eclipse.persistence.testing.models.legacy; | |
import java.util.*; | |
import org.eclipse.persistence.expressions.*; | |
import org.eclipse.persistence.queries.*; | |
import org.eclipse.persistence.mappings.*; | |
/** | |
* TopLink generated Project class. | |
* <b>WARNING</b>: This code was generated by an automated tool. | |
* Any changes will be lost when the code is re-generated | |
*/ | |
public class LegacyProject extends org.eclipse.persistence.sessions.Project { | |
/** | |
* <b>WARNING</b>: This code was generated by an automated tool. | |
* Any changes will be lost when the code is re-generated | |
*/ | |
public LegacyProject() { | |
applyPROJECT(); | |
applyLOGIN(); | |
buildComputerDescriptor(); | |
buildEmployeeDescriptor(); | |
buildGaurenteedShipmentDescriptor(); | |
buildInsuredShipmentDescriptor(); | |
buildOrderDescriptor(); | |
buildShipmentDescriptor(); | |
} | |
public static void amendEmployeeDescriptor(org.eclipse.persistence.descriptors.RelationalDescriptor descriptor) { | |
descriptor.addForeignKeyFieldNameForMultipleTable("LEG_ADD.FIRST_NM", "LEG_EMP.FNAME"); | |
descriptor.addForeignKeyFieldNameForMultipleTable("LEG_ADD.LNAME", "LEG_EMP.LNAME"); | |
} | |
public static void amendInsuredShipmentDescriptor(org.eclipse.persistence.descriptors.RelationalDescriptor descriptor) { | |
descriptor.addForeignKeyFieldNameForMultipleTable("LEG_ISHP.F_NAME", "LEG_SHP.FNAME"); | |
descriptor.addForeignKeyFieldNameForMultipleTable("LEG_ISHP.L_NAME", "LEG_SHP.LNAME"); | |
descriptor.addForeignKeyFieldNameForMultipleTable("LEG_ISHP.SHIP_NO", "LEG_SHP.SHIP_NO"); | |
org.eclipse.persistence.expressions.ExpressionBuilder builder = new org.eclipse.persistence.expressions.ExpressionBuilder(); | |
descriptor.getDescriptorQueryManager().setMultipleTableJoinExpression((builder.getField("LEG_ISHP.F_NAME").equal(builder.getField("LEG_SHP.FNAME"))).and(builder.getField("LEG_ISHP.L_NAME").equal(builder.getField("LEG_SHP.LNAME"))).and(builder.getField("LEG_ISHP.SHIP_NO").equal(builder.getField("LEG_SHP.SHIP_NO")))); | |
} | |
/** | |
* TopLink generated method. | |
* <b>WARNING</b>: This code was generated by an automated tool. | |
* Any changes will be lost when the code is re-generated | |
*/ | |
protected void applyLOGIN() { | |
org.eclipse.persistence.sessions.DatabaseLogin login = new org.eclipse.persistence.sessions.DatabaseLogin(); | |
setLogin(login); | |
} | |
/** | |
* TopLink generated method. | |
* <b>WARNING</b>: This code was generated by an automated tool. | |
* Any changes will be lost when the code is re-generated | |
*/ | |
protected void applyPROJECT() { | |
setName("Complex Legacy Model"); | |
} | |
/** | |
* TopLink generated method. | |
* <b>WARNING</b>: This code was generated by an automated tool. | |
* Any changes will be lost when the code is re-generated | |
*/ | |
protected void buildComputerDescriptor() { | |
org.eclipse.persistence.descriptors.RelationalDescriptor descriptor = new org.eclipse.persistence.descriptors.RelationalDescriptor(); | |
// SECTION: DESCRIPTOR | |
descriptor.setJavaClass(org.eclipse.persistence.testing.models.legacy.Computer.class); | |
Vector vector = new Vector(); | |
vector.addElement("LEG_COM"); | |
descriptor.setTableNames(vector); | |
descriptor.addPrimaryKeyFieldName("LEG_COM.CREATE_TS"); | |
descriptor.addPrimaryKeyFieldName("LEG_COM.CREATE_TSM"); | |
// SECTION: EVENT MANAGER | |
descriptor.getDescriptorEventManager().setPreInsertSelector("prepareForInsert"); | |
// SECTION: COPY POLICY | |
descriptor.createCopyPolicy("constructor"); | |
// SECTION: INSTANTIATION POLICY | |
descriptor.createInstantiationPolicy("constructor"); | |
// SECTION: DIRECTTOFIELDMAPPING | |
org.eclipse.persistence.mappings.DirectToFieldMapping directtofieldmapping = new org.eclipse.persistence.mappings.DirectToFieldMapping(); | |
directtofieldmapping.setAttributeName("creationTimestamp"); | |
directtofieldmapping.setIsReadOnly(false); | |
directtofieldmapping.setFieldName("LEG_COM.CREATE_TS"); | |
descriptor.addMapping(directtofieldmapping); | |
// SECTION: DIRECTTOFIELDMAPPING | |
org.eclipse.persistence.mappings.DirectToFieldMapping directtofieldmapping1 = new org.eclipse.persistence.mappings.DirectToFieldMapping(); | |
directtofieldmapping1.setAttributeName("creationTimestampMillis"); | |
directtofieldmapping1.setIsReadOnly(false); | |
directtofieldmapping1.setFieldName("LEG_COM.CREATE_TSM"); | |
descriptor.addMapping(directtofieldmapping1); | |
// SECTION: DIRECTTOFIELDMAPPING | |
org.eclipse.persistence.mappings.DirectToFieldMapping directtofieldmapping2 = new org.eclipse.persistence.mappings.DirectToFieldMapping(); | |
directtofieldmapping2.setAttributeName("description"); | |
directtofieldmapping2.setIsReadOnly(false); | |
if (LegacyTables.computerDescriptionFieldName == null) { | |
directtofieldmapping2.setFieldName("LEG_COM.DESCRIP"); | |
} else { | |
directtofieldmapping2.setFieldName("LEG_COM." + LegacyTables.computerDescriptionFieldName); | |
} | |
descriptor.addMapping(directtofieldmapping2); | |
// SECTION: ONETOONEMAPPING | |
org.eclipse.persistence.mappings.OneToOneMapping onetoonemapping = new org.eclipse.persistence.mappings.OneToOneMapping(); | |
onetoonemapping.setAttributeName("employee"); | |
onetoonemapping.setIsReadOnly(false); | |
onetoonemapping.setUsesIndirection(false); | |
onetoonemapping.setReferenceClass(org.eclipse.persistence.testing.models.legacy.Employee.class); | |
onetoonemapping.setIsPrivateOwned(false); | |
onetoonemapping.addForeignKeyFieldName("LEG_COM.EMP_FNAME", "LEG_EMP.FNAME"); | |
onetoonemapping.addForeignKeyFieldName("LEG_COM.EMP_LNAME", "LEG_EMP.LNAME"); | |
descriptor.addMapping(onetoonemapping); | |
addDescriptor(descriptor); | |
} | |
/** | |
* TopLink generated method. | |
* <b>WARNING</b>: This code was generated by an automated tool. | |
* Any changes will be lost when the code is re-generated | |
*/ | |
protected void buildEmployeeDescriptor() { | |
org.eclipse.persistence.descriptors.RelationalDescriptor descriptor = new org.eclipse.persistence.descriptors.RelationalDescriptor(); | |
// SECTION: DESCRIPTOR | |
descriptor.setJavaClass(org.eclipse.persistence.testing.models.legacy.Employee.class); | |
Vector vector = new Vector(); | |
vector.addElement("LEG_EMP"); | |
vector.addElement("LEG_ADD"); | |
descriptor.setTableNames(vector); | |
descriptor.addPrimaryKeyFieldName("LEG_EMP.FNAME"); | |
descriptor.addPrimaryKeyFieldName("LEG_EMP.LNAME"); | |
// SECTION: COPY POLICY | |
descriptor.createCopyPolicy("constructor"); | |
// SECTION: INSTANTIATION POLICY | |
descriptor.createInstantiationPolicy("constructor"); | |
// SECTION: DIRECTTOFIELDMAPPING | |
org.eclipse.persistence.mappings.DirectToFieldMapping directtofieldmapping = new org.eclipse.persistence.mappings.DirectToFieldMapping(); | |
directtofieldmapping.setAttributeName("address"); | |
directtofieldmapping.setIsReadOnly(false); | |
directtofieldmapping.setFieldName("LEG_ADD.ADDR"); | |
descriptor.addMapping(directtofieldmapping); | |
// SECTION: DIRECTTOFIELDMAPPING | |
org.eclipse.persistence.mappings.DirectToFieldMapping directtofieldmapping1 = new org.eclipse.persistence.mappings.DirectToFieldMapping(); | |
directtofieldmapping1.setAttributeName("firstName"); | |
directtofieldmapping1.setIsReadOnly(false); | |
directtofieldmapping1.setFieldName("LEG_EMP.FNAME"); | |
descriptor.addMapping(directtofieldmapping1); | |
// SECTION: DIRECTTOFIELDMAPPING | |
org.eclipse.persistence.mappings.DirectToFieldMapping directtofieldmapping2 = new org.eclipse.persistence.mappings.DirectToFieldMapping(); | |
directtofieldmapping2.setAttributeName("lastName"); | |
directtofieldmapping2.setIsReadOnly(false); | |
directtofieldmapping2.setFieldName("LEG_EMP.LNAME"); | |
descriptor.addMapping(directtofieldmapping2); | |
// SECTION: ONETOMANYMAPPING | |
org.eclipse.persistence.mappings.OneToManyMapping onetomanymapping = new org.eclipse.persistence.mappings.OneToManyMapping(); | |
onetomanymapping.setAttributeName("shipments"); | |
onetomanymapping.setIsReadOnly(false); | |
onetomanymapping.setUsesIndirection(false); | |
onetomanymapping.setReferenceClass(org.eclipse.persistence.testing.models.legacy.Shipment.class); | |
onetomanymapping.setIsPrivateOwned(true); | |
onetomanymapping.addTargetForeignKeyFieldName("LEG_SHP.FNAME", "LEG_EMP.FNAME"); | |
onetomanymapping.addTargetForeignKeyFieldName("LEG_SHP.LNAME", "LEG_EMP.LNAME"); | |
descriptor.addMapping(onetomanymapping); | |
// SECTION: ONETOONEMAPPING | |
org.eclipse.persistence.mappings.OneToOneMapping onetoonemapping = new org.eclipse.persistence.mappings.OneToOneMapping(); | |
onetoonemapping.setAttributeName("computer"); | |
onetoonemapping.setIsReadOnly(false); | |
onetoonemapping.setUsesIndirection(false); | |
onetoonemapping.setReferenceClass(org.eclipse.persistence.testing.models.legacy.Computer.class); | |
onetoonemapping.setIsPrivateOwned(true); | |
onetoonemapping.addTargetForeignKeyFieldName("LEG_COM.EMP_FNAME", "LEG_EMP.FNAME"); | |
onetoonemapping.addTargetForeignKeyFieldName("LEG_COM.EMP_LNAME", "LEG_EMP.LNAME"); | |
descriptor.addMapping(onetoonemapping); | |
org.eclipse.persistence.testing.models.legacy.LegacyProject.amendEmployeeDescriptor(descriptor); | |
addDescriptor(descriptor); | |
} | |
/** | |
* TopLink generated method. | |
* <b>WARNING</b>: This code was generated by an automated tool. | |
* Any changes will be lost when the code is re-generated | |
*/ | |
protected void buildGaurenteedShipmentDescriptor() { | |
org.eclipse.persistence.descriptors.RelationalDescriptor descriptor = new org.eclipse.persistence.descriptors.RelationalDescriptor(); | |
// SECTION: DESCRIPTOR | |
descriptor.setJavaClass(org.eclipse.persistence.testing.models.legacy.GaurenteedShipment.class); | |
descriptor.getDescriptorInheritancePolicy().setParentClass(org.eclipse.persistence.testing.models.legacy.InsuredShipment.class); | |
Vector vector = new Vector(); | |
vector.addElement("LEG_ISHP"); | |
descriptor.setTableNames(vector); | |
descriptor.addPrimaryKeyFieldName("LEG_ISHP.F_NAME"); | |
descriptor.addPrimaryKeyFieldName("LEG_ISHP.L_NAME"); | |
descriptor.addPrimaryKeyFieldName("LEG_ISHP.SHIP_NO"); | |
// SECTION: PROPERTIES | |
descriptor.getDescriptorInheritancePolicy().setShouldReadSubclasses(true); | |
addDescriptor(descriptor); | |
} | |
/** | |
* TopLink generated method. | |
* <b>WARNING</b>: This code was generated by an automated tool. | |
* Any changes will be lost when the code is re-generated | |
*/ | |
protected void buildInsuredShipmentDescriptor() { | |
org.eclipse.persistence.descriptors.RelationalDescriptor descriptor = new org.eclipse.persistence.descriptors.RelationalDescriptor(); | |
// SECTION: DESCRIPTOR | |
descriptor.setJavaClass(org.eclipse.persistence.testing.models.legacy.InsuredShipment.class); | |
descriptor.getDescriptorInheritancePolicy().setParentClass(org.eclipse.persistence.testing.models.legacy.Shipment.class); | |
Vector vector = new Vector(); | |
vector.addElement("LEG_ISHP"); | |
descriptor.setTableNames(vector); | |
descriptor.addPrimaryKeyFieldName("LEG_ISHP.F_NAME"); | |
descriptor.addPrimaryKeyFieldName("LEG_ISHP.L_NAME"); | |
descriptor.addPrimaryKeyFieldName("LEG_ISHP.SHIP_NO"); | |
// SECTION: PROPERTIES | |
descriptor.getDescriptorInheritancePolicy().setShouldReadSubclasses(true); | |
// SECTION: DIRECTTOFIELDMAPPING | |
org.eclipse.persistence.mappings.DirectToFieldMapping directtofieldmapping = new org.eclipse.persistence.mappings.DirectToFieldMapping(); | |
directtofieldmapping.setAttributeName("employeeFirstName"); | |
directtofieldmapping.setIsReadOnly(false); | |
directtofieldmapping.setFieldName("LEG_ISHP.F_NAME"); | |
descriptor.addMapping(directtofieldmapping); | |
// SECTION: DIRECTTOFIELDMAPPING | |
org.eclipse.persistence.mappings.DirectToFieldMapping directtofieldmapping1 = new org.eclipse.persistence.mappings.DirectToFieldMapping(); | |
directtofieldmapping1.setAttributeName("employeeLastName"); | |
directtofieldmapping1.setIsReadOnly(false); | |
directtofieldmapping1.setFieldName("LEG_ISHP.L_NAME"); | |
descriptor.addMapping(directtofieldmapping1); | |
// SECTION: DIRECTTOFIELDMAPPING | |
org.eclipse.persistence.mappings.DirectToFieldMapping directtofieldmapping2 = new org.eclipse.persistence.mappings.DirectToFieldMapping(); | |
directtofieldmapping2.setAttributeName("insuranceAmount"); | |
directtofieldmapping2.setIsReadOnly(false); | |
directtofieldmapping2.setFieldName("LEG_ISHP.INS_AMT"); | |
descriptor.addMapping(directtofieldmapping2); | |
// SECTION: DIRECTTOFIELDMAPPING | |
org.eclipse.persistence.mappings.DirectToFieldMapping directtofieldmapping3 = new org.eclipse.persistence.mappings.DirectToFieldMapping(); | |
directtofieldmapping3.setAttributeName("shipmentNumber"); | |
directtofieldmapping3.setIsReadOnly(false); | |
directtofieldmapping3.setFieldName("LEG_ISHP.SHIP_NO"); | |
descriptor.addMapping(directtofieldmapping3); | |
org.eclipse.persistence.testing.models.legacy.LegacyProject.amendInsuredShipmentDescriptor(descriptor); | |
addDescriptor(descriptor); | |
} | |
/** | |
* TopLink generated method. | |
* <b>WARNING</b>: This code was generated by an automated tool. | |
* Any changes will be lost when the code is re-generated | |
*/ | |
protected void buildOrderDescriptor() { | |
org.eclipse.persistence.descriptors.RelationalDescriptor descriptor = new org.eclipse.persistence.descriptors.RelationalDescriptor(); | |
// SECTION: DESCRIPTOR | |
descriptor.setJavaClass(org.eclipse.persistence.testing.models.legacy.Order.class); | |
Vector vector = new Vector(); | |
vector.addElement("LEG_ORD"); | |
descriptor.setTableNames(vector); | |
descriptor.addPrimaryKeyFieldName("LEG_ORD.FNAME"); | |
descriptor.addPrimaryKeyFieldName("LEG_ORD.LNAME"); | |
descriptor.addPrimaryKeyFieldName("LEG_ORD.ORDER_NO"); | |
descriptor.addPrimaryKeyFieldName("LEG_ORD.SHIP_NO"); | |
// SECTION: DIRECTTOFIELDMAPPING | |
org.eclipse.persistence.mappings.DirectToFieldMapping directtofieldmapping = new org.eclipse.persistence.mappings.DirectToFieldMapping(); | |
directtofieldmapping.setAttributeName("description"); | |
directtofieldmapping.setIsReadOnly(false); | |
directtofieldmapping.setFieldName("LEG_ORD.DESCRIP"); | |
descriptor.addMapping(directtofieldmapping); | |
// SECTION: DIRECTTOFIELDMAPPING | |
org.eclipse.persistence.mappings.DirectToFieldMapping directtofieldmapping1 = new org.eclipse.persistence.mappings.DirectToFieldMapping(); | |
directtofieldmapping1.setAttributeName("employeeFirstName"); | |
directtofieldmapping1.setIsReadOnly(true); | |
directtofieldmapping1.setFieldName("LEG_ORD.FNAME"); | |
descriptor.addMapping(directtofieldmapping1); | |
// SECTION: DIRECTTOFIELDMAPPING | |
org.eclipse.persistence.mappings.DirectToFieldMapping directtofieldmapping2 = new org.eclipse.persistence.mappings.DirectToFieldMapping(); | |
directtofieldmapping2.setAttributeName("employeeLastName"); | |
directtofieldmapping2.setIsReadOnly(true); | |
directtofieldmapping2.setFieldName("LEG_ORD.LNAME"); | |
descriptor.addMapping(directtofieldmapping2); | |
// SECTION: DIRECTTOFIELDMAPPING | |
org.eclipse.persistence.mappings.DirectToFieldMapping directtofieldmapping3 = new org.eclipse.persistence.mappings.DirectToFieldMapping(); | |
directtofieldmapping3.setAttributeName("orderNumber"); | |
directtofieldmapping3.setIsReadOnly(false); | |
directtofieldmapping3.setFieldName("LEG_ORD.ORDER_NO"); | |
descriptor.addMapping(directtofieldmapping3); | |
// SECTION: DIRECTTOFIELDMAPPING | |
org.eclipse.persistence.mappings.DirectToFieldMapping directtofieldmapping4 = new org.eclipse.persistence.mappings.DirectToFieldMapping(); | |
directtofieldmapping4.setAttributeName("shipmentNumber"); | |
directtofieldmapping4.setIsReadOnly(true); | |
directtofieldmapping4.setFieldName("LEG_ORD.SHIP_NO"); | |
descriptor.addMapping(directtofieldmapping4); | |
// SECTION: ONETOONEMAPPING | |
org.eclipse.persistence.mappings.OneToOneMapping onetoonemapping = new org.eclipse.persistence.mappings.OneToOneMapping(); | |
onetoonemapping.setAttributeName("employee"); | |
onetoonemapping.setIsReadOnly(false); | |
onetoonemapping.setUsesIndirection(false); | |
onetoonemapping.setReferenceClass(org.eclipse.persistence.testing.models.legacy.Employee.class); | |
onetoonemapping.setIsPrivateOwned(false); | |
onetoonemapping.addForeignKeyFieldName("LEG_ORD.FNAME", "LEG_EMP.FNAME"); | |
onetoonemapping.addForeignKeyFieldName("LEG_ORD.LNAME", "LEG_EMP.LNAME"); | |
descriptor.addMapping(onetoonemapping); | |
// SECTION: ONETOONEMAPPING | |
org.eclipse.persistence.mappings.OneToOneMapping onetoonemapping1 = new org.eclipse.persistence.mappings.OneToOneMapping(); | |
onetoonemapping1.setAttributeName("shipment"); | |
onetoonemapping1.setIsReadOnly(false); | |
onetoonemapping1.setUsesIndirection(false); | |
onetoonemapping1.setReferenceClass(org.eclipse.persistence.testing.models.legacy.Shipment.class); | |
onetoonemapping1.setIsPrivateOwned(false); | |
onetoonemapping1.addForeignKeyFieldName("LEG_ORD.SHIP_NO", "LEG_SHP.SHIP_NO"); | |
onetoonemapping1.addTargetForeignKeyFieldName("LEG_SHP.FNAME", "LEG_ORD.FNAME"); | |
onetoonemapping1.addTargetForeignKeyFieldName("LEG_SHP.LNAME", "LEG_ORD.LNAME"); | |
descriptor.addMapping(onetoonemapping1); | |
addDescriptor(descriptor); | |
} | |
/** | |
* TopLink generated method. | |
* <b>WARNING</b>: This code was generated by an automated tool. | |
* Any changes will be lost when the code is re-generated | |
*/ | |
protected void buildShipmentDescriptor() { | |
org.eclipse.persistence.descriptors.RelationalDescriptor descriptor = new org.eclipse.persistence.descriptors.RelationalDescriptor(); | |
// SECTION: DESCRIPTOR | |
descriptor.setJavaClass(org.eclipse.persistence.testing.models.legacy.Shipment.class); | |
Vector vector = new Vector(); | |
vector.addElement("LEG_SHP"); | |
descriptor.setTableNames(vector); | |
descriptor.addPrimaryKeyFieldName("LEG_SHP.FNAME"); | |
descriptor.addPrimaryKeyFieldName("LEG_SHP.LNAME"); | |
descriptor.addPrimaryKeyFieldName("LEG_SHP.SHIP_NO"); | |
// SECTION: PROPERTIES | |
descriptor.getDescriptorInheritancePolicy().setShouldReadSubclasses(true); | |
descriptor.getDescriptorInheritancePolicy().setClassIndicatorFieldName("TYPE"); | |
descriptor.getDescriptorInheritancePolicy().setShouldUseClassNameAsIndicator(false); | |
descriptor.getDescriptorInheritancePolicy().addClassIndicator(org.eclipse.persistence.testing.models.legacy.GaurenteedShipment.class, "Gaurentee"); | |
descriptor.getDescriptorInheritancePolicy().addClassIndicator(org.eclipse.persistence.testing.models.legacy.InsuredShipment.class, "Insured"); | |
descriptor.getDescriptorInheritancePolicy().addClassIndicator(org.eclipse.persistence.testing.models.legacy.Shipment.class, "Normal"); | |
// SECTION: COPY POLICY | |
descriptor.createCopyPolicy("constructor"); | |
// SECTION: INSTANTIATION POLICY | |
descriptor.createInstantiationPolicy("constructor"); | |
// SECTION: DIRECTTOFIELDMAPPING | |
org.eclipse.persistence.mappings.DirectToFieldMapping directtofieldmapping = new org.eclipse.persistence.mappings.DirectToFieldMapping(); | |
directtofieldmapping.setAttributeName("employeeFirstName"); | |
directtofieldmapping.setIsReadOnly(true); | |
directtofieldmapping.setFieldName("LEG_SHP.FNAME"); | |
descriptor.addMapping(directtofieldmapping); | |
// SECTION: DIRECTTOFIELDMAPPING | |
org.eclipse.persistence.mappings.DirectToFieldMapping directtofieldmapping1 = new org.eclipse.persistence.mappings.DirectToFieldMapping(); | |
directtofieldmapping1.setAttributeName("employeeLastName"); | |
directtofieldmapping1.setIsReadOnly(true); | |
directtofieldmapping1.setFieldName("LEG_SHP.LNAME"); | |
descriptor.addMapping(directtofieldmapping1); | |
// SECTION: DIRECTTOFIELDMAPPING | |
org.eclipse.persistence.mappings.DirectToFieldMapping directtofieldmapping2 = new org.eclipse.persistence.mappings.DirectToFieldMapping(); | |
directtofieldmapping2.setAttributeName("quantityShipped"); | |
directtofieldmapping2.setIsReadOnly(false); | |
directtofieldmapping2.setFieldName("LEG_SHP.QUANTITY"); | |
descriptor.addMapping(directtofieldmapping2); | |
// SECTION: DIRECTTOFIELDMAPPING | |
org.eclipse.persistence.mappings.DirectToFieldMapping directtofieldmapping3 = new org.eclipse.persistence.mappings.DirectToFieldMapping(); | |
directtofieldmapping3.setAttributeName("shipmentNumber"); | |
directtofieldmapping3.setIsReadOnly(false); | |
directtofieldmapping3.setFieldName("LEG_SHP.SHIP_NO"); | |
descriptor.addMapping(directtofieldmapping3); | |
// SECTION: DIRECTTOFIELDMAPPING | |
org.eclipse.persistence.mappings.DirectToFieldMapping directtofieldmapping4 = new org.eclipse.persistence.mappings.DirectToFieldMapping(); | |
directtofieldmapping4.setAttributeName("shipMode"); | |
directtofieldmapping4.setIsReadOnly(false); | |
directtofieldmapping4.setFieldName("LEG_SHP.SHP_MODE"); | |
descriptor.addMapping(directtofieldmapping4); | |
// SECTION: ONETOMANYMAPPING | |
org.eclipse.persistence.mappings.OneToManyMapping onetomanymapping = new org.eclipse.persistence.mappings.OneToManyMapping(); | |
onetomanymapping.setAttributeName("orders"); | |
onetomanymapping.setIsReadOnly(false); | |
onetomanymapping.setUsesIndirection(false); | |
onetomanymapping.setReferenceClass(org.eclipse.persistence.testing.models.legacy.Order.class); | |
onetomanymapping.setIsPrivateOwned(true); | |
onetomanymapping.addTargetForeignKeyFieldName("LEG_ORD.LNAME", "LEG_SHP.LNAME"); | |
onetomanymapping.addTargetForeignKeyFieldName("LEG_ORD.SHIP_NO", "LEG_SHP.SHIP_NO"); | |
onetomanymapping.addTargetForeignKeyFieldName("LEG_ORD.FNAME", "LEG_SHP.FNAME"); | |
descriptor.addMapping(onetomanymapping); | |
//Fatima's section to add a custom query for the onetomanymapping mapping | |
//First create the query object | |
ExpressionBuilder myBuilder = new ExpressionBuilder(); | |
Expression exp = myBuilder.getField("LEG_ORD.SHIP_NO").equal(myBuilder.getParameter("LEG_SHP.SHIP_NO")); | |
Expression exp1 = myBuilder.getField("LEG_ORD.ORDER_NO").notEqual(0); | |
ReadAllQuery q = new ReadAllQuery(); | |
q.setReferenceClass(Order.class); | |
q.addArgument("shipmentNumber"); | |
q.setSelectionCriteria(exp.and(exp1)); | |
OneToManyMapping myMap = (OneToManyMapping)descriptor.getMappingForAttributeName("orders"); | |
myMap.setCustomSelectionQuery(q); | |
// SECTION: ONETOONEMAPPING | |
org.eclipse.persistence.mappings.OneToOneMapping onetoonemapping = new org.eclipse.persistence.mappings.OneToOneMapping(); | |
onetoonemapping.setAttributeName("employee"); | |
onetoonemapping.setIsReadOnly(false); | |
onetoonemapping.setUsesIndirection(false); | |
onetoonemapping.setReferenceClass(org.eclipse.persistence.testing.models.legacy.Employee.class); | |
onetoonemapping.setIsPrivateOwned(false); | |
onetoonemapping.addForeignKeyFieldName("LEG_SHP.LNAME", "LEG_EMP.LNAME"); | |
onetoonemapping.addForeignKeyFieldName("LEG_SHP.FNAME", "LEG_EMP.FNAME"); | |
descriptor.addMapping(onetoonemapping); | |
addDescriptor(descriptor); | |
} | |
} |