/******************************************************************************* * Copyright (c) 1998, 2015 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.tools.workbench.mappingsio.legacy; import java.io.File; import java.util.prefs.Preferences; import org.eclipse.persistence.tools.workbench.mappingsio.FileNotFoundEvent; import org.eclipse.persistence.tools.workbench.mappingsio.FileNotFoundListener; import org.eclipse.persistence.tools.workbench.mappingsmodel.project.MWProject; import org.eclipse.persistence.tools.workbench.utility.ClassTools; import org.eclipse.persistence.oxm.XMLLogin; import org.eclipse.persistence.oxm.XMLMarshaller; import org.eclipse.persistence.oxm.XMLUnmarshaller; import org.eclipse.persistence.oxm.XMLContext; import org.eclipse.persistence.oxm.platform.DOMPlatform; import org.eclipse.persistence.sessions.Project; /** * Use an instance of this class to read and write MW projects. */ public class Project60IOManager { /** * The TopLink marshaller and unmarshaller used to read and write projects. * This is created once and re-used with every read/write. */ private XMLMarshaller marshaller; private XMLUnmarshaller unmarshaller; /** * The default file name extension for non-project XML files. */ private static final String DEFAULT_FILE_NAME_EXTENSION = ".xml"; // ********** constructor/initialization ********** public Project60IOManager() { super(); this.initialize(); } private void initialize() { //TODO: remove once Blaise fixes problem with SAXPlatform. Project tlProject = this.buildProject(); tlProject.setLogin(new XMLLogin(new DOMPlatform())); XMLContext context = new XMLContext(tlProject); this.marshaller = context.createMarshaller(); this.unmarshaller = context.createUnmarshaller(); } // ********** public stuff ********** public MWProject read(File projectFile, Preferences preferences) { return this.read(projectFile, preferences, FileNotFoundListener.NULL_INSTANCE); } public MWProject read(File projectFile, Preferences preferences, FileNotFoundListener listener) { return new Project60Reader(this, projectFile, preferences, listener).read(); } // ********** package stuff ********** void fireFileNotFound(FileNotFoundListener listener, File missingFile) { listener.fileNotFound(new FileNotFoundEvent(this, missingFile)); } XMLMarshaller getMarshaller() { return this.marshaller; } XMLUnmarshaller getUnmarshaller() { return this.unmarshaller; } /** * "Root" sub-component containers must have a static field that * specifies the name of the sub-directory that holds the sub-components. */ String subDirectoryNameFor(Object container) { return (String) ClassTools.getStaticFieldValue(container.getClass(), "SUB_DIRECTORY_NAME"); } String defaultFileNameExtension() { return DEFAULT_FILE_NAME_EXTENSION; } // ********** internal stuff ********** /** * Build and return a TopLink project for reading and * writing MWProjects from and to XML files. */ private Project buildProject() { Project topLinkProject = new Project(); topLinkProject.setName("MW project"); // handles topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.handles.MWClassHandle.legacy60BuildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.handles.MWAttributeHandle.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.handles.MWMethodHandle.legacy60BuildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.handles.MWTableHandle.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.handles.MWColumnHandle.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.handles.MWReferenceHandle.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.handles.QName.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.handles.MWNamedSchemaComponentHandle.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.handles.MWDescriptorHandle.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.handles.MWMappingHandle.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.handles.MWDescriptorQueryParameterHandle.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.handles.MWQueryableHandle.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.db.MWLoginSpecHandle.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.handles.MWColumnPairHandle.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.handles.MWQueryKeyHandle.buildDescriptor()); // MWClass and associated classes topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.meta.MWClass.legacy60BuildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.meta.MWClassAttribute.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.meta.MWClassRepository.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.meta.MWMethod.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.meta.MWTypeDeclaration.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.meta.MWMethodParameter.buildDescriptor()); // MWDatabase and associated classes topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.db.MWDatabase.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.db.MWColumn.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.db.MWColumnPair.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.db.MWLoginSpec.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.project.xml.MWEisLoginSpec.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.project.xml.MWProperty.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.db.MWReference.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.db.MWTable.buildDescriptor()); // MWXmlSchemaRepository and associated classes topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.schema.MWXmlSchemaRepository.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.schema.MWXmlSchema.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.schema.MWXmlSchema.BuiltInNamespace.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.schema.MWNamespace.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.schema.AbstractSchemaComponent.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.schema.AbstractNamedSchemaComponent.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.schema.ExplicitAttributeDeclaration.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.schema.ExplicitElementDeclaration.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.schema.ExplicitSchemaTypeDefinition.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.schema.ExplicitComplexTypeDefinition.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.schema.ExplicitSimpleTypeDefinition.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.schema.ModelGroupDefinition.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.schema.SchemaComponentReference.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.schema.ReferencedModelGroup.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.schema.ReferencedSchemaTypeDefinition.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.schema.ReferencedComplexTypeDefinition.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.schema.ReferencedSimpleTypeDefinition.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.schema.ReferencedAttributeDeclaration.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.schema.ReferencedElementDeclaration.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.schema.AbstractParticle.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.schema.ExplicitModelGroup.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.schema.NullParticle.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.schema.Wildcard.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.schema.Content.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.schema.ComplexContent.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.schema.EmptyContent.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.schema.SimpleContent.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.schema.IdentityConstraintDefinition.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.schema.IdentityConstraint.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.schema.KeyIdentityConstraint.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.schema.KeyRefIdentityConstraint.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.schema.UniqueIdentityConstraint.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.resource.ResourceSpecification.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.resource.ClasspathResourceSpecification.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.resource.FileResourceSpecification.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.resource.UrlResourceSpecification.buildDescriptor()); // MWProject and associated classes topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.project.MWProject.buildLegacy60Descriptor()); // topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.project.MWTransactionalProjectEjbPolicy.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.project.MWProjectDefaultsPolicy.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.project.MWTransactionalProjectCachingPolicy.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.project.relational.MWRelationalProject.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.project.relational.MWSequencingPolicy.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.project.relational.MWRelationalProjectDefaultsPolicy.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.project.relational.MWTableGenerationPolicy.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.project.xml.MWXmlProject.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.project.xml.MWOXProject.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.project.xml.MWEisProject.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.project.xml.MWOXProjectDefaultsPolicy.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.project.xml.MWEisProjectDefaultsPolicy.buildDescriptor()); // Basic XML classes topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.xml.MWXmlField.buildDescriptor()); // MWDescriptor and associated classes topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.descriptor.MWDescriptor.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.descriptor.MWMappingDescriptor.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.descriptor.MWRefreshCachePolicy.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.descriptor.MWAbstractTransactionalPolicy.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.descriptor.MWDescriptorCopyPolicy.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.descriptor.MWDescriptorInstantiationPolicy.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.descriptor.MWDescriptorLockingPolicy.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.descriptor.MWDescriptorAfterLoadingPolicy.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.descriptor.MWDescriptorCachingPolicy.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.descriptor.MWDescriptorCacheExpiry.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.descriptor.MWDescriptorEventsPolicy.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.descriptor.MWDescriptorInterfaceAliasPolicy.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.descriptor.MWAbstractClassIndicatorPolicy.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.descriptor.MWClassIndicatorFieldPolicy.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.descriptor.MWClassIndicatorExtractionMethodPolicy.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.descriptor.MWClassIndicatorValue.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.descriptor.MWDescriptorInheritancePolicy.buildDescriptor()); // topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.descriptor.ejb.MWDescriptorEjbPolicy.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.descriptor.relational.MWRelationalClassDescriptor.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.descriptor.relational.MWTableDescriptor.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.descriptor.relational.MWRelationalTransactionalPolicy.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.descriptor.relational.MWRelationalPrimaryKeyPolicy.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.descriptor.relational.MWUserDefinedQueryKey.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.descriptor.relational.MWRelationalDescriptorInheritancePolicy.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.descriptor.relational.MWRelationalClassIndicatorFieldPolicy.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.descriptor.relational.MWInterfaceDescriptor.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.descriptor.relational.MWAggregateDescriptor.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.descriptor.relational.MWTableDescriptorLockingPolicy.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.descriptor.relational.MWDescriptorMultiTableInfoPolicy.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.descriptor.relational.MWSecondaryTableHolder.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.descriptor.relational.MWRelationalReturningPolicyInsertFieldReturnOnlyFlag.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.descriptor.relational.MWRelationalReturningPolicy.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.descriptor.xml.MWXmlDescriptor.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.descriptor.xml.MWCompositeEisDescriptor.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.descriptor.xml.MWRootEisDescriptor.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.descriptor.xml.MWOXDescriptor.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.descriptor.xml.MWEisTransactionalPolicy.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.descriptor.xml.MWXmlPrimaryKeyPolicy.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.descriptor.xml.MWOXDescriptorInheritancePolicy.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.descriptor.xml.MWEisDescriptorInheritancePolicy.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.descriptor.xml.MWXmlClassIndicatorFieldPolicy.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.descriptor.xml.MWEisDescriptorLockingPolicy.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.descriptor.xml.MWEisReturningPolicy.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.descriptor.xml.MWEisReturningPolicyInsertFieldReturnOnlyFlag.buildDescriptor()); // MWMapping and associated classes topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.MWMapping.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.MWDefaultNullValuePolicy.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.MWConverter.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.MWTypeConverter.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.MWObjectTypeConverter.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.MWObjectTypeConverter.ValuePair.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.MWSerializedObjectConverter.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.MWTypeConversionConverter.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.MWAbstractReferenceMapping.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.MWTransformationMapping.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.MWFieldTransformerAssociation.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.MWTransformer.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.MWMethodBasedTransformer.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.MWClassBasedTransformer.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.MWContainerPolicy.MWContainerPolicyRoot.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.DefaultingContainerClass.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.MWCollectionContainerPolicy.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.MWListContainerPolicy.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.MWSetContainerPolicy.legacy60BuildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.MWMapContainerPolicy.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.MWDirectMapContainerPolicy.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.MWDirectMapping.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.MWDirectContainerMapping.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.relational.MWRelationalDirectMapping.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.relational.MWDirectToFieldMapping.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.relational.MWDirectToXmlTypeMapping.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.relational.MWVariableOneToOneMapping.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.relational.MWColumnQueryKeyPair.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.relational.MWAbstractTableReferenceMapping.legacy60BuildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.relational.MWOneToOneMapping.legacy60BuildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.relational.MWOneToManyMapping.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.relational.MWCollectionMapping.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.relational.MWCollectionOrdering.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.relational.MWManyToManyMapping.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.relational.MWRelationalDirectCollectionMapping.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.relational.MWRelationalDirectContainerMapping.legacy60BuildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.relational.MWRelationalDirectMapMapping.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.relational.MWRelationalTransformationMapping.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.relational.MWRelationalFieldTransformerAssociation.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.relational.MWAggregateMapping.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.relational.MWAggregatePathToColumn.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.relational.MWRelationalTypeConversionConverter.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.xml.MWXmlDirectMapping.legacy60BuildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.xml.MWAbstractXmlDirectCollectionMapping.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.xml.MWXmlDirectCollectionMapping.legacy60BuildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.xml.MWAbstractAnyMapping.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.xml.MWAnyObjectMapping.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.xml.MWAnyCollectionMapping.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.xml.MWAbstractCompositeMapping.legacy60BuildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.xml.MWCompositeObjectMapping.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.xml.MWCompositeCollectionMapping.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.xml.MWXmlTransformationMapping.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.xml.MWXmlFieldTransformerAssociation.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.xml.MWXmlFieldPair.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.xml.MWEisOneToOneMapping.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.xml.MWEisReferenceMapping.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.xml.MWEisOneToManyMapping.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.mapping.xml.MWXmlTypeConversionConverter.buildDescriptor()); // MWQuery and associated classes topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.query.MWQueryManager.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.query.MWAbstractQuery.legacy60BuildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.query.MWAbstractReadQuery.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.query.MWQueryParameter.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.query.relational.MWAbstractRelationalReadQuery.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.query.relational.MWRelationalReadAllQuery.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.query.relational.MWRelationalSpecificQueryOptions.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.query.relational.MWRelationalReadObjectQuery.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.query.relational.MWReportQuery.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.query.relational.MWReportAttributeItem.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.query.relational.MWAttributeItem.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.query.relational.MWGroupingItem.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.query.relational.MWOrderingItem.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.query.relational.MWBatchReadItem.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.query.relational.MWJoinedItem.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.query.relational.MWReportOrderingItem.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.query.relational.MWArgument.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.query.relational.MWNullArgument.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.query.relational.MWAutoGeneratedQueryFormat.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.query.relational.MWBasicExpression.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.query.relational.MWCompoundExpression.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.query.relational.MWEJBQLQueryFormat.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.query.relational.MWExpression.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.query.relational.MWExpressionQueryFormat.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.query.relational.MWLiteralArgument.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.query.relational.MWQueryableArgument.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.query.relational.MWQueryableArgumentElement.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.query.relational.MWQueryFormat.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.query.relational.MWRelationalQueryManager.legacy60BuildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.query.relational.MWQueryParameterArgument.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.query.relational.MWSQLQueryFormat.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.query.relational.MWStringQueryFormat.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.query.xml.MWEisQueryManager.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.query.xml.MWAbstractEisReadQuery.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.query.xml.MWEisReadAllQuery.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.query.xml.MWEisReadObjectQuery.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.query.xml.MWEisInteraction.buildDescriptor()); topLinkProject.addDescriptor(org.eclipse.persistence.tools.workbench.mappingsmodel.query.xml.MWEisInteraction.ArgumentPair.buildDescriptor()); return topLinkProject; } }