blob: eded7e324db096b9768e5fd97094bb5f7c139c80 [file] [log] [blame]
/*
* Copyright (c) 1998, 2021 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 v. 2.0 which is available at
* http://www.eclipse.org/legal/epl-2.0,
* or the Eclipse Distribution License v. 1.0 which is available at
* http://www.eclipse.org/org/documents/edl-v10.php.
*
* SPDX-License-Identifier: EPL-2.0 OR BSD-3-Clause
*/
// Contributors:
// Oracle - initial API and implementation from Oracle TopLink
package org.eclipse.persistence.testing.models.aggregate;
import java.util.*;
import org.eclipse.persistence.descriptors.ClassDescriptor;
import org.eclipse.persistence.internal.helper.DatabaseField;
import org.eclipse.persistence.mappings.TransformationMapping;
/**
* 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 AggregateProject extends org.eclipse.persistence.sessions.Project {
protected boolean useNewAggregateCollection;
/**
* <b>WARNING</b>: This code was generated by an automated tool.
* Any changes will be lost when the code is re-generated
*/
public AggregateProject() {
this(false);
}
public AggregateProject(boolean useNewAggregateCollection) {
this.useNewAggregateCollection = useNewAggregateCollection;
applyPROJECT();
applyLOGIN();
buildAddressDescriptor();
buildAddressDescriptionDescriptor();
buildClientDescriptor();
buildComputerDescriptor();
buildEmployeeDescriptor();
buildEvaluationClientDescriptor();
buildLanguageDescriptor();
buildPeriodDescriptor();
buildPeriodDescriptionDescriptor();
buildProjectDescriptionDescriptor();
buildResponsibilityDescriptor();
buildOidDescriptor();
buildVersionDescriptor();
buildJobDescriptor();
buildWorkerDescriptor();
//aggregate collection mapping
buildAgentDescriptor();
buildCustomerDescriptor();
buildHouseDescriptor();
buildDependantDescriptor();//nested aggregate collection "Agent->Customer->Dependant"
buildCompanyDescriptor();//1:1 with aggregated Customer
buildSingleHouseDescriptor();//inheritance "House -> SingleHouse"
buildTownHouseDescriptor();//inheritance "House -> TownHouse"
buildSellingPointDescriptor();//CR#2587, cascading foreign keys.
buildRoomSellingPointDescriptor();// CR#2896
if(useNewAggregateCollection) {
buildBuilderDescriptor();
}
// Added May 5, 2000 - Jon D. for pr381
buildTransportDescriptor();
buildVehicleDescriptor();
buildBicycleDescriptor();
buildCarDescriptor();
buildGolfClubShaftDescriptor();
buildGolfClubDescriptor();
buildManufacturerDescriptor();
}
/**
* 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() {
}
/**
* 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("ComplexAggregateSystem");
}
/**
* 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 buildAddressDescriptionDescriptor() {
org.eclipse.persistence.descriptors.RelationalDescriptor descriptor = new org.eclipse.persistence.descriptors.RelationalDescriptor();
// SECTION: DESCRIPTOR
descriptor.setJavaClass(org.eclipse.persistence.testing.models.aggregate.AddressDescription.class);
Vector vector = new Vector();
vector.addElement("AGG_EMP");
descriptor.setTableNames(vector);
// SECTION: PROPERTIES
descriptor.descriptorIsAggregate();
// SECTION: COPY POLICY
descriptor.createCopyPolicy("constructor");
// SECTION: INSTANTIATION POLICY
descriptor.createInstantiationPolicy("constructor");
// SECTION: AGGREGATEOBJECTMAPPING
org.eclipse.persistence.mappings.AggregateObjectMapping aggregateobjectmapping = new org.eclipse.persistence.mappings.AggregateObjectMapping();
aggregateobjectmapping.setAttributeName("periodDescription");
aggregateobjectmapping.setIsReadOnly(false);
aggregateobjectmapping.setGetMethodName("getPeriodDescription");
aggregateobjectmapping.setSetMethodName("setPeriodDescription");
aggregateobjectmapping.setReferenceClass(org.eclipse.persistence.testing.models.aggregate.PeriodDescription.class);
aggregateobjectmapping.setIsNullAllowed(true);
descriptor.addMapping(aggregateobjectmapping);
// SECTION: ONETOONEMAPPING
org.eclipse.persistence.mappings.OneToOneMapping onetoonemapping = new org.eclipse.persistence.mappings.OneToOneMapping();
onetoonemapping.setAttributeName("address");
onetoonemapping.setIsReadOnly(false);
onetoonemapping.setUsesIndirection(true);
onetoonemapping.setReferenceClass(org.eclipse.persistence.testing.models.aggregate.Address.class);
onetoonemapping.setIsPrivateOwned(true);
// added for bug 5478648 - D.Minsky
onetoonemapping.setUsesBatchReading(true);
onetoonemapping.addForeignKeyFieldName("AGG_EMP.EM_ADD", "AGG_ADD.ID");
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 buildAddressDescriptor() {
org.eclipse.persistence.descriptors.RelationalDescriptor descriptor = new org.eclipse.persistence.descriptors.RelationalDescriptor();
// SECTION: DESCRIPTOR
descriptor.setJavaClass(org.eclipse.persistence.testing.models.aggregate.Address.class);
Vector vector = new Vector();
vector.addElement("AGG_ADD");
descriptor.setTableNames(vector);
descriptor.addPrimaryKeyFieldName("AGG_ADD.ID");
// SECTION: PROPERTIES
descriptor.setSequenceNumberName("SEQ");
descriptor.setSequenceNumberFieldName("ID");
// 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("AGG_ADD.ADDRESS");
descriptor.addMapping(directtofieldmapping);
// SECTION: DIRECTTOFIELDMAPPING
org.eclipse.persistence.mappings.DirectToFieldMapping directtofieldmapping1 = new org.eclipse.persistence.mappings.DirectToFieldMapping();
directtofieldmapping1.setAttributeName("id");
directtofieldmapping1.setIsReadOnly(false);
directtofieldmapping1.setFieldName("AGG_ADD.ID");
descriptor.addMapping(directtofieldmapping1);
addDescriptor(descriptor);
}
protected void buildAgentDescriptor() {
org.eclipse.persistence.descriptors.RelationalDescriptor descriptor = new org.eclipse.persistence.descriptors.RelationalDescriptor();
// SECTION: DESCRIPTOR
descriptor.setJavaClass(org.eclipse.persistence.testing.models.aggregate.Agent.class);
Vector vector = new Vector();
vector.addElement("AGENT");
descriptor.setTableNames(vector);
descriptor.addPrimaryKeyFieldName("AGENT_ID");
// SECTION: PROPERTIES
descriptor.setSequenceNumberName("AGENT_SEQ");
descriptor.setSequenceNumberFieldName("AGENT_ID");
//cr 4143 Must have version for this test
org.eclipse.persistence.descriptors.VersionLockingPolicy lockingPolicy = new org.eclipse.persistence.descriptors.VersionLockingPolicy();
lockingPolicy.setWriteLockFieldName("VERSION");
descriptor.setOptimisticLockingPolicy(lockingPolicy);
// SECTION: COPY POLICY
descriptor.createCopyPolicy("constructor");
// SECTION: INSTANTIATION POLICY
descriptor.createInstantiationPolicy("constructor");
// SECTION: AGGREGATECOLLECTIONMAPPING
org.eclipse.persistence.mappings.AggregateCollectionMapping aggregatecollectionmapping = new org.eclipse.persistence.mappings.AggregateCollectionMapping();
aggregatecollectionmapping.setAttributeName("customers");
aggregatecollectionmapping.setIsReadOnly(false);
aggregatecollectionmapping.setUsesIndirection(true);
aggregatecollectionmapping.setGetMethodName("getCustomerValueHolder");
aggregatecollectionmapping.setSetMethodName("setCustomerValueHolder");
aggregatecollectionmapping.setReferenceClass(org.eclipse.persistence.testing.models.aggregate.Customer.class);
aggregatecollectionmapping.addTargetForeignKeyFieldName("CUSTOMER.AGENT_ID", "AGENT.AGENT_ID");
descriptor.addMapping(aggregatecollectionmapping);
// SECTION: AGGREGATECOLLECTIONMAPPING
org.eclipse.persistence.mappings.AggregateCollectionMapping aggregatecollectionmapping2 = new org.eclipse.persistence.mappings.AggregateCollectionMapping();
aggregatecollectionmapping2.setAttributeName("houses");
aggregatecollectionmapping2.setIsReadOnly(false);
aggregatecollectionmapping2.setUsesIndirection(true);
aggregatecollectionmapping2.setGetMethodName("getHouseValueHolder");
aggregatecollectionmapping2.setSetMethodName("setHouseValueHolder");
aggregatecollectionmapping2.setReferenceClass(org.eclipse.persistence.testing.models.aggregate.House.class);
aggregatecollectionmapping2.addTargetForeignKeyFieldName("HOUSE.AGENT_ID", "AGENT.AGENT_ID");
descriptor.addMapping(aggregatecollectionmapping2);
// SECTION: AGGREGATECOLLECTIONMAPPING -- java 2 collection
/* org.eclipse.persistence.mappings.AggregateCollectionMapping aggregatecollectionmapping2 = new org.eclipse.persistence.mappings.AggregateCollectionMapping();
aggregatecollectionmapping2.setAttributeName("houses2");
aggregatecollectionmapping2.setIsReadOnly(false );
//aggregatecollectionmapping2.setUsesIndirection(true);
aggregatecollectionmapping2.setReferenceClass(org.eclipse.persistence.testing.models.aggregate.House.class);
aggregatecollectionmapping2.addTargetForeignKeyFieldName("HOUSE.AGENT_ID","AGENT.AGENT_ID");
aggregatecollectionmapping2.useTransparentCollection();
//aggregatecollectionmapping2.useCollectionClass(java.util.ArrayList.class);
descriptor.addMapping(aggregatecollectionmapping2);
*/
// SECTION: DIRECTTOFIELDMAPPING
org.eclipse.persistence.mappings.DirectToFieldMapping directtofieldmapping = new org.eclipse.persistence.mappings.DirectToFieldMapping();
directtofieldmapping.setAttributeName("id");
directtofieldmapping.setIsReadOnly(false);
directtofieldmapping.setGetMethodName("getId");
directtofieldmapping.setSetMethodName("setId");
directtofieldmapping.setFieldName("AGENT_ID");
descriptor.addMapping(directtofieldmapping);
// SECTION: DIRECTTOFIELDMAPPING
org.eclipse.persistence.mappings.DirectToFieldMapping directtofieldmapping1 = new org.eclipse.persistence.mappings.DirectToFieldMapping();
directtofieldmapping1.setAttributeName("firstName");
directtofieldmapping1.setIsReadOnly(false);
directtofieldmapping1.setGetMethodName("getFirstName");
directtofieldmapping1.setSetMethodName("setFirstName");
directtofieldmapping1.setFieldName("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.setGetMethodName("getLastName");
directtofieldmapping2.setSetMethodName("setLastName");
directtofieldmapping2.setFieldName("LNAME");
descriptor.addMapping(directtofieldmapping2);
addDescriptor(descriptor);
}
protected void buildBicycleDescriptor() {
org.eclipse.persistence.descriptors.RelationalDescriptor descriptor = new org.eclipse.persistence.descriptors.RelationalDescriptor();
// SECTION: DESCRIPTOR
descriptor.setJavaClass(org.eclipse.persistence.testing.models.aggregate.Bicycle.class);
descriptor.getDescriptorInheritancePolicy().setParentClass(org.eclipse.persistence.testing.models.aggregate.Vehicle.class);
Vector vector = new Vector();
vector.addElement("AGGVEHICLE");
descriptor.setTableNames(vector);
// SECTION: PROPERTIES
descriptor.descriptorIsAggregate();
descriptor.getDescriptorInheritancePolicy().setShouldReadSubclasses(true);
// 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("description");
directtofieldmapping.setIsReadOnly(false);
directtofieldmapping.setFieldName("AGGVEHICLE.BICYCLE_DESC");
descriptor.addMapping(directtofieldmapping);
addDescriptor(descriptor);
}
protected void buildBuilderDescriptor() {
org.eclipse.persistence.descriptors.RelationalDescriptor descriptor = new org.eclipse.persistence.descriptors.RelationalDescriptor();
// SECTION: DESCRIPTOR
descriptor.setJavaClass(org.eclipse.persistence.testing.models.aggregate.Builder.class);
Vector vector = new Vector();
vector.addElement("BUILDER");
descriptor.setTableNames(vector);
descriptor.addPrimaryKeyFieldName("BUILDER_ID");
// SECTION: PROPERTIES
descriptor.setSequenceNumberName("BUILDER_SEQ");
descriptor.setSequenceNumberFieldName("BUILDER_ID");
//cr 4143 Must have version for this test
org.eclipse.persistence.descriptors.VersionLockingPolicy lockingPolicy = new org.eclipse.persistence.descriptors.VersionLockingPolicy();
lockingPolicy.setWriteLockFieldName("VERSION");
descriptor.setOptimisticLockingPolicy(lockingPolicy);
// SECTION: COPY POLICY
descriptor.createCopyPolicy("constructor");
// SECTION: INSTANTIATION POLICY
descriptor.createInstantiationPolicy("constructor");
// SECTION: AGGREGATECOLLECTIONMAPPING
org.eclipse.persistence.mappings.AggregateCollectionMapping aggregatecollectionmapping = new org.eclipse.persistence.mappings.AggregateCollectionMapping();
aggregatecollectionmapping.setAttributeName("customers");
aggregatecollectionmapping.setIsReadOnly(false);
aggregatecollectionmapping.setReferenceClass(org.eclipse.persistence.testing.models.aggregate.Customer.class);
aggregatecollectionmapping.addTargetForeignKeyFieldName("BUILDER_CUSTOMER.BUILDER_ID", "BUILDER.BUILDER_ID");
aggregatecollectionmapping.addFieldNameTranslation("BUILDER_CUSTOMER.CUSTOMER_ID", "CUSTOMER_ID");
aggregatecollectionmapping.addFieldNameTranslation("BUILDER_CUSTOMER.BUILDER_ID", "AGENT_ID");
aggregatecollectionmapping.addFieldNameTranslation("BUILDER_CUSTOMER.COMPANY_ID", "COMPANY_ID");
aggregatecollectionmapping.addFieldNameTranslation("BUILDER_CUSTOMER.NAME", "NAME");
aggregatecollectionmapping.addFieldNameTranslation("BUILDER_CUSTOMER.INCOME", "INCOME");
aggregatecollectionmapping.addNestedFieldNameTranslation("dependants", "BUILDER_DEPENDANT.CUSTOMER_ID", "CUSTOMER_ID");
aggregatecollectionmapping.addNestedFieldNameTranslation("dependants", "BUILDER_DEPENDANT.FIRST_NAME", "FIRST_NAME");
aggregatecollectionmapping.addNestedFieldNameTranslation("dependants", "BUILDER_DEPENDANT.AGE", "AGE");
aggregatecollectionmapping.useTransparentCollection();
descriptor.addMapping(aggregatecollectionmapping);
// SECTION: AGGREGATECOLLECTIONMAPPING
org.eclipse.persistence.mappings.AggregateCollectionMapping aggregatecollectionmapping2 = new org.eclipse.persistence.mappings.AggregateCollectionMapping();
aggregatecollectionmapping2.setAttributeName("houses");
aggregatecollectionmapping2.setIsReadOnly(false );
aggregatecollectionmapping2.setReferenceClass(org.eclipse.persistence.testing.models.aggregate.House.class);
aggregatecollectionmapping2.addTargetForeignKeyFieldName("BUILDER_HOUSE.BUILDER_ID","BUILDER.BUILDER_ID");
aggregatecollectionmapping2.addFieldNameTranslation("BUILDER_HOUSE.BUILDER_ID", "AGENT_ID");
aggregatecollectionmapping2.addFieldNameTranslation("BUILDER_HOUSE.LOCATION", "LOCATION");
aggregatecollectionmapping2.addFieldNameTranslation("BUILDER_HOUSE.DESCRIPTIONS", "DESCRIPTIONS");
aggregatecollectionmapping2.addFieldNameTranslation("BUILDER_HOUSE.INS_ID", "INS_ID");
aggregatecollectionmapping2.addFieldNameTranslation("BUILDER_HOUSE.VERSION", "VERSION");
aggregatecollectionmapping2.addFieldNameTranslation("BUILDER_HOUSE.TYPE", "TYPE");
aggregatecollectionmapping2.addFieldNameTranslation("BUILDER_SINGLE_HOUSE.BUILDER_ID", "SINGLE_HOUSE.AGENT_ID");
aggregatecollectionmapping2.addFieldNameTranslation("BUILDER_SINGLE_HOUSE.LOCATION", "SINGLE_HOUSE.LOCATION");
aggregatecollectionmapping2.addFieldNameTranslation("BUILDER_SINGLE_HOUSE.GARAGE", "SINGLE_HOUSE.GARAGE");
aggregatecollectionmapping2.addNestedFieldNameTranslation("sellingPoints", "BUILDER_SELLING_POINT.BUILDER_ID", "AGENT_ID");
aggregatecollectionmapping2.addNestedFieldNameTranslation("sellingPoints", "BUILDER_SELLING_POINT.LOCATION", "LOCATION");
aggregatecollectionmapping2.addNestedFieldNameTranslation("sellingPoints", "BUILDER_SELLING_POINT.AREA", "AREA");
aggregatecollectionmapping2.addNestedFieldNameTranslation("sellingPoints", "BUILDER_SELLING_POINT.DESCRIPTION", "DESCRIPTION");
aggregatecollectionmapping2.addNestedFieldNameTranslation("sellingPoints", "BUILDER_SELLING_POINT.TYPE", "TYPE");
aggregatecollectionmapping2.addNestedFieldNameTranslation("sellingPoints", "BUILDER_SELLING_POINT.SQUARE_FEET", "SQUARE_FEET");
aggregatecollectionmapping2.useTransparentCollection();
descriptor.addMapping(aggregatecollectionmapping2);
// SECTION: AGGREGATECOLLECTIONMAPPING
org.eclipse.persistence.mappings.AggregateCollectionMapping aggregatecollectionmapping3 = new org.eclipse.persistence.mappings.AggregateCollectionMapping();
aggregatecollectionmapping3.setAttributeName("vehicles");
aggregatecollectionmapping3.setIsReadOnly(false );
aggregatecollectionmapping3.setReferenceClass(org.eclipse.persistence.testing.models.aggregate.Vehicle.class);
aggregatecollectionmapping3.addTargetForeignKeyFieldName("BUILDER_VEHICLE.BUILDER_ID","BUILDER.BUILDER_ID");
aggregatecollectionmapping3.addFieldNameTranslation("BUILDER_VEHICLE.TYPE", "TYPE");
aggregatecollectionmapping3.addFieldNameTranslation("BUILDER_VEHICLE.CAPACITY", "CAPACITY");
aggregatecollectionmapping3.addFieldNameTranslation("BUILDER_VEHICLE.COLOUR", "COLOUR");
aggregatecollectionmapping3.addFieldNameTranslation("BUILDER_VEHICLE.BICYCLE_DESC", "BICYCLE_DESC");
aggregatecollectionmapping3.addFieldNameTranslation("BUILDER_VEHICLE.CAR_MAKE", "CAR_MAKE");
aggregatecollectionmapping3.addFieldNameTranslation("BUILDER_VEHICLE.CAR_MODEL", "CAR_MODEL");
aggregatecollectionmapping3.useTransparentCollection();
descriptor.addMapping(aggregatecollectionmapping3);
// SECTION: DIRECTTOFIELDMAPPING
org.eclipse.persistence.mappings.DirectToFieldMapping directtofieldmapping = new org.eclipse.persistence.mappings.DirectToFieldMapping();
directtofieldmapping.setAttributeName("id");
directtofieldmapping.setIsReadOnly(false);
directtofieldmapping.setGetMethodName("getId");
directtofieldmapping.setSetMethodName("setId");
directtofieldmapping.setFieldName("BUILDER_ID");
descriptor.addMapping(directtofieldmapping);
// SECTION: DIRECTTOFIELDMAPPING
org.eclipse.persistence.mappings.DirectToFieldMapping directtofieldmapping1 = new org.eclipse.persistence.mappings.DirectToFieldMapping();
directtofieldmapping1.setAttributeName("firstName");
directtofieldmapping1.setIsReadOnly(false);
directtofieldmapping1.setGetMethodName("getFirstName");
directtofieldmapping1.setSetMethodName("setFirstName");
directtofieldmapping1.setFieldName("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.setGetMethodName("getLastName");
directtofieldmapping2.setSetMethodName("setLastName");
directtofieldmapping2.setFieldName("LNAME");
descriptor.addMapping(directtofieldmapping2);
addDescriptor(descriptor);
}
protected void buildCarDescriptor() {
org.eclipse.persistence.descriptors.RelationalDescriptor descriptor = new org.eclipse.persistence.descriptors.RelationalDescriptor();
// SECTION: DESCRIPTOR
descriptor.setJavaClass(org.eclipse.persistence.testing.models.aggregate.Car.class);
descriptor.getDescriptorInheritancePolicy().setParentClass(org.eclipse.persistence.testing.models.aggregate.Vehicle.class);
Vector vector = new Vector();
vector.addElement("AGGVEHICLE");
descriptor.setTableNames(vector);
// SECTION: PROPERTIES
descriptor.descriptorIsAggregate();
descriptor.getDescriptorInheritancePolicy().setShouldReadSubclasses(true);
// 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("make");
directtofieldmapping.setIsReadOnly(false);
directtofieldmapping.setFieldName("AGGVEHICLE.CAR_MAKE");
descriptor.addMapping(directtofieldmapping);
// SECTION: DIRECTTOFIELDMAPPING
org.eclipse.persistence.mappings.DirectToFieldMapping directtofieldmapping1 = new org.eclipse.persistence.mappings.DirectToFieldMapping();
directtofieldmapping1.setAttributeName("model");
directtofieldmapping1.setIsReadOnly(false);
directtofieldmapping1.setFieldName("AGGVEHICLE.CAR_MODEL");
descriptor.addMapping(directtofieldmapping1);
addDescriptor(descriptor);
}
protected void buildClientDescriptor() {
org.eclipse.persistence.descriptors.RelationalDescriptor descriptor = new org.eclipse.persistence.descriptors.RelationalDescriptor();
// SECTION: DESCRIPTOR
descriptor.setJavaClass(org.eclipse.persistence.testing.models.aggregate.Client.class);
Vector vector = new Vector();
vector.addElement("AGG_CLNT");
descriptor.setTableNames(vector);
descriptor.addPrimaryKeyFieldName("AGG_CLNT.CL_ID");
// SECTION: PROPERTIES
descriptor.setSequenceNumberName("SEQ");
descriptor.setSequenceNumberFieldName("CL_ID");
descriptor.getDescriptorInheritancePolicy().setShouldReadSubclasses(false);
descriptor.getDescriptorInheritancePolicy().setClassIndicatorFieldName("TYPE");
descriptor.getDescriptorInheritancePolicy().setShouldUseClassNameAsIndicator(false);
descriptor.getDescriptorInheritancePolicy().addClassIndicator(org.eclipse.persistence.testing.models.aggregate.Client.class, "Client");
descriptor.getDescriptorInheritancePolicy().addClassIndicator(org.eclipse.persistence.testing.models.aggregate.EvaluationClient.class, "Eval");
org.eclipse.persistence.descriptors.VersionLockingPolicy lockingPolicy = new org.eclipse.persistence.descriptors.VersionLockingPolicy();
lockingPolicy.setWriteLockFieldName("AGG_CLNT.VERSION");
lockingPolicy.storeInObject();
descriptor.setOptimisticLockingPolicy(lockingPolicy);
// SECTION: COPY POLICY
descriptor.createCopyPolicy("constructor");
// SECTION: INSTANTIATION POLICY
descriptor.createInstantiationPolicy("constructor");
// SECTION: AGGREGATEOBJECTMAPPING
org.eclipse.persistence.mappings.AggregateObjectMapping aggregateobjectmapping = new org.eclipse.persistence.mappings.AggregateObjectMapping();
aggregateobjectmapping.setAttributeName("addressDescription");
aggregateobjectmapping.setIsReadOnly(false);
aggregateobjectmapping.setReferenceClass(org.eclipse.persistence.testing.models.aggregate.AddressDescription.class);
aggregateobjectmapping.setIsNullAllowed(false);
aggregateobjectmapping.addFieldNameTranslation("AGG_CLNT.CL_ADD", "AGG_EMP.EM_ADD");
aggregateobjectmapping.addFieldNameTranslation("AGG_CLNT.CL_EDATE", "AGG_EMP.EM_EDATE");
aggregateobjectmapping.addFieldNameTranslation("AGG_CLNT.CL_SDATE", "AGG_EMP.EM_SDATE");
aggregateobjectmapping.addFieldNameTranslation("AGG_CLNT.CL_EEDATE", "AGG_EMP.EM_EEDATE");
aggregateobjectmapping.addFieldNameTranslation("AGG_CLNT.CL_ESDATE", "AGG_EMP.EM_ESDATE");
descriptor.addMapping(aggregateobjectmapping);
// SECTION: AGGREGATEOBJECTMAPPING
org.eclipse.persistence.mappings.AggregateObjectMapping aggregateobjectmapping2 = new org.eclipse.persistence.mappings.AggregateObjectMapping();
aggregateobjectmapping2.setAttributeName("id");
aggregateobjectmapping2.setIsReadOnly(false);
aggregateobjectmapping2.setGetMethodName("getOid");
aggregateobjectmapping2.setSetMethodName("setOid");
aggregateobjectmapping2.setReferenceClass(org.eclipse.persistence.testing.models.aggregate.Oid.class);
aggregateobjectmapping2.addFieldNameTranslation("AGG_CLNT.CL_ID", "ID");
aggregateobjectmapping2.setIsNullAllowed(false);
descriptor.addMapping(aggregateobjectmapping2);
// SECTION: DIRECTTOFIELDMAPPING
org.eclipse.persistence.mappings.DirectToFieldMapping directtofieldmapping1 = new org.eclipse.persistence.mappings.DirectToFieldMapping();
directtofieldmapping1.setAttributeName("name");
directtofieldmapping1.setIsReadOnly(false);
directtofieldmapping1.setFieldName("AGG_CLNT.CL_NAME");
descriptor.addMapping(directtofieldmapping1);
org.eclipse.persistence.mappings.AggregateObjectMapping versionMapping = new org.eclipse.persistence.mappings.AggregateObjectMapping();
versionMapping.setAttributeName("version");
versionMapping.setReferenceClass(org.eclipse.persistence.testing.models.aggregate.Version.class);
versionMapping.setIsNullAllowed(false);
versionMapping.addFieldNameTranslation("AGG_CLNT.VERSION", "VERSION");
descriptor.addMapping(versionMapping);
addDescriptor(descriptor);
}
protected void buildCompanyDescriptor() {
org.eclipse.persistence.descriptors.RelationalDescriptor descriptor = new org.eclipse.persistence.descriptors.RelationalDescriptor();
// SECTION: DESCRIPTOR
descriptor.setJavaClass(org.eclipse.persistence.testing.models.aggregate.Company.class);
Vector vector = new Vector();
vector.addElement("COMPANY_AGG");
descriptor.setTableNames(vector);
descriptor.addPrimaryKeyFieldName("COMPANY_ID");
// SECTION: PROPERTIES
descriptor.setSequenceNumberName("COMPANY_SEQ");
descriptor.setSequenceNumberFieldName("COMPANY_ID");
// 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("companyId");
directtofieldmapping.setIsReadOnly(false);
directtofieldmapping.setGetMethodName("getCompanyId");
directtofieldmapping.setSetMethodName("setCompanyId");
directtofieldmapping.setFieldName("COMPANY_ID");
descriptor.addMapping(directtofieldmapping);
// SECTION: DIRECTTOFIELDMAPPING
org.eclipse.persistence.mappings.DirectToFieldMapping directtofieldmapping1 = new org.eclipse.persistence.mappings.DirectToFieldMapping();
directtofieldmapping1.setAttributeName("name");
directtofieldmapping1.setIsReadOnly(false);
directtofieldmapping1.setGetMethodName("getName");
directtofieldmapping1.setSetMethodName("setName");
directtofieldmapping1.setFieldName("NAME");
descriptor.addMapping(directtofieldmapping1);
addDescriptor(descriptor);
}
protected void buildComputerDescriptor() {
org.eclipse.persistence.descriptors.RelationalDescriptor descriptor = new org.eclipse.persistence.descriptors.RelationalDescriptor();
// SECTION: DESCRIPTOR
descriptor.setJavaClass(org.eclipse.persistence.testing.models.aggregate.Computer.class);
Vector vector = new Vector();
vector.addElement("AGG_COM");
descriptor.setTableNames(vector);
descriptor.addPrimaryKeyFieldName("AGG_COM.ID");
// SECTION: PROPERTIES
descriptor.setSequenceNumberName("SEQ");
descriptor.setSequenceNumberFieldName("ID");
// 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("description");
directtofieldmapping.setIsReadOnly(false);
directtofieldmapping.setFieldName("AGG_COM.DESCRIP");
descriptor.addMapping(directtofieldmapping);
// SECTION: AGGREGATEOBJECTMAPPING
org.eclipse.persistence.mappings.AggregateObjectMapping aggregateobjectmapping = new org.eclipse.persistence.mappings.AggregateObjectMapping();
aggregateobjectmapping.setAttributeName("id");
aggregateobjectmapping.setIsReadOnly(false);
aggregateobjectmapping.setGetMethodName("getOid");
aggregateobjectmapping.setSetMethodName("setOid");
aggregateobjectmapping.setReferenceClass(org.eclipse.persistence.testing.models.aggregate.Oid.class);
aggregateobjectmapping.setIsNullAllowed(false);
descriptor.addMapping(aggregateobjectmapping);
addDescriptor(descriptor);
}
protected void buildCustomerDescriptor() {
org.eclipse.persistence.descriptors.RelationalDescriptor descriptor = new org.eclipse.persistence.descriptors.RelationalDescriptor();
// SECTION: DESCRIPTOR
descriptor.setJavaClass(org.eclipse.persistence.testing.models.aggregate.Customer.class);
Vector vector = new Vector();
vector.addElement("CUSTOMER");
descriptor.setTableNames(vector);
descriptor.addPrimaryKeyFieldName("CUSTOMER_ID");
// SECTION: PROPERTIES
descriptor.setSequenceNumberName("CUSTOMER_SEQ");
descriptor.setSequenceNumberFieldName("CUSTOMER_ID");
descriptor.descriptorIsAggregateCollection();
// SECTION: COPY POLICY
descriptor.createCopyPolicy("constructor");
// SECTION: INSTANTIATION POLICY
descriptor.createInstantiationPolicy("constructor");
// SECTION: AGGREGATECOLLECTIONMAPPING
org.eclipse.persistence.mappings.AggregateCollectionMapping aggregatecollectionmapping = new org.eclipse.persistence.mappings.AggregateCollectionMapping();
aggregatecollectionmapping.setAttributeName("dependants");
aggregatecollectionmapping.setIsReadOnly(false);
aggregatecollectionmapping.setUsesIndirection(true);
aggregatecollectionmapping.setGetMethodName("getDependantValueHolder");
aggregatecollectionmapping.setSetMethodName("setDependantValueHolder");
aggregatecollectionmapping.setReferenceClass(org.eclipse.persistence.testing.models.aggregate.Dependant.class);
aggregatecollectionmapping.addTargetForeignKeyFieldName("DEPENDANT.CUSTOMER_ID", "CUSTOMER.CUSTOMER_ID");
descriptor.addMapping(aggregatecollectionmapping);
// SECTION: DIRECTTOFIELDMAPPING
org.eclipse.persistence.mappings.DirectToFieldMapping directtofieldmapping = new org.eclipse.persistence.mappings.DirectToFieldMapping();
directtofieldmapping.setAttributeName("name");
directtofieldmapping.setIsReadOnly(false);
directtofieldmapping.setGetMethodName("getName");
directtofieldmapping.setSetMethodName("setName");
directtofieldmapping.setFieldName("NAME");
descriptor.addMapping(directtofieldmapping);
// SECTION: DIRECTTOFIELDMAPPING
org.eclipse.persistence.mappings.DirectToFieldMapping directtofieldmapping1 = new org.eclipse.persistence.mappings.DirectToFieldMapping();
directtofieldmapping1.setAttributeName("income");
directtofieldmapping1.setIsReadOnly(false);
directtofieldmapping1.setGetMethodName("getIncome");
directtofieldmapping1.setSetMethodName("setIncome");
directtofieldmapping1.setFieldName("INCOME");
descriptor.addMapping(directtofieldmapping1);
// SECTION: DIRECTTOFIELDMAPPING
org.eclipse.persistence.mappings.DirectToFieldMapping directtofieldmapping2 = new org.eclipse.persistence.mappings.DirectToFieldMapping();
directtofieldmapping2.setAttributeName("id");
directtofieldmapping2.setIsReadOnly(false);
directtofieldmapping2.setGetMethodName("getId");
directtofieldmapping2.setSetMethodName("setId");
directtofieldmapping2.setFieldName("CUSTOMER_ID");
descriptor.addMapping(directtofieldmapping2);
org.eclipse.persistence.mappings.OneToOneMapping oneToOnemapping = new org.eclipse.persistence.mappings.OneToOneMapping();
oneToOnemapping.setAttributeName("company");
oneToOnemapping.setIsReadOnly(false);
oneToOnemapping.setIsPrivateOwned(true);
oneToOnemapping.setUsesIndirection(true);
oneToOnemapping.setReferenceClass(Company.class);
oneToOnemapping.addForeignKeyFieldName("CUSTOMER.COMPANY_ID", "COMPANY_AGG.COMPANY_ID");
descriptor.addMapping(oneToOnemapping);
addDescriptor(descriptor);
}
protected void buildDependantDescriptor() {
org.eclipse.persistence.descriptors.RelationalDescriptor descriptor = new org.eclipse.persistence.descriptors.RelationalDescriptor();
// SECTION: DESCRIPTOR
descriptor.setJavaClass(org.eclipse.persistence.testing.models.aggregate.Dependant.class);
Vector vector = new Vector();
vector.addElement("DEPENDANT");
descriptor.setTableNames(vector);
descriptor.addPrimaryKeyFieldName("CUSTOMER_ID");
descriptor.addPrimaryKeyFieldName("FIRST_NAME");
// SECTION: PROPERTIES
descriptor.descriptorIsAggregateCollection();
// 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("firstName");
directtofieldmapping.setIsReadOnly(false);
directtofieldmapping.setGetMethodName("getFirstName");
directtofieldmapping.setSetMethodName("setFirstName");
directtofieldmapping.setFieldName("FIRST_NAME");
descriptor.addMapping(directtofieldmapping);
// SECTION: DIRECTTOFIELDMAPPING
org.eclipse.persistence.mappings.DirectToFieldMapping directtofieldmapping1 = new org.eclipse.persistence.mappings.DirectToFieldMapping();
directtofieldmapping1.setAttributeName("age");
directtofieldmapping1.setIsReadOnly(false);
directtofieldmapping1.setGetMethodName("getAge");
directtofieldmapping1.setSetMethodName("setAge");
directtofieldmapping1.setFieldName("AGE");
descriptor.addMapping(directtofieldmapping1);
addDescriptor(descriptor);
}
protected void buildEmployeeDescriptor() {
org.eclipse.persistence.descriptors.RelationalDescriptor descriptor = new org.eclipse.persistence.descriptors.RelationalDescriptor();
// SECTION: DESCRIPTOR
descriptor.setJavaClass(org.eclipse.persistence.testing.models.aggregate.Employee.class);
Vector vector = new Vector();
vector.addElement("AGG_EMP");
descriptor.setTableNames(vector);
descriptor.addPrimaryKeyFieldName("AGG_EMP.EM_ADD");
descriptor.addPrimaryKeyFieldName("AGG_EMP.EM_ID");
// SECTION: PROPERTIES
descriptor.setSequenceNumberName("SEQ");
descriptor.setSequenceNumberFieldName("EM_ID");
// SECTION: COPY POLICY
descriptor.createCopyPolicy("constructor");
// SECTION: INSTANTIATION POLICY
descriptor.createInstantiationPolicy("constructor");
// SECTION: AGGREGATEOBJECTMAPPING
org.eclipse.persistence.mappings.AggregateObjectMapping aggregateobjectmapping = new org.eclipse.persistence.mappings.AggregateObjectMapping();
// changed attribute name from "addressDescription" to "address" to reproduce bug 3566341,
// which requires the same name for attribute mapped as an aggregate and an attribute
// on the aggregate mapped 1 to 1.
aggregateobjectmapping.setAttributeName("address");
aggregateobjectmapping.setIsReadOnly(false);
aggregateobjectmapping.setGetMethodName("getAddressDescription");
aggregateobjectmapping.setSetMethodName("setAddressDescription");
aggregateobjectmapping.setReferenceClass(org.eclipse.persistence.testing.models.aggregate.AddressDescription.class);
aggregateobjectmapping.setIsNullAllowed(false);
descriptor.addMapping(aggregateobjectmapping);
// SECTION: AGGREGATEOBJECTMAPPING
org.eclipse.persistence.mappings.AggregateObjectMapping aggregateobjectmapping1 = new org.eclipse.persistence.mappings.AggregateObjectMapping();
aggregateobjectmapping1.setAttributeName("projectDescription");
aggregateobjectmapping1.setIsReadOnly(false);
aggregateobjectmapping1.setGetMethodName("getProjectDescription");
aggregateobjectmapping1.setSetMethodName("setProjectDescription");
aggregateobjectmapping1.setReferenceClass(org.eclipse.persistence.testing.models.aggregate.ProjectDescription.class);
aggregateobjectmapping1.setIsNullAllowed(false);
descriptor.addMapping(aggregateobjectmapping1);
// SECTION: DIRECTTOFIELDMAPPING
org.eclipse.persistence.mappings.DirectToFieldMapping directtofieldmapping = new org.eclipse.persistence.mappings.DirectToFieldMapping();
directtofieldmapping.setAttributeName("firstName");
directtofieldmapping.setIsReadOnly(false);
directtofieldmapping.setGetMethodName("getFirstName");
directtofieldmapping.setSetMethodName("setFirstName");
directtofieldmapping.setFieldName("AGG_EMP.EM_FNAME");
descriptor.addMapping(directtofieldmapping);
// SECTION: DIRECTTOFIELDMAPPING
org.eclipse.persistence.mappings.DirectToFieldMapping directtofieldmapping1 = new org.eclipse.persistence.mappings.DirectToFieldMapping();
directtofieldmapping1.setAttributeName("lastName");
directtofieldmapping1.setIsReadOnly(false);
directtofieldmapping1.setGetMethodName("getLastName");
directtofieldmapping1.setSetMethodName("setLastName");
directtofieldmapping1.setFieldName("AGG_EMP.EM_LNAME");
descriptor.addMapping(directtofieldmapping1);
addDescriptor(descriptor);
}
protected void buildEvaluationClientDescriptor() {
org.eclipse.persistence.descriptors.RelationalDescriptor descriptor = new org.eclipse.persistence.descriptors.RelationalDescriptor();
// SECTION: DESCRIPTOR
descriptor.setJavaClass(org.eclipse.persistence.testing.models.aggregate.EvaluationClient.class);
descriptor.getDescriptorInheritancePolicy().setParentClass(org.eclipse.persistence.testing.models.aggregate.Client.class);
Vector vector = new Vector();
vector.addElement("AGG_ECNT");
descriptor.setTableNames(vector);
descriptor.addPrimaryKeyFieldName("AGG_ECNT.CL_ID");
// SECTION: PROPERTIES
descriptor.getDescriptorInheritancePolicy().setShouldReadSubclasses(true);
// SECTION: COPY POLICY
descriptor.createCopyPolicy("constructor");
// SECTION: INSTANTIATION POLICY
descriptor.createInstantiationPolicy("constructor");
// SECTION: AGGREGATEOBJECTMAPPING
org.eclipse.persistence.mappings.AggregateObjectMapping aggregateobjectmapping = new org.eclipse.persistence.mappings.AggregateObjectMapping();
aggregateobjectmapping.setAttributeName("evaluationPeriod");
aggregateobjectmapping.setIsReadOnly(false);
aggregateobjectmapping.setReferenceClass(org.eclipse.persistence.testing.models.aggregate.Period.class);
aggregateobjectmapping.setIsNullAllowed(false);
aggregateobjectmapping.addFieldNameTranslation("AGG_ECNT.EV_EDATE", "AGG_EMP.EM_EDATE");
aggregateobjectmapping.addFieldNameTranslation("AGG_ECNT.EV_SDATE", "AGG_EMP.EM_SDATE");
descriptor.addMapping(aggregateobjectmapping);
addDescriptor(descriptor);
}
protected void buildGolfClubDescriptor() {
org.eclipse.persistence.descriptors.RelationalDescriptor descriptor = new org.eclipse.persistence.descriptors.RelationalDescriptor();
descriptor.setJavaClass(org.eclipse.persistence.testing.models.aggregate.GolfClub.class);
descriptor.addTableName("GOLF_CLUB");
descriptor.addPrimaryKeyFieldName("GOLF_CLUB.ID");
// Descriptor properties.
descriptor.useSoftCacheWeakIdentityMap();
descriptor.setIdentityMapSize(100);
descriptor.setAlias("GolfClub");
descriptor.setSequenceNumberName("SEQ");
descriptor.setSequenceNumberFieldName("ID");
// Query manager.
descriptor.getDescriptorQueryManager().checkCacheForDoesExist();
//Named Queries
// Event manager.
// Mappings.
org.eclipse.persistence.mappings.DirectToFieldMapping idMapping = new org.eclipse.persistence.mappings.DirectToFieldMapping();
idMapping.setAttributeName("id");
idMapping.setGetMethodName("getId");
idMapping.setSetMethodName("setId");
idMapping.setFieldName("GOLF_CLUB.ID");
descriptor.addMapping(idMapping);
org.eclipse.persistence.mappings.AggregateObjectMapping shaftMapping = new org.eclipse.persistence.mappings.AggregateObjectMapping();
shaftMapping.setAttributeName("shaft");
shaftMapping.setGetMethodName("getShaft");
shaftMapping.setSetMethodName("setShaft");
shaftMapping.setReferenceClass(org.eclipse.persistence.testing.models.aggregate.GolfClubShaft.class);
shaftMapping.setIsNullAllowed(false);
shaftMapping.addFieldNameTranslation("GOLF_CLUB.SHAFT_STIFFNESS", "SHAFT_STIFFNESS");
// manual query key in aggregate
shaftMapping.addFieldNameTranslation("GOLF_CLUB.SHAFT_STIFFNESS", "QUERY_KEY flexibility");
descriptor.addMapping(shaftMapping);
org.eclipse.persistence.mappings.OneToOneMapping manufacturerMapping = new org.eclipse.persistence.mappings.OneToOneMapping();
manufacturerMapping.setAttributeName("manufacturer");
manufacturerMapping.setGetMethodName("getManufacturer");
manufacturerMapping.setSetMethodName("setManufacturer");
manufacturerMapping.setReferenceClass(org.eclipse.persistence.testing.models.aggregate.Manufacturer.class);
manufacturerMapping.dontUseIndirection();
manufacturerMapping.addForeignKeyFieldName("GOLF_CLUB.MANUFACTURER_ID", "MANUFACTURER.ID");
descriptor.addMapping(manufacturerMapping);
addDescriptor(descriptor);
}
protected void buildGolfClubShaftDescriptor() {
org.eclipse.persistence.descriptors.RelationalDescriptor descriptor = new org.eclipse.persistence.descriptors.RelationalDescriptor();
descriptor.descriptorIsAggregate();
descriptor.setJavaClass(org.eclipse.persistence.testing.models.aggregate.GolfClubShaft.class);
// Descriptor properties.
descriptor.setAlias("GolfClubShaft");
// Query keys.
descriptor.addDirectQueryKey("flexibility", "QUERY_KEY flexibility");
// Query manager.
//Named Queries
// Event manager.
// Mappings.
org.eclipse.persistence.mappings.DirectToFieldMapping stiffnessRatingMapping = new org.eclipse.persistence.mappings.DirectToFieldMapping();
stiffnessRatingMapping.setAttributeName("stiffnessRating");
stiffnessRatingMapping.setFieldName("SHAFT_STIFFNESS");
descriptor.addMapping(stiffnessRatingMapping);
org.eclipse.persistence.mappings.OneToOneMapping manufacturerMapping = new org.eclipse.persistence.mappings.OneToOneMapping();
manufacturerMapping.setAttributeName("manufacturer");
manufacturerMapping.setReferenceClass(org.eclipse.persistence.testing.models.aggregate.Manufacturer.class);
manufacturerMapping.dontUseIndirection();
manufacturerMapping.addForeignKeyFieldName("GOLF_CLUB.SHAFT_MANUFACTURER_ID", "MANUFACTURER.ID");
descriptor.addMapping(manufacturerMapping);
addDescriptor(descriptor);
}
/**
* An AggregateCollection where the primary key is actually the primary
* key of its parent's parent.
* This tests a case where a House must look beyond its direct owner
* for a primary key.
*/
protected void buildHouseDescriptor() {
org.eclipse.persistence.descriptors.RelationalDescriptor descriptor = new org.eclipse.persistence.descriptors.RelationalDescriptor();
// SECTION: DESCRIPTOR
descriptor.setJavaClass(org.eclipse.persistence.testing.models.aggregate.House.class);
Vector vector = new Vector();
vector.addElement("HOUSE");
descriptor.setTableNames(vector);
descriptor.addPrimaryKeyFieldName("AGENT_ID");
descriptor.addPrimaryKeyFieldName("LOCATION");
// SECTION: PROPERTIES
descriptor.descriptorIsAggregateCollection();
descriptor.useTimestampLocking("VERSION", false);
descriptor.getDescriptorInheritancePolicy().setShouldReadSubclasses(true);
descriptor.getDescriptorInheritancePolicy().setClassIndicatorFieldName("TYPE");
descriptor.getDescriptorInheritancePolicy().setShouldUseClassNameAsIndicator(false);
descriptor.getDescriptorInheritancePolicy().addClassIndicator(org.eclipse.persistence.testing.models.aggregate.House.class, "H");
descriptor.getDescriptorInheritancePolicy().addClassIndicator(org.eclipse.persistence.testing.models.aggregate.TownHouse.class, "TH");
descriptor.getDescriptorInheritancePolicy().addClassIndicator(org.eclipse.persistence.testing.models.aggregate.SingleHouse.class, "SH");
// SECTION: COPY POLICY
descriptor.createCopyPolicy("constructor");
// SECTION: INSTANTIATION POLICY
descriptor.createInstantiationPolicy("constructor");
// SECTION: AGGREGATECOLLECTIONMAPPING
org.eclipse.persistence.mappings.AggregateCollectionMapping aggregatecollectionmapping = new org.eclipse.persistence.mappings.AggregateCollectionMapping();
aggregatecollectionmapping.setAttributeName("sellingPoints");
aggregatecollectionmapping.setIsReadOnly(false);
aggregatecollectionmapping.setUsesIndirection(false);
aggregatecollectionmapping.useBatchReading();
aggregatecollectionmapping.setGetMethodName("getSellingPoints");
aggregatecollectionmapping.setSetMethodName("setSellingPoints");
aggregatecollectionmapping.setReferenceClass(org.eclipse.persistence.testing.models.aggregate.SellingPoint.class);
aggregatecollectionmapping.addTargetForeignKeyFieldName("SELLING_POINT.AGENT_ID", "HOUSE.AGENT_ID");
aggregatecollectionmapping.addTargetForeignKeyFieldName("SELLING_POINT.LOCATION", "HOUSE.LOCATION");
descriptor.addMapping(aggregatecollectionmapping);
// SECTION: AGGREGATEOBJECTMAPPING
// For bug 2863721 test having an AggregateObject inside an
// AggregateCollection. S.M.
org.eclipse.persistence.mappings.AggregateObjectMapping aggregateobjectmapping = new org.eclipse.persistence.mappings.AggregateObjectMapping();
aggregateobjectmapping.setAttributeName("insuranceId");
aggregateobjectmapping.setIsReadOnly(false);
aggregateobjectmapping.setGetMethodName("getInsuranceId");
aggregateobjectmapping.setSetMethodName("setInsuranceId");
aggregateobjectmapping.setReferenceClass(org.eclipse.persistence.testing.models.aggregate.Oid.class);
aggregateobjectmapping.addFieldNameTranslation("HOUSE.INS_ID", "ID");
aggregateobjectmapping.setIsNullAllowed(false);
descriptor.addMapping(aggregateobjectmapping);
// SECTION: DIRECTTOFIELDMAPPING
org.eclipse.persistence.mappings.DirectToFieldMapping directtofieldmapping = new org.eclipse.persistence.mappings.DirectToFieldMapping();
directtofieldmapping.setAttributeName("location");
directtofieldmapping.setIsReadOnly(false);
directtofieldmapping.setGetMethodName("getLocation");
directtofieldmapping.setSetMethodName("setLocation");
directtofieldmapping.setFieldName("LOCATION");
descriptor.addMapping(directtofieldmapping);
// SECTION: DIRECTTOFIELDMAPPING
org.eclipse.persistence.mappings.DirectToFieldMapping directtofieldmapping2 = new org.eclipse.persistence.mappings.DirectToFieldMapping();
directtofieldmapping2.setAttributeName("descriptions");
directtofieldmapping2.setIsReadOnly(false);
directtofieldmapping2.setGetMethodName("getDescriptions");
directtofieldmapping2.setSetMethodName("setDescriptions");
directtofieldmapping2.setFieldName("DESCRIPTIONS");
descriptor.addMapping(directtofieldmapping2);
// SECTION: DIRECTTOFIELDMAPPING
org.eclipse.persistence.mappings.DirectToFieldMapping directtofieldmapping3 = new org.eclipse.persistence.mappings.DirectToFieldMapping();
directtofieldmapping3.setAttributeName("version");
directtofieldmapping3.setIsReadOnly(false);
directtofieldmapping3.setGetMethodName("getVersion");
directtofieldmapping3.setSetMethodName("setVersion");
directtofieldmapping3.setFieldName("VERSION");
descriptor.addMapping(directtofieldmapping3);
addDescriptor(descriptor);
}
protected void buildJobDescriptor() {
org.eclipse.persistence.descriptors.RelationalDescriptor descriptor = new org.eclipse.persistence.descriptors.RelationalDescriptor();
// SECTION: DESCRIPTOR
descriptor.setJavaClass(org.eclipse.persistence.testing.models.aggregate.Job.class);
descriptor.setAmendmentClass(AggregateProject.class);
descriptor.setAmendmentMethodName("amendJobDescriptor");
Vector vector = new Vector();
vector.addElement("WORKER");
descriptor.setTableNames(vector);
// SECTION: PROPERTIES
descriptor.descriptorIsAggregate();
// 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("title");
directtofieldmapping.setIsReadOnly(false);
directtofieldmapping.setGetMethodName("getTitle");
directtofieldmapping.setSetMethodName("setTitle");
directtofieldmapping.setFieldName("WORKER.TITLE");
descriptor.addMapping(directtofieldmapping);
// SECTION: TRANSFORMATIONMAPPING
org.eclipse.persistence.mappings.TransformationMapping transformationmapping = new org.eclipse.persistence.mappings.TransformationMapping();
transformationmapping.setAttributeName("normalHours");
transformationmapping.setIsReadOnly(false);
transformationmapping.setUsesIndirection(false);
transformationmapping.setGetMethodName("getNormalHours");
transformationmapping.setSetMethodName("setNormalHours");
transformationmapping.setAttributeTransformation("getNormalHoursFromRow");
DatabaseField field = new DatabaseField("WORKER.END_TIME");
field.setType(java.sql.Time.class);
transformationmapping.addFieldTransformation(field, "getEndTime");
field = new DatabaseField("WORKER.START_TIME");
field.setType(java.sql.Time.class);
transformationmapping.addFieldTransformation(field, "getStartTime");
descriptor.addMapping(transformationmapping);
addDescriptor(descriptor);
}
/**
* The field types must be set in an amendment as the XML format does not support types.
*/
public static void amendJobDescriptor(ClassDescriptor descriptor) {
TransformationMapping transformationmapping = (TransformationMapping)descriptor.getMappingForAttributeName("normalHours");
transformationmapping.getFieldTransformations().clear();
DatabaseField field = new DatabaseField("WORKER.END_TIME");
field.setType(java.sql.Time.class);
transformationmapping.addFieldTransformation(field, "getEndTime");
field = new DatabaseField("WORKER.START_TIME");
field.setType(java.sql.Time.class);
transformationmapping.addFieldTransformation(field, "getStartTime");
}
/**
* 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 buildLanguageDescriptor() {
org.eclipse.persistence.descriptors.RelationalDescriptor descriptor = new org.eclipse.persistence.descriptors.RelationalDescriptor();
// SECTION: DESCRIPTOR
descriptor.setJavaClass(org.eclipse.persistence.testing.models.aggregate.Language.class);
Vector vector = new Vector();
vector.addElement("AGG_LAN");
descriptor.setTableNames(vector);
descriptor.addPrimaryKeyFieldName("AGG_LAN.ID");
// SECTION: PROPERTIES
descriptor.getDescriptorQueryManager().checkDatabaseForDoesExist();// A test depends on this...
descriptor.setSequenceNumberName("SEQ");
descriptor.setSequenceNumberFieldName("ID");
// 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("id");
directtofieldmapping.setIsReadOnly(false);
directtofieldmapping.setFieldName("AGG_LAN.ID");
descriptor.addMapping(directtofieldmapping);
// SECTION: DIRECTTOFIELDMAPPING
org.eclipse.persistence.mappings.DirectToFieldMapping directtofieldmapping1 = new org.eclipse.persistence.mappings.DirectToFieldMapping();
directtofieldmapping1.setAttributeName("language");
directtofieldmapping1.setIsReadOnly(false);
directtofieldmapping1.setFieldName("AGG_LAN.LANG");
descriptor.addMapping(directtofieldmapping1);
addDescriptor(descriptor);
}
protected void buildManufacturerDescriptor() {
org.eclipse.persistence.descriptors.RelationalDescriptor descriptor = new org.eclipse.persistence.descriptors.RelationalDescriptor();
descriptor.setJavaClass(org.eclipse.persistence.testing.models.aggregate.Manufacturer.class);
descriptor.addTableName("MANUFACTURER");
descriptor.addPrimaryKeyFieldName("MANUFACTURER.ID");
// Descriptor properties.
descriptor.useSoftCacheWeakIdentityMap();
descriptor.setIdentityMapSize(100);
descriptor.setAlias("Manufacturer");
descriptor.setSequenceNumberName("SEQ");
descriptor.setSequenceNumberFieldName("ID");
// Query manager.
descriptor.getDescriptorQueryManager().checkCacheForDoesExist();
//Named Queries
// Event manager.
// Mappings.
org.eclipse.persistence.mappings.DirectToFieldMapping idMapping = new org.eclipse.persistence.mappings.DirectToFieldMapping();
idMapping.setAttributeName("id");
idMapping.setGetMethodName("getId");
idMapping.setSetMethodName("setId");
idMapping.setFieldName("MANUFACTURER.ID");
descriptor.addMapping(idMapping);
org.eclipse.persistence.mappings.DirectToFieldMapping nameMapping = new org.eclipse.persistence.mappings.DirectToFieldMapping();
nameMapping.setAttributeName("name");
nameMapping.setGetMethodName("getName");
nameMapping.setSetMethodName("setName");
nameMapping.setFieldName("MANUFACTURER.NAME");
descriptor.addMapping(nameMapping);
addDescriptor(descriptor);
}
/**
* This method is used to test shared aggregate as part of prim. key using Computer and Client Objects
*/
protected void buildOidDescriptor() {
org.eclipse.persistence.descriptors.RelationalDescriptor descriptor = new org.eclipse.persistence.descriptors.RelationalDescriptor();
// SECTION: DESCRIPTOR
descriptor.setJavaClass(org.eclipse.persistence.testing.models.aggregate.Oid.class);
descriptor.descriptorIsAggregate();
// SECTION: PROPERTIES
// SECTION: COPY POLICY
descriptor.createCopyPolicy("constructor");
// SECTION: INSTANTIATION POLICY
descriptor.createInstantiationPolicy("constructor");
// SECTION: DIRECTMAPPING
descriptor.addDirectMapping("id", "ID");
addDescriptor(descriptor);
}
protected void buildPeriodDescriptionDescriptor() {
org.eclipse.persistence.descriptors.RelationalDescriptor descriptor = new org.eclipse.persistence.descriptors.RelationalDescriptor();
// SECTION: DESCRIPTOR
descriptor.setJavaClass(org.eclipse.persistence.testing.models.aggregate.PeriodDescription.class);
Vector vector = new Vector();
vector.addElement("AGG_EMP");
descriptor.setTableNames(vector);
// SECTION: PROPERTIES
descriptor.descriptorIsAggregate();
// SECTION: COPY POLICY
descriptor.createCopyPolicy("constructor");
// SECTION: INSTANTIATION POLICY
descriptor.createInstantiationPolicy("constructor");
// SECTION: AGGREGATEOBJECTMAPPING
org.eclipse.persistence.mappings.AggregateObjectMapping aggregateobjectmapping = new org.eclipse.persistence.mappings.AggregateObjectMapping();
aggregateobjectmapping.setAttributeName("endPeriod");
aggregateobjectmapping.setIsReadOnly(false);
aggregateobjectmapping.setReferenceClass(org.eclipse.persistence.testing.models.aggregate.Period.class);
aggregateobjectmapping.setIsNullAllowed(false);
aggregateobjectmapping.addFieldNameTranslation("AGG_EMP.EM_EEDATE", "AGG_EMP.EM_EDATE");
aggregateobjectmapping.addFieldNameTranslation("AGG_EMP.EM_ESDATE", "AGG_EMP.EM_SDATE");
descriptor.addMapping(aggregateobjectmapping);
// SECTION: AGGREGATEOBJECTMAPPING
org.eclipse.persistence.mappings.AggregateObjectMapping aggregateobjectmapping1 = new org.eclipse.persistence.mappings.AggregateObjectMapping();
aggregateobjectmapping1.setAttributeName("period");
aggregateobjectmapping1.setIsReadOnly(false);
aggregateobjectmapping1.setGetMethodName("getPeriod");
aggregateobjectmapping1.setSetMethodName("setPeriod");
aggregateobjectmapping1.setReferenceClass(org.eclipse.persistence.testing.models.aggregate.Period.class);
aggregateobjectmapping1.setIsNullAllowed(false);
descriptor.addMapping(aggregateobjectmapping1);
addDescriptor(descriptor);
}
protected void buildPeriodDescriptor() {
org.eclipse.persistence.descriptors.RelationalDescriptor descriptor = new org.eclipse.persistence.descriptors.RelationalDescriptor();
// SECTION: DESCRIPTOR
descriptor.setJavaClass(org.eclipse.persistence.testing.models.aggregate.Period.class);
Vector vector = new Vector();
vector.addElement("AGG_EMP");
descriptor.setTableNames(vector);
// SECTION: PROPERTIES
descriptor.descriptorIsAggregate();
// 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("endDate");
directtofieldmapping.setIsReadOnly(false);
directtofieldmapping.setFieldName("AGG_EMP.EM_EDATE");
descriptor.addMapping(directtofieldmapping);
// SECTION: DIRECTTOFIELDMAPPING
org.eclipse.persistence.mappings.DirectToFieldMapping directtofieldmapping1 = new org.eclipse.persistence.mappings.DirectToFieldMapping();
directtofieldmapping1.setAttributeName("startDate");
directtofieldmapping1.setIsReadOnly(false);
directtofieldmapping1.setFieldName("AGG_EMP.EM_SDATE");
descriptor.addMapping(directtofieldmapping1);
addDescriptor(descriptor);
}
protected void buildProjectDescriptionDescriptor() {
org.eclipse.persistence.descriptors.RelationalDescriptor descriptor = new org.eclipse.persistence.descriptors.RelationalDescriptor();
// SECTION: DESCRIPTOR
descriptor.setJavaClass(org.eclipse.persistence.testing.models.aggregate.ProjectDescription.class);
Vector vector = new Vector();
vector.addElement("AGG_EMP");
descriptor.setTableNames(vector);
// SECTION: PROPERTIES
descriptor.descriptorIsAggregate();
// 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("description");
directtofieldmapping.setIsReadOnly(false);
directtofieldmapping.setGetMethodName("getDescription");
directtofieldmapping.setSetMethodName("setDescription");
directtofieldmapping.setFieldName("AGG_EMP.EM_PDESC");
descriptor.addMapping(directtofieldmapping);
// SECTION: DIRECTTOFIELDMAPPING
org.eclipse.persistence.mappings.DirectToFieldMapping directtofieldmapping1 = new org.eclipse.persistence.mappings.DirectToFieldMapping();
directtofieldmapping1.setAttributeName("id");
directtofieldmapping1.setIsReadOnly(false);
directtofieldmapping1.setFieldName("AGG_EMP.EM_ID");
descriptor.addMapping(directtofieldmapping1);
// SECTION: MANYTOMANYMAPPING
org.eclipse.persistence.mappings.ManyToManyMapping manytomanymapping = new org.eclipse.persistence.mappings.ManyToManyMapping();
manytomanymapping.setAttributeName("languages");
manytomanymapping.setIsReadOnly(false);
manytomanymapping.setUsesIndirection(true);
manytomanymapping.setReferenceClass(org.eclipse.persistence.testing.models.aggregate.Language.class);
manytomanymapping.setIsPrivateOwned(false);
manytomanymapping.setRelationTableName("EMP_LAN");
manytomanymapping.addSourceRelationKeyFieldName("EMP_LAN.EMP_ID", "AGG_EMP.EM_ID");
manytomanymapping.addTargetRelationKeyFieldName("EMP_LAN.LAN_ID", "AGG_LAN.ID");
descriptor.addMapping(manytomanymapping);
// SECTION: ONETOMANYMAPPING
org.eclipse.persistence.mappings.OneToManyMapping onetomanymapping = new org.eclipse.persistence.mappings.OneToManyMapping();
onetomanymapping.setAttributeName("responsibilities");
onetomanymapping.setIsReadOnly(false);
onetomanymapping.setUsesIndirection(true);
onetomanymapping.setReferenceClass(org.eclipse.persistence.testing.models.aggregate.Responsibility.class);
onetomanymapping.setIsPrivateOwned(true);
onetomanymapping.addTargetForeignKeyFieldName("AGG_RES.EMP_ID", "AGG_EMP.EM_ID");
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(true);
onetoonemapping.setReferenceClass(org.eclipse.persistence.testing.models.aggregate.Computer.class);
onetoonemapping.setIsPrivateOwned(true);
onetoonemapping.addForeignKeyFieldName("AGG_EMP.COMP_ID", "AGG_COM.ID");
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 buildResponsibilityDescriptor() {
org.eclipse.persistence.descriptors.RelationalDescriptor descriptor = new org.eclipse.persistence.descriptors.RelationalDescriptor();
// SECTION: DESCRIPTOR
descriptor.setJavaClass(org.eclipse.persistence.testing.models.aggregate.Responsibility.class);
Vector vector = new Vector();
vector.addElement("AGG_RES");
descriptor.setTableNames(vector);
descriptor.addPrimaryKeyFieldName("AGG_RES.ID");
// SECTION: PROPERTIES
descriptor.setSequenceNumberName("SEQ");
descriptor.setSequenceNumberFieldName("ID");
// 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("id");
directtofieldmapping.setIsReadOnly(false);
directtofieldmapping.setFieldName("AGG_RES.ID");
descriptor.addMapping(directtofieldmapping);
// SECTION: DIRECTTOFIELDMAPPING
org.eclipse.persistence.mappings.DirectToFieldMapping directtofieldmapping1 = new org.eclipse.persistence.mappings.DirectToFieldMapping();
directtofieldmapping1.setAttributeName("responsibility");
directtofieldmapping1.setIsReadOnly(false);
directtofieldmapping1.setFieldName("AGG_RES.DUTY");
descriptor.addMapping(directtofieldmapping1);
// SECTION: ONETOONEMAPPING
org.eclipse.persistence.mappings.OneToOneMapping onetoonemapping = new org.eclipse.persistence.mappings.OneToOneMapping();
onetoonemapping.setAttributeName("employee");
onetoonemapping.setIsReadOnly(false);
onetoonemapping.setUsesIndirection(true);
onetoonemapping.setReferenceClass(org.eclipse.persistence.testing.models.aggregate.Employee.class);
onetoonemapping.setIsPrivateOwned(false);
onetoonemapping.addForeignKeyFieldName("AGG_RES.EMP_ID", "AGG_EMP.EM_ID");
descriptor.addMapping(onetoonemapping);
addDescriptor(descriptor);
}
// CR#2896
protected void buildRoomSellingPointDescriptor() {
org.eclipse.persistence.descriptors.RelationalDescriptor descriptor = new org.eclipse.persistence.descriptors.RelationalDescriptor();
// SECTION: DESCRIPTOR
descriptor.setJavaClass(org.eclipse.persistence.testing.models.aggregate.RoomSellingPoint.class);
descriptor.getDescriptorInheritancePolicy().setParentClass(org.eclipse.persistence.testing.models.aggregate.SellingPoint.class);
Vector vector = new Vector();
vector.addElement("SELLING_POINT");
descriptor.setTableNames(vector);
descriptor.addPrimaryKeyFieldName("SELLING_POINT.AGENT_ID");
descriptor.addPrimaryKeyFieldName("SELLING_POINT.LOCATION");
descriptor.addPrimaryKeyFieldName("SELLING_POINT.AREA");
// SECTION: PROPERTIES
descriptor.descriptorIsAggregateCollection();
// 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("squareFeet");
directtofieldmapping.setIsReadOnly(false);
directtofieldmapping.setGetMethodName("getSquareFeet");
directtofieldmapping.setSetMethodName("setSquareFeet");
directtofieldmapping.setFieldName("SELLING_POINT.SQUARE_FEET");
descriptor.addMapping(directtofieldmapping);
addDescriptor(descriptor);
}
protected void buildSellingPointDescriptor() {
org.eclipse.persistence.descriptors.RelationalDescriptor descriptor = new org.eclipse.persistence.descriptors.RelationalDescriptor();
// SECTION: DESCRIPTOR
descriptor.setJavaClass(org.eclipse.persistence.testing.models.aggregate.SellingPoint.class);
Vector vector = new Vector();
vector.addElement("SELLING_POINT");
descriptor.setTableNames(vector);
descriptor.addPrimaryKeyFieldName("SELLING_POINT.AGENT_ID");
descriptor.addPrimaryKeyFieldName("SELLING_POINT.LOCATION");
descriptor.addPrimaryKeyFieldName("SELLING_POINT.AREA");
// SECTION: PROPERTIES
descriptor.descriptorIsAggregateCollection();
// CR#2896
descriptor.getDescriptorInheritancePolicy().setShouldReadSubclasses(true);
descriptor.getDescriptorInheritancePolicy().setClassIndicatorFieldName("TYPE");
descriptor.getDescriptorInheritancePolicy().setShouldUseClassNameAsIndicator(false);
descriptor.getDescriptorInheritancePolicy().addClassIndicator(org.eclipse.persistence.testing.models.aggregate.SellingPoint.class, "SP");
descriptor.getDescriptorInheritancePolicy().addClassIndicator(org.eclipse.persistence.testing.models.aggregate.RoomSellingPoint.class, "R");
// 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("area");
directtofieldmapping.setIsReadOnly(false);
directtofieldmapping.setGetMethodName("getArea");
directtofieldmapping.setSetMethodName("setArea");
directtofieldmapping.setFieldName("AREA");
descriptor.addMapping(directtofieldmapping);
// SECTION: DIRECTTOFIELDMAPPING
org.eclipse.persistence.mappings.DirectToFieldMapping directtofieldmapping2 = new org.eclipse.persistence.mappings.DirectToFieldMapping();
directtofieldmapping2.setAttributeName("description");
directtofieldmapping2.setIsReadOnly(false);
directtofieldmapping2.setGetMethodName("getDescription");
directtofieldmapping2.setSetMethodName("setDescription");
directtofieldmapping2.setFieldName("SELLING_POINT.DESCRIPTION");
descriptor.addMapping(directtofieldmapping2);
addDescriptor(descriptor);
}
protected void buildSingleHouseDescriptor() {
org.eclipse.persistence.descriptors.RelationalDescriptor descriptor = new org.eclipse.persistence.descriptors.RelationalDescriptor();
// SECTION: DESCRIPTOR
descriptor.setJavaClass(org.eclipse.persistence.testing.models.aggregate.SingleHouse.class);
descriptor.getDescriptorInheritancePolicy().setParentClass(org.eclipse.persistence.testing.models.aggregate.House.class);
Vector vector = new Vector();
vector.addElement("SINGLE_HOUSE");
descriptor.setTableNames(vector);
descriptor.addPrimaryKeyFieldName("SINGLE_HOUSE.AGENT_ID");
descriptor.addPrimaryKeyFieldName("SINGLE_HOUSE.LOCATION");
// SECTION: PROPERTIES
descriptor.descriptorIsAggregateCollection();
// 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("numberOfGarages");
directtofieldmapping.setIsReadOnly(false);
directtofieldmapping.setGetMethodName("getNumberOfGarages");
directtofieldmapping.setSetMethodName("setNumberOfGarages");
directtofieldmapping.setFieldName("SINGLE_HOUSE.GARAGE");
descriptor.addMapping(directtofieldmapping);
addDescriptor(descriptor);
}
protected void buildTownHouseDescriptor() {
org.eclipse.persistence.descriptors.RelationalDescriptor descriptor = new org.eclipse.persistence.descriptors.RelationalDescriptor();
// SECTION: DESCRIPTOR
descriptor.setJavaClass(org.eclipse.persistence.testing.models.aggregate.TownHouse.class);
descriptor.getDescriptorInheritancePolicy().setParentClass(org.eclipse.persistence.testing.models.aggregate.House.class);
Vector vector = new Vector();
vector.addElement("HOUSE");
descriptor.setTableNames(vector);
descriptor.addPrimaryKeyFieldName("HOUSE.AGENT_ID");
descriptor.addPrimaryKeyFieldName("HOUSE.LOCATION");
// SECTION: PROPERTIES
descriptor.descriptorIsAggregateCollection();
// SECTION: COPY POLICY
descriptor.createCopyPolicy("constructor");
// SECTION: INSTANTIATION POLICY
descriptor.createInstantiationPolicy("constructor");
addDescriptor(descriptor);
}
/**
* This method was created in VisualAge.
*/
protected void buildTransportDescriptor() {
org.eclipse.persistence.descriptors.RelationalDescriptor descriptor = new org.eclipse.persistence.descriptors.RelationalDescriptor();
// SECTION: DESCRIPTOR
descriptor.setJavaClass(org.eclipse.persistence.testing.models.aggregate.Transport.class);
Vector vector = new Vector();
vector.addElement("AGGVEHICLE");
descriptor.setTableNames(vector);
descriptor.addPrimaryKeyFieldName("AGGVEHICLE.ID");
// SECTION: COPY POLICY
descriptor.createCopyPolicy("constructor");
// SECTION: INSTANTIATION POLICY
descriptor.createInstantiationPolicy("constructor");
// SECTION: AGGREGATEOBJECTMAPPING
org.eclipse.persistence.mappings.AggregateObjectMapping aggregateobjectmapping = new org.eclipse.persistence.mappings.AggregateObjectMapping();
aggregateobjectmapping.setAttributeName("vehicle");
aggregateobjectmapping.setIsReadOnly(false);
aggregateobjectmapping.setGetMethodName("getVehicle");
aggregateobjectmapping.setSetMethodName("setVehicle");
aggregateobjectmapping.setReferenceClass(org.eclipse.persistence.testing.models.aggregate.Vehicle.class);
aggregateobjectmapping.setIsNullAllowed(false);
descriptor.addMapping(aggregateobjectmapping);
// SECTION: DIRECTTOFIELDMAPPING
org.eclipse.persistence.mappings.DirectToFieldMapping directtofieldmapping = new org.eclipse.persistence.mappings.DirectToFieldMapping();
directtofieldmapping.setAttributeName("id");
directtofieldmapping.setIsReadOnly(false);
directtofieldmapping.setFieldName("AGGVEHICLE.ID");
descriptor.addMapping(directtofieldmapping);
addDescriptor(descriptor);
}
/**
* This method was created in VisualAge.
*/
public void buildVehicleDescriptor() {
org.eclipse.persistence.descriptors.RelationalDescriptor descriptor = new org.eclipse.persistence.descriptors.RelationalDescriptor();
// SECTION: DESCRIPTOR
descriptor.setJavaClass(org.eclipse.persistence.testing.models.aggregate.Vehicle.class);
Vector vector = new Vector();
vector.addElement("AGGVEHICLE");
descriptor.setTableNames(vector);
// SECTION: PROPERTIES
descriptor.descriptorIsAggregate();
descriptor.getDescriptorInheritancePolicy().setShouldReadSubclasses(true);
descriptor.getDescriptorInheritancePolicy().setClassIndicatorFieldName("TYPE");
descriptor.getDescriptorInheritancePolicy().setShouldUseClassNameAsIndicator(false);
descriptor.getDescriptorInheritancePolicy().addClassIndicator(org.eclipse.persistence.testing.models.aggregate.Car.class, 1);
descriptor.getDescriptorInheritancePolicy().addClassIndicator(org.eclipse.persistence.testing.models.aggregate.Bicycle.class, 2);
// 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("capacity");
directtofieldmapping.setIsReadOnly(false);
directtofieldmapping.setFieldName("AGGVEHICLE.CAPACITY");
descriptor.addMapping(directtofieldmapping);
// SECTION: DIRECTTOFIELDMAPPING
org.eclipse.persistence.mappings.DirectToFieldMapping directtofieldmapping1 = new org.eclipse.persistence.mappings.DirectToFieldMapping();
directtofieldmapping1.setAttributeName("colour");
directtofieldmapping1.setIsReadOnly(false);
directtofieldmapping1.setFieldName("AGGVEHICLE.COLOUR");
descriptor.addMapping(directtofieldmapping1);
addDescriptor(descriptor);
}
public void buildVersionDescriptor() {
org.eclipse.persistence.descriptors.RelationalDescriptor descriptor = new org.eclipse.persistence.descriptors.RelationalDescriptor();
descriptor.descriptorIsAggregate();
descriptor.setJavaClass(org.eclipse.persistence.testing.models.aggregate.Version.class);
// Descriptor properties.
descriptor.setAlias("Version");
// Query manager.
//Named Queries
// Event manager.
// Mappings.
org.eclipse.persistence.mappings.DirectToFieldMapping versionNumberMapping = new org.eclipse.persistence.mappings.DirectToFieldMapping();
versionNumberMapping.setAttributeName("versionNumber");
versionNumberMapping.setFieldName("VERSION");
descriptor.addMapping(versionNumberMapping);
addDescriptor(descriptor);
}
/**
* Insert the method's description here.
* Creation date: (6/7/00 10:53:48 AM)
*/
protected void buildWorkerDescriptor() {
org.eclipse.persistence.descriptors.RelationalDescriptor descriptor = new org.eclipse.persistence.descriptors.RelationalDescriptor();
// SECTION: DESCRIPTOR
descriptor.setJavaClass(org.eclipse.persistence.testing.models.aggregate.Worker.class);
Vector vector = new Vector();
vector.addElement("WORKER");
descriptor.setTableNames(vector);
descriptor.addPrimaryKeyFieldName("WORKER.ID");
// SECTION: PROPERTIES
descriptor.setSequenceNumberName("SEQ_WORKER");
descriptor.setSequenceNumberFieldName("ID");
// SECTION: COPY POLICY
descriptor.createCopyPolicy("constructor");
// SECTION: INSTANTIATION POLICY
descriptor.createInstantiationPolicy("constructor");
// SECTION: AGGREGATEOBJECTMAPPING
org.eclipse.persistence.mappings.AggregateObjectMapping aggregateobjectmapping = new org.eclipse.persistence.mappings.AggregateObjectMapping();
aggregateobjectmapping.setAttributeName("job");
aggregateobjectmapping.setIsReadOnly(false);
aggregateobjectmapping.setGetMethodName("getJob");
aggregateobjectmapping.setSetMethodName("setJob");
aggregateobjectmapping.setReferenceClass(org.eclipse.persistence.testing.models.aggregate.Job.class);
aggregateobjectmapping.setIsNullAllowed(false);
descriptor.addMapping(aggregateobjectmapping);
// SECTION: DIRECTTOFIELDMAPPING
org.eclipse.persistence.mappings.DirectToFieldMapping directtofieldmapping = new org.eclipse.persistence.mappings.DirectToFieldMapping();
directtofieldmapping.setAttributeName("fName");
directtofieldmapping.setIsReadOnly(false);
directtofieldmapping.setGetMethodName("getFName");
directtofieldmapping.setSetMethodName("setFName");
directtofieldmapping.setFieldName("WORKER.FNAME");
descriptor.addMapping(directtofieldmapping);
// SECTION: DIRECTTOFIELDMAPPING
org.eclipse.persistence.mappings.DirectToFieldMapping directtofieldmapping1 = new org.eclipse.persistence.mappings.DirectToFieldMapping();
directtofieldmapping1.setAttributeName("id");
directtofieldmapping1.setIsReadOnly(false);
directtofieldmapping1.setGetMethodName("getId");
directtofieldmapping1.setSetMethodName("setId");
directtofieldmapping1.setFieldName("WORKER.ID");
descriptor.addMapping(directtofieldmapping1);
// SECTION: DIRECTTOFIELDMAPPING
org.eclipse.persistence.mappings.DirectToFieldMapping directtofieldmapping2 = new org.eclipse.persistence.mappings.DirectToFieldMapping();
directtofieldmapping2.setAttributeName("lName");
directtofieldmapping2.setIsReadOnly(false);
directtofieldmapping2.setGetMethodName("getLName");
directtofieldmapping2.setSetMethodName("setLName");
directtofieldmapping2.setFieldName("WORKER.LNAME");
descriptor.addMapping(directtofieldmapping2);
addDescriptor(descriptor);
}
}