diff options
author | pfullbright | 2008-08-11 00:27:47 +0000 |
---|---|---|
committer | pfullbright | 2008-08-11 00:27:47 +0000 |
commit | ddc6b522a84291f0c3e95a91c7b71d74236781cd (patch) | |
tree | 6ad9d696f6e3a0a478319213dba4e1076d91d19d | |
parent | c6b0548f78f098beadb39c3821da918eb16fce8a (diff) | |
download | webtools.dali-ddc6b522a84291f0c3e95a91c7b71d74236781cd.tar.gz webtools.dali-ddc6b522a84291f0c3e95a91c7b71d74236781cd.tar.xz webtools.dali-ddc6b522a84291f0c3e95a91c7b71d74236781cd.zip |
base support for eclipselink-orm.xml files
157 files changed, 47594 insertions, 13 deletions
diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/META-INF/MANIFEST.MF b/jpa/plugins/org.eclipse.jpt.eclipselink.core/META-INF/MANIFEST.MF index 7bfd4076a8..4d7d39a9b1 100644 --- a/jpa/plugins/org.eclipse.jpt.eclipselink.core/META-INF/MANIFEST.MF +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/META-INF/MANIFEST.MF @@ -9,13 +9,17 @@ Bundle-ClassPath: . Bundle-Localization: plugin Require-Bundle: org.eclipse.core.resources;bundle-version="[3.4.0,4.0.0)", org.eclipse.core.runtime;bundle-version="[3.4.0,4.0.0)", + org.eclipse.debug.core;bundle-version="[3.4.0,4.0.0)", org.eclipse.emf.ecore;bundle-version="[2.4.0,3.0.0)", + org.eclipse.emf.ecore.xmi;bundle-version="2.4.0", org.eclipse.jdt.core;bundle-version="[3.4.0,4.0.0)", - org.eclipse.jpt.db;bundle-version="[1.1.1,2.0.0)", + org.eclipse.jdt.launching;bundle-version="[3.4.0,4.0.0)", org.eclipse.jpt.core;bundle-version="[2.0.0,3.0.0)", + org.eclipse.jpt.db;bundle-version="[1.1.1,2.0.0)", org.eclipse.jpt.utility;bundle-version="[1.2.0,2.0.0)", - org.eclipse.debug.core;bundle-version="[3.4.0,4.0.0)", - org.eclipse.jdt.launching;bundle-version="[3.4.0,4.0.0)", + org.eclipse.wst.common.emf;bundle-version="1.1.200", + org.eclipse.wst.common.emfworkbench.integration;bundle-version="1.1.200", + org.eclipse.wst.common.modulecore;bundle-version="1.1.201", org.eclipse.wst.validation;bundle-version="[1.2.0,2.0.0)" Bundle-ActivationPolicy: lazy Export-Package: org.eclipse.jpt.eclipselink.core, @@ -31,6 +35,8 @@ Export-Package: org.eclipse.jpt.eclipselink.core, org.eclipse.jpt.eclipselink.core.internal.context.options, org.eclipse.jpt.eclipselink.core.internal.context.schema.generation, org.eclipse.jpt.eclipselink.core.internal.ddlgen, + org.eclipse.jpt.eclipselink.core.internal.resource.elorm.translators, org.eclipse.jpt.eclipselink.core.internal.resource.java, + org.eclipse.jpt.eclipselink.core.resource.elorm, org.eclipse.jpt.eclipselink.core.resource.java Bundle-RequiredExecutionEnvironment: J2SE-1.5 diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/build.properties b/jpa/plugins/org.eclipse.jpt.eclipselink.core/build.properties index e9bdb6f945..81a1ab6b4f 100644 --- a/jpa/plugins/org.eclipse.jpt.eclipselink.core/build.properties +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/build.properties @@ -18,3 +18,4 @@ bin.includes = .,\ plugin.xml,\ plugin.properties jars.compile.order = . +src.includes = model/ diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/model/elorm.ecore b/jpa/plugins/org.eclipse.jpt.eclipselink.core/model/elorm.ecore new file mode 100644 index 0000000000..1126518a4e --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/model/elorm.ecore @@ -0,0 +1,488 @@ +<?xml version="1.0" encoding="UTF-8"?> +<ecore:EPackage xmi:version="2.0" + xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="elorm" + nsURI="jpt.elorm.xmi" nsPrefix="org.eclipse.jpt.eclipselink.core.resource.elorm"> + <eClassifiers xsi:type="ecore:EClass" name="XmlEntityMappings"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="version" lowerBound="1" + eType="#//VersionType" defaultValueLiteral="1.0" unsettable="true"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="description" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="persistenceUnitMetadata" + eType="#//XmlPersistenceUnitMetadata" containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="package" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="schema" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="catalog" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="access" eType="#//AccessType" + defaultValueLiteral="PROPERTY"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="sequenceGenerators" upperBound="-1" + eType="#//XmlSequenceGenerator" containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="tableGenerators" upperBound="-1" + eType="#//XmlTableGenerator" containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="namedQueries" upperBound="-1" + eType="#//XmlNamedQuery" containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="namedNativeQueries" upperBound="-1" + eType="#//XmlNamedNativeQuery" containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="sqlResultSetMappings" upperBound="-1" + eType="#//SqlResultSetMapping" containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="mappedSuperclasses" upperBound="-1" + eType="#//XmlMappedSuperclass" containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="entities" upperBound="-1" + eType="#//XmlEntity" containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="embeddables" upperBound="-1" + eType="#//XmlEmbeddable" containment="true" resolveProxies="false"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="XmlPersistenceUnitMetadata"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="xmlMappingMetadataComplete" + eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Boolean"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="persistenceUnitDefaults" + eType="#//XmlPersistenceUnitDefaults" containment="true" resolveProxies="false"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="XmlPersistenceUnitDefaults"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="schema" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="catalog" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="access" eType="#//AccessType" + defaultValueLiteral="PROPERTY"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="cascadePersist" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Boolean"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="entityListeners" eType="#//EntityListeners" + containment="true" resolveProxies="false"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="AbstractXmlTypeMapping" abstract="true"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="className" lowerBound="1" + eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="access" eType="#//AccessType" + defaultValueLiteral="PROPERTY"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="metadataComplete" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//BooleanObject"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="description" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="attributes" eType="#//Attributes" + containment="true" resolveProxies="false"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="XmlMappedSuperclass" eSuperTypes="#//AbstractXmlTypeMapping"> + <eStructuralFeatures xsi:type="ecore:EReference" name="idClass" eType="#//XmlIdClass" + containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="excludeDefaultListeners" + eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Boolean"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="excludeSuperclassListeners" + eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Boolean"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="entityListeners" eType="#//EntityListeners" + containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="prePersist" eType="#//PrePersist" + containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="postPersist" eType="#//PostPersist" + containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="preRemove" eType="#//PreRemove" + containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="postRemove" eType="#//PostRemove" + containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="preUpdate" eType="#//PreUpdate" + containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="postUpdate" eType="#//PostUpdate" + containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="postLoad" eType="#//PostLoad" + containment="true" resolveProxies="false"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="XmlEntity" eSuperTypes="#//AbstractXmlTypeMapping"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="table" eType="#//XmlTable" + containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="secondaryTables" upperBound="-1" + eType="#//XmlSecondaryTable" containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="primaryKeyJoinColumns" + upperBound="-1" eType="#//XmlPrimaryKeyJoinColumn" containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="idClass" eType="#//XmlIdClass" + containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="inheritance" eType="#//Inheritance" + containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="discriminatorValue" eType="#//DiscriminatorValue"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="discriminatorColumn" eType="#//XmlDiscriminatorColumn" + containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="sequenceGenerator" eType="#//XmlSequenceGenerator" + containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="tableGenerator" eType="#//XmlTableGenerator" + containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="namedQueries" upperBound="-1" + eType="#//XmlNamedQuery" containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="namedNativeQueries" upperBound="-1" + eType="#//XmlNamedNativeQuery" containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="sqlResultSetMappings" upperBound="-1" + eType="#//SqlResultSetMapping" containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="excludeDefaultListeners" + eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Boolean"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="excludeSuperclassListeners" + eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Boolean"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="entityListeners" eType="#//EntityListeners" + containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="prePersist" eType="#//PrePersist" + containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="postPersist" eType="#//PostPersist" + containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="preRemove" eType="#//PreRemove" + containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="postRemove" eType="#//PostRemove" + containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="preUpdate" eType="#//PreUpdate" + containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="postUpdate" eType="#//PostUpdate" + containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="postLoad" eType="#//PostLoad" + containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="attributeOverrides" upperBound="-1" + eType="#//XmlAttributeOverride" containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="associationOverrides" upperBound="-1" + eType="#//XmlAssociationOverride" containment="true" resolveProxies="false"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="XmlEmbeddable" eSuperTypes="#//AbstractXmlTypeMapping"/> + <eClassifiers xsi:type="ecore:EClass" name="Attributes"> + <eStructuralFeatures xsi:type="ecore:EReference" name="ids" upperBound="-1" eType="#//XmlId" + containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="embeddedIds" upperBound="-1" + eType="#//XmlEmbeddedId" containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="basics" upperBound="-1" + eType="#//XmlBasic" containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="versions" upperBound="-1" + eType="#//XmlVersion" containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="manyToOnes" upperBound="-1" + eType="#//XmlManyToOne" containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="oneToManys" upperBound="-1" + eType="#//XmlOneToMany" containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="oneToOnes" upperBound="-1" + eType="#//XmlOneToOne" containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="manyToManys" upperBound="-1" + eType="#//XmlManyToMany" containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="embeddeds" upperBound="-1" + eType="#//XmlEmbedded" containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="transients" upperBound="-1" + eType="#//XmlTransient" containment="true" resolveProxies="false"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="XmlAttributeMapping" abstract="true" + interface="true"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="AbstractXmlAttributeMapping" abstract="true" + eSuperTypes="#//XmlAttributeMapping"/> + <eClassifiers xsi:type="ecore:EClass" name="XmlNullAttributeMapping" abstract="true" + interface="true" eSuperTypes="#//XmlAttributeMapping"/> + <eClassifiers xsi:type="ecore:EClass" name="ColumnMapping" abstract="true" interface="true"> + <eStructuralFeatures xsi:type="ecore:EReference" name="column" eType="#//XmlColumn" + containment="true" resolveProxies="false"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="XmlRelationshipMapping" abstract="true" + interface="true" eSuperTypes="#//XmlAttributeMapping"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="targetEntity" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="fetch" eType="#//FetchType" + defaultValueLiteral="LAZY"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="joinTable" eType="#//XmlJoinTable" + containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="cascade" eType="#//CascadeType" + containment="true" resolveProxies="false"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="XmlMultiRelationshipMapping" abstract="true" + interface="true" eSuperTypes="#//XmlRelationshipMapping"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="mappedBy" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="orderBy" eType="#//OrderBy"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="mapKey" eType="#//MapKey" + containment="true" resolveProxies="false"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="XmlSingleRelationshipMapping" abstract="true" + interface="true" eSuperTypes="#//XmlRelationshipMapping"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="optional" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//BooleanObject"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="joinColumns" upperBound="-1" + eType="#//XmlJoinColumn" containment="true" resolveProxies="false"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="XmlId" abstract="true" interface="true" + eSuperTypes="#//XmlAttributeMapping #//ColumnMapping"> + <eStructuralFeatures xsi:type="ecore:EReference" name="generatedValue" eType="#//XmlGeneratedValue" + containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="temporal" eType="#//TemporalType"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="tableGenerator" eType="#//XmlTableGenerator" + containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="sequenceGenerator" eType="#//XmlSequenceGenerator" + containment="true" resolveProxies="false"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="XmlIdImpl" eSuperTypes="#//AbstractXmlAttributeMapping #//XmlId"/> + <eClassifiers xsi:type="ecore:EClass" name="BaseXmlEmbedded" abstract="true" interface="true" + eSuperTypes="#//XmlAttributeMapping"> + <eStructuralFeatures xsi:type="ecore:EReference" name="attributeOverrides" upperBound="-1" + eType="#//XmlAttributeOverride" containment="true" resolveProxies="false"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="XmlEmbeddedId" abstract="true" interface="true" + eSuperTypes="#//XmlAttributeMapping #//BaseXmlEmbedded"/> + <eClassifiers xsi:type="ecore:EClass" name="XmlEmbeddedIdImpl" eSuperTypes="#//AbstractXmlAttributeMapping #//XmlEmbeddedId"/> + <eClassifiers xsi:type="ecore:EClass" name="XmlEmbedded" abstract="true" interface="true" + eSuperTypes="#//BaseXmlEmbedded"/> + <eClassifiers xsi:type="ecore:EClass" name="XmlEmbeddedImpl" eSuperTypes="#//AbstractXmlAttributeMapping #//XmlEmbedded"/> + <eClassifiers xsi:type="ecore:EClass" name="XmlBasic" abstract="true" interface="true" + eSuperTypes="#//XmlAttributeMapping #//ColumnMapping"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="fetch" eType="#//FetchType" + defaultValueLiteral="LAZY"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="optional" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//BooleanObject"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="lob" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Boolean"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="temporal" eType="#//TemporalType"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="enumerated" eType="#//EnumType"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="XmlBasicImpl" eSuperTypes="#//AbstractXmlAttributeMapping #//XmlBasic"/> + <eClassifiers xsi:type="ecore:EClass" name="XmlVersion" abstract="true" interface="true" + eSuperTypes="#//XmlAttributeMapping #//ColumnMapping"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="temporal" eType="#//TemporalType"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="XmlVersionImpl" eSuperTypes="#//AbstractXmlAttributeMapping #//XmlVersion"/> + <eClassifiers xsi:type="ecore:EClass" name="XmlManyToOne" abstract="true" interface="true" + eSuperTypes="#//XmlSingleRelationshipMapping"/> + <eClassifiers xsi:type="ecore:EClass" name="XmlManyToOneImpl" eSuperTypes="#//AbstractXmlAttributeMapping #//XmlManyToOne"/> + <eClassifiers xsi:type="ecore:EClass" name="XmlOneToMany" abstract="true" interface="true" + eSuperTypes="#//XmlMultiRelationshipMapping"> + <eStructuralFeatures xsi:type="ecore:EReference" name="joinColumns" upperBound="-1" + eType="#//XmlJoinColumn" containment="true" resolveProxies="false"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="XmlOneToManyImpl" eSuperTypes="#//AbstractXmlAttributeMapping #//XmlOneToMany"/> + <eClassifiers xsi:type="ecore:EClass" name="XmlOneToOne" abstract="true" interface="true" + eSuperTypes="#//XmlSingleRelationshipMapping"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="mappedBy" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="primaryKeyJoinColumns" + upperBound="-1" eType="#//XmlPrimaryKeyJoinColumn" containment="true" resolveProxies="false"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="XmlOneToOneImpl" eSuperTypes="#//AbstractXmlAttributeMapping #//XmlOneToOne"/> + <eClassifiers xsi:type="ecore:EClass" name="XmlManyToMany" abstract="true" interface="true" + eSuperTypes="#//XmlMultiRelationshipMapping"/> + <eClassifiers xsi:type="ecore:EClass" name="XmlManyToManyImpl" eSuperTypes="#//AbstractXmlAttributeMapping #//XmlManyToMany"/> + <eClassifiers xsi:type="ecore:EClass" name="XmlTransient" abstract="true" interface="true" + eSuperTypes="#//XmlAttributeMapping"/> + <eClassifiers xsi:type="ecore:EClass" name="XmlTransientImpl" eSuperTypes="#//AbstractXmlAttributeMapping #//XmlTransient"/> + <eClassifiers xsi:type="ecore:EClass" name="XmlAssociationOverride" abstract="true" + interface="true"> + <eStructuralFeatures xsi:type="ecore:EReference" name="joinColumns" lowerBound="1" + upperBound="-1" eType="#//XmlJoinColumn" containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="XmlAssociationOverrideImpl" eSuperTypes="#//XmlAssociationOverride"/> + <eClassifiers xsi:type="ecore:EClass" name="XmlAttributeOverride" abstract="true" + interface="true"> + <eStructuralFeatures xsi:type="ecore:EReference" name="column" lowerBound="1" + eType="#//XmlColumn" containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="XmlAttributeOverrideImpl" eSuperTypes="#//XmlAttributeOverride"/> + <eClassifiers xsi:type="ecore:EClass" name="CascadeType" abstract="true" interface="true"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="cascadeAll" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Boolean"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="cascadePersist" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Boolean"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="cascadeMerge" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Boolean"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="cascadeRemove" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Boolean"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="cascadeRefresh" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Boolean"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="CascadeTypeImpl" eSuperTypes="#//CascadeType"/> + <eClassifiers xsi:type="ecore:EClass" name="XmlNamedColumn" abstract="true" interface="true"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="columnDefinition" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="AbstractXmlNamedColumn" abstract="true" + eSuperTypes="#//XmlNamedColumn"/> + <eClassifiers xsi:type="ecore:EClass" name="XmlAbstractColumn" abstract="true" interface="true" + eSuperTypes="#//XmlNamedColumn"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="insertable" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//BooleanObject"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="nullable" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//BooleanObject"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="table" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="unique" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//BooleanObject"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="updatable" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//BooleanObject"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="AbstractXmlAbstractColumn" abstract="true" + eSuperTypes="#//AbstractXmlNamedColumn #//XmlAbstractColumn"/> + <eClassifiers xsi:type="ecore:EClass" name="XmlColumn" abstract="true" interface="true" + eSuperTypes="#//XmlAbstractColumn"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="length" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//IntObject"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="precision" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//IntObject"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="scale" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//IntObject"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="XmlColumnImpl" eSuperTypes="#//AbstractXmlAbstractColumn #//XmlColumn"/> + <eClassifiers xsi:type="ecore:EClass" name="ColumnResult"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="XmlDiscriminatorColumn" eSuperTypes="#//AbstractXmlNamedColumn"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="discriminatorType" eType="#//DiscriminatorType" + defaultValueLiteral="STRING"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="length" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//IntObject"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="EntityListeners"> + <eStructuralFeatures xsi:type="ecore:EReference" name="entityListeners" upperBound="-1" + eType="#//EntityListener" containment="true" resolveProxies="false"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="EntityListener"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="className" lowerBound="1" + eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="prePersist" eType="#//PrePersist" + containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="postPersist" eType="#//PostPersist" + containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="preRemove" eType="#//PreRemove" + containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="postRemove" eType="#//PostRemove" + containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="preUpdate" eType="#//PreUpdate" + containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="postUpdate" eType="#//PostUpdate" + containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="postLoad" eType="#//PostLoad" + containment="true" resolveProxies="false"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="EntityResult"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="discriminatorColumn" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="entityClass" lowerBound="1" + eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="fieldResults" upperBound="-1" + eType="#//FieldResult" containment="true" resolveProxies="false"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="EventMethod"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="methodName" lowerBound="1" + eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="FieldResult"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="column" lowerBound="1" + eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="XmlGeneratedValue" abstract="true" interface="true"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="generator" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="strategy" eType="#//GenerationType" + defaultValueLiteral="TABLE"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="XmlGeneratedValueImpl" eSuperTypes="#//XmlGeneratedValue"/> + <eClassifiers xsi:type="ecore:EClass" name="XmlIdClass"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="className" lowerBound="1" + eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="Inheritance"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="strategy" eType="#//InheritanceType" + defaultValueLiteral="SINGLE_TABLE"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="XmlJoinColumn" abstract="true" interface="true" + eSuperTypes="#//XmlAbstractColumn"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="referencedColumnName" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="XmlJoinColumnImpl" eSuperTypes="#//AbstractXmlAbstractColumn #//XmlJoinColumn"/> + <eClassifiers xsi:type="ecore:EClass" name="XmlJoinTable" abstract="true" interface="true" + eSuperTypes="#//XmlBaseTable"> + <eStructuralFeatures xsi:type="ecore:EReference" name="joinColumns" upperBound="-1" + eType="#//XmlJoinColumn" containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="inverseJoinColumns" upperBound="-1" + eType="#//XmlJoinColumn" containment="true" resolveProxies="false"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="XmlJoinTableImpl" eSuperTypes="#//AbstractXmlBaseTable #//XmlJoinTable"/> + <eClassifiers xsi:type="ecore:EClass" name="Lob"/> + <eClassifiers xsi:type="ecore:EClass" name="MapKey" abstract="true" interface="true"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="MapKeyImpl" eSuperTypes="#//MapKey"/> + <eClassifiers xsi:type="ecore:EClass" name="XmlQuery" abstract="true" interface="true"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="query" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="hints" upperBound="-1" + eType="#//XmlQueryHint" containment="true" resolveProxies="false"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="XmlNamedNativeQuery" eSuperTypes="#//XmlQuery"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="resultClass" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="resultSetMapping" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="XmlNamedQuery" eSuperTypes="#//XmlQuery"/> + <eClassifiers xsi:type="ecore:EClass" name="PostLoad" eSuperTypes="#//EventMethod"/> + <eClassifiers xsi:type="ecore:EClass" name="PostPersist" eSuperTypes="#//EventMethod"/> + <eClassifiers xsi:type="ecore:EClass" name="PostRemove" eSuperTypes="#//EventMethod"/> + <eClassifiers xsi:type="ecore:EClass" name="PostUpdate" eSuperTypes="#//EventMethod"/> + <eClassifiers xsi:type="ecore:EClass" name="PrePersist" eSuperTypes="#//EventMethod"/> + <eClassifiers xsi:type="ecore:EClass" name="PreRemove" eSuperTypes="#//EventMethod"/> + <eClassifiers xsi:type="ecore:EClass" name="PreUpdate" eSuperTypes="#//EventMethod"/> + <eClassifiers xsi:type="ecore:EClass" name="XmlPrimaryKeyJoinColumn" abstract="true" + interface="true" eSuperTypes="#//XmlNamedColumn"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="referencedColumnName" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="XmlPrimaryKeyJoinColumnImpl" eSuperTypes="#//AbstractXmlNamedColumn #//XmlPrimaryKeyJoinColumn"/> + <eClassifiers xsi:type="ecore:EClass" name="XmlQueryHint"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="AbstractXmlBaseTable" abstract="true" + eSuperTypes="#//XmlBaseTable"/> + <eClassifiers xsi:type="ecore:EClass" name="XmlBaseTable" abstract="true" interface="true"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="catalog" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="schema" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="uniqueConstraints" upperBound="-1" + eType="#//XmlUniqueConstraint" containment="true" resolveProxies="false"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="XmlTable" eSuperTypes="#//AbstractXmlBaseTable"/> + <eClassifiers xsi:type="ecore:EClass" name="XmlSecondaryTable" abstract="true" interface="true" + eSuperTypes="#//XmlBaseTable"> + <eStructuralFeatures xsi:type="ecore:EReference" name="primaryKeyJoinColumns" + upperBound="-1" eType="#//XmlPrimaryKeyJoinColumn" containment="true" resolveProxies="false"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="XmlSecondaryTableImpl" eSuperTypes="#//AbstractXmlBaseTable #//XmlSecondaryTable"/> + <eClassifiers xsi:type="ecore:EClass" name="XmlGenerator" abstract="true" interface="true"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="initialValue" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//IntObject"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="allocationSize" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//IntObject"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="XmlSequenceGenerator" abstract="true" + interface="true" eSuperTypes="#//XmlGenerator"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="sequenceName" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="XmlSequenceGeneratorImpl" eSuperTypes="#//XmlSequenceGenerator"/> + <eClassifiers xsi:type="ecore:EClass" name="SqlResultSetMapping"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="entityResults" upperBound="-1" + eType="#//EntityResult" containment="true" resolveProxies="false"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="columnResults" upperBound="-1" + eType="#//ColumnResult" containment="true" resolveProxies="false"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="XmlTableGenerator" abstract="true" interface="true" + eSuperTypes="#//XmlGenerator"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="table" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="catalog" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="schema" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="pkColumnName" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="valueColumnName" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="pkColumnValue" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="uniqueConstraints" upperBound="-1" + eType="#//XmlUniqueConstraint" containment="true" resolveProxies="false"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="XmlTableGeneratorImpl" eSuperTypes="#//XmlTableGenerator"/> + <eClassifiers xsi:type="ecore:EClass" name="XmlUniqueConstraint" abstract="true" + interface="true"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="columnNames" unique="false" + lowerBound="1" upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="XmlUniqueConstraintImpl" eSuperTypes="#//XmlUniqueConstraint"/> + <eClassifiers xsi:type="ecore:EDataType" name="DiscriminatorValue" instanceClassName="java.lang.String"/> + <eClassifiers xsi:type="ecore:EDataType" name="Enumerated" instanceClassName="org.eclipse.emf.common.util.Enumerator"/> + <eClassifiers xsi:type="ecore:EDataType" name="OrderBy" instanceClassName="java.lang.String"/> + <eClassifiers xsi:type="ecore:EDataType" name="VersionType" instanceClassName="java.lang.String"/> + <eClassifiers xsi:type="ecore:EEnum" name="AccessType"> + <eLiterals name="PROPERTY"/> + <eLiterals name="FIELD" value="1"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EEnum" name="DiscriminatorType"> + <eLiterals name="STRING"/> + <eLiterals name="CHAR" value="1"/> + <eLiterals name="INTEGER" value="2"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EEnum" name="EnumType"> + <eLiterals name="ORDINAL"/> + <eLiterals name="STRING" value="1"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EEnum" name="FetchType"> + <eLiterals name="LAZY"/> + <eLiterals name="EAGER" value="1"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EEnum" name="GenerationType"> + <eLiterals name="TABLE"/> + <eLiterals name="SEQUENCE" value="1"/> + <eLiterals name="IDENTITY" value="2"/> + <eLiterals name="AUTO" value="3"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EEnum" name="InheritanceType"> + <eLiterals name="SINGLE_TABLE" literal="SINGLE_TABLE"/> + <eLiterals name="JOINED" value="1"/> + <eLiterals name="TABLE_PER_CLASS" value="2" literal="TABLE_PER_CLASS"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EEnum" name="TemporalType"> + <eLiterals name="DATE"/> + <eLiterals name="TIME" value="1"/> + <eLiterals name="TIMESTAMP" value="2"/> + </eClassifiers> +</ecore:EPackage> diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/model/jptEclipseLinkResourceModels.genmodel b/jpa/plugins/org.eclipse.jpt.eclipselink.core/model/jptEclipseLinkResourceModels.genmodel new file mode 100644 index 0000000000..9e6a893e1a --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/model/jptEclipseLinkResourceModels.genmodel @@ -0,0 +1,363 @@ +<?xml version="1.0" encoding="UTF-8"?> +<genmodel:GenModel xmi:version="2.0" + xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" + xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" modelDirectory="/org.eclipse.jpt.eclipselink.core/src" + creationCommands="false" creationIcons="false" editDirectory="" editorDirectory="" + modelPluginID="org.eclipse.jpt.eclipselink.core" modelName="EclipseLinkCore" editPluginClass="" + editorPluginClass="" updateClasspath="false" rootExtendsInterface="org.eclipse.jpt.core.resource.common.JpaEObject" + rootExtendsClass="org.eclipse.jpt.core.resource.common.AbstractJpaEObject" suppressInterfaces="true" + testsDirectory="" testSuiteClass="" importerID="org.eclipse.emf.importer.ecore" + complianceLevel="5.0" copyrightFields="false" usedGenPackages="platform:/plugin/org.eclipse.emf.ecore/model/Ecore.genmodel#//ecore"> + <foreignModel>elorm.ecore</foreignModel> + <genPackages prefix="EclipseLinkOrm" basePackage="org.eclipse.jpt.eclipselink.core.resource" + disposableProviderFactory="true" adapterFactory="false" ecorePackage="elorm.ecore#/"> + <genEnums typeSafeEnumCompatible="false" ecoreEnum="elorm.ecore#//AccessType"> + <genEnumLiterals ecoreEnumLiteral="elorm.ecore#//AccessType/PROPERTY"/> + <genEnumLiterals ecoreEnumLiteral="elorm.ecore#//AccessType/FIELD"/> + </genEnums> + <genEnums typeSafeEnumCompatible="false" ecoreEnum="elorm.ecore#//DiscriminatorType"> + <genEnumLiterals ecoreEnumLiteral="elorm.ecore#//DiscriminatorType/STRING"/> + <genEnumLiterals ecoreEnumLiteral="elorm.ecore#//DiscriminatorType/CHAR"/> + <genEnumLiterals ecoreEnumLiteral="elorm.ecore#//DiscriminatorType/INTEGER"/> + </genEnums> + <genEnums typeSafeEnumCompatible="false" ecoreEnum="elorm.ecore#//EnumType"> + <genEnumLiterals ecoreEnumLiteral="elorm.ecore#//EnumType/ORDINAL"/> + <genEnumLiterals ecoreEnumLiteral="elorm.ecore#//EnumType/STRING"/> + </genEnums> + <genEnums typeSafeEnumCompatible="false" ecoreEnum="elorm.ecore#//FetchType"> + <genEnumLiterals ecoreEnumLiteral="elorm.ecore#//FetchType/LAZY"/> + <genEnumLiterals ecoreEnumLiteral="elorm.ecore#//FetchType/EAGER"/> + </genEnums> + <genEnums typeSafeEnumCompatible="false" ecoreEnum="elorm.ecore#//GenerationType"> + <genEnumLiterals ecoreEnumLiteral="elorm.ecore#//GenerationType/TABLE"/> + <genEnumLiterals ecoreEnumLiteral="elorm.ecore#//GenerationType/SEQUENCE"/> + <genEnumLiterals ecoreEnumLiteral="elorm.ecore#//GenerationType/IDENTITY"/> + <genEnumLiterals ecoreEnumLiteral="elorm.ecore#//GenerationType/AUTO"/> + </genEnums> + <genEnums typeSafeEnumCompatible="false" ecoreEnum="elorm.ecore#//InheritanceType"> + <genEnumLiterals ecoreEnumLiteral="elorm.ecore#//InheritanceType/SINGLE_TABLE"/> + <genEnumLiterals ecoreEnumLiteral="elorm.ecore#//InheritanceType/JOINED"/> + <genEnumLiterals ecoreEnumLiteral="elorm.ecore#//InheritanceType/TABLE_PER_CLASS"/> + </genEnums> + <genEnums typeSafeEnumCompatible="false" ecoreEnum="elorm.ecore#//TemporalType"> + <genEnumLiterals ecoreEnumLiteral="elorm.ecore#//TemporalType/DATE"/> + <genEnumLiterals ecoreEnumLiteral="elorm.ecore#//TemporalType/TIME"/> + <genEnumLiterals ecoreEnumLiteral="elorm.ecore#//TemporalType/TIMESTAMP"/> + </genEnums> + <genDataTypes ecoreDataType="elorm.ecore#//DiscriminatorValue"/> + <genDataTypes ecoreDataType="elorm.ecore#//Enumerated"/> + <genDataTypes ecoreDataType="elorm.ecore#//OrderBy"/> + <genDataTypes ecoreDataType="elorm.ecore#//VersionType"/> + <genClasses ecoreClass="elorm.ecore#//XmlEntityMappings"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlEntityMappings/version"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlEntityMappings/description"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlEntityMappings/persistenceUnitMetadata"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlEntityMappings/package"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlEntityMappings/schema"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlEntityMappings/catalog"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlEntityMappings/access"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlEntityMappings/sequenceGenerators"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlEntityMappings/tableGenerators"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlEntityMappings/namedQueries"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlEntityMappings/namedNativeQueries"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlEntityMappings/sqlResultSetMappings"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlEntityMappings/mappedSuperclasses"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlEntityMappings/entities"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlEntityMappings/embeddables"/> + </genClasses> + <genClasses ecoreClass="elorm.ecore#//XmlPersistenceUnitMetadata"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlPersistenceUnitMetadata/xmlMappingMetadataComplete"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlPersistenceUnitMetadata/persistenceUnitDefaults"/> + </genClasses> + <genClasses ecoreClass="elorm.ecore#//XmlPersistenceUnitDefaults"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlPersistenceUnitDefaults/schema"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlPersistenceUnitDefaults/catalog"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlPersistenceUnitDefaults/access"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlPersistenceUnitDefaults/cascadePersist"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlPersistenceUnitDefaults/entityListeners"/> + </genClasses> + <genClasses image="false" ecoreClass="elorm.ecore#//AbstractXmlTypeMapping"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//AbstractXmlTypeMapping/className"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//AbstractXmlTypeMapping/access"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//AbstractXmlTypeMapping/metadataComplete"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//AbstractXmlTypeMapping/description"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//AbstractXmlTypeMapping/attributes"/> + </genClasses> + <genClasses ecoreClass="elorm.ecore#//XmlMappedSuperclass"> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlMappedSuperclass/idClass"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlMappedSuperclass/excludeDefaultListeners"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlMappedSuperclass/excludeSuperclassListeners"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlMappedSuperclass/entityListeners"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlMappedSuperclass/prePersist"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlMappedSuperclass/postPersist"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlMappedSuperclass/preRemove"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlMappedSuperclass/postRemove"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlMappedSuperclass/preUpdate"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlMappedSuperclass/postUpdate"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlMappedSuperclass/postLoad"/> + </genClasses> + <genClasses ecoreClass="elorm.ecore#//XmlEntity"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlEntity/name"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlEntity/table"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlEntity/secondaryTables"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlEntity/primaryKeyJoinColumns"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlEntity/idClass"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlEntity/inheritance"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlEntity/discriminatorValue"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlEntity/discriminatorColumn"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlEntity/sequenceGenerator"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlEntity/tableGenerator"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlEntity/namedQueries"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlEntity/namedNativeQueries"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlEntity/sqlResultSetMappings"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlEntity/excludeDefaultListeners"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlEntity/excludeSuperclassListeners"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlEntity/entityListeners"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlEntity/prePersist"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlEntity/postPersist"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlEntity/preRemove"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlEntity/postRemove"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlEntity/preUpdate"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlEntity/postUpdate"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlEntity/postLoad"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlEntity/attributeOverrides"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlEntity/associationOverrides"/> + </genClasses> + <genClasses ecoreClass="elorm.ecore#//XmlEmbeddable"/> + <genClasses ecoreClass="elorm.ecore#//Attributes"> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//Attributes/ids"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//Attributes/embeddedIds"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//Attributes/basics"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//Attributes/versions"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//Attributes/manyToOnes"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//Attributes/oneToManys"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//Attributes/oneToOnes"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//Attributes/manyToManys"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//Attributes/embeddeds"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//Attributes/transients"/> + </genClasses> + <genClasses image="false" ecoreClass="elorm.ecore#//XmlAttributeMapping"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlAttributeMapping/name"/> + </genClasses> + <genClasses image="false" ecoreClass="elorm.ecore#//AbstractXmlAttributeMapping"/> + <genClasses image="false" ecoreClass="elorm.ecore#//XmlNullAttributeMapping"/> + <genClasses ecoreClass="elorm.ecore#//ColumnMapping"> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//ColumnMapping/column"/> + </genClasses> + <genClasses image="false" ecoreClass="elorm.ecore#//XmlRelationshipMapping"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlRelationshipMapping/targetEntity"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlRelationshipMapping/fetch"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlRelationshipMapping/joinTable"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlRelationshipMapping/cascade"/> + </genClasses> + <genClasses image="false" ecoreClass="elorm.ecore#//XmlMultiRelationshipMapping"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlMultiRelationshipMapping/mappedBy"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlMultiRelationshipMapping/orderBy"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlMultiRelationshipMapping/mapKey"/> + </genClasses> + <genClasses image="false" ecoreClass="elorm.ecore#//XmlSingleRelationshipMapping"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlSingleRelationshipMapping/optional"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlSingleRelationshipMapping/joinColumns"/> + </genClasses> + <genClasses image="false" ecoreClass="elorm.ecore#//XmlId"> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlId/generatedValue"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlId/temporal"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlId/tableGenerator"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlId/sequenceGenerator"/> + </genClasses> + <genClasses ecoreClass="elorm.ecore#//XmlIdImpl"/> + <genClasses image="false" ecoreClass="elorm.ecore#//BaseXmlEmbedded"> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//BaseXmlEmbedded/attributeOverrides"/> + </genClasses> + <genClasses image="false" ecoreClass="elorm.ecore#//XmlEmbeddedId"/> + <genClasses ecoreClass="elorm.ecore#//XmlEmbeddedIdImpl"/> + <genClasses image="false" ecoreClass="elorm.ecore#//XmlEmbedded"/> + <genClasses ecoreClass="elorm.ecore#//XmlEmbeddedImpl"/> + <genClasses image="false" ecoreClass="elorm.ecore#//XmlBasic"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlBasic/fetch"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlBasic/optional"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlBasic/lob"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlBasic/temporal"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlBasic/enumerated"/> + </genClasses> + <genClasses ecoreClass="elorm.ecore#//XmlBasicImpl"/> + <genClasses image="false" ecoreClass="elorm.ecore#//XmlVersion"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlVersion/temporal"/> + </genClasses> + <genClasses ecoreClass="elorm.ecore#//XmlVersionImpl"/> + <genClasses image="false" ecoreClass="elorm.ecore#//XmlManyToOne"/> + <genClasses ecoreClass="elorm.ecore#//XmlManyToOneImpl"/> + <genClasses image="false" ecoreClass="elorm.ecore#//XmlOneToMany"> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlOneToMany/joinColumns"/> + </genClasses> + <genClasses ecoreClass="elorm.ecore#//XmlOneToManyImpl"/> + <genClasses image="false" ecoreClass="elorm.ecore#//XmlOneToOne"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlOneToOne/mappedBy"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlOneToOne/primaryKeyJoinColumns"/> + </genClasses> + <genClasses ecoreClass="elorm.ecore#//XmlOneToOneImpl"/> + <genClasses image="false" ecoreClass="elorm.ecore#//XmlManyToMany"/> + <genClasses ecoreClass="elorm.ecore#//XmlManyToManyImpl"/> + <genClasses image="false" ecoreClass="elorm.ecore#//XmlTransient"/> + <genClasses ecoreClass="elorm.ecore#//XmlTransientImpl"/> + <genClasses ecoreClass="elorm.ecore#//XmlAssociationOverride"> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlAssociationOverride/joinColumns"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlAssociationOverride/name"/> + </genClasses> + <genClasses ecoreClass="elorm.ecore#//XmlAssociationOverrideImpl"/> + <genClasses image="false" ecoreClass="elorm.ecore#//XmlAttributeOverride"> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlAttributeOverride/column"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlAttributeOverride/name"/> + </genClasses> + <genClasses ecoreClass="elorm.ecore#//XmlAttributeOverrideImpl"/> + <genClasses ecoreClass="elorm.ecore#//CascadeType"> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EAttribute elorm.ecore#//CascadeType/cascadeAll"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EAttribute elorm.ecore#//CascadeType/cascadePersist"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EAttribute elorm.ecore#//CascadeType/cascadeMerge"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EAttribute elorm.ecore#//CascadeType/cascadeRemove"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EAttribute elorm.ecore#//CascadeType/cascadeRefresh"/> + </genClasses> + <genClasses ecoreClass="elorm.ecore#//CascadeTypeImpl"/> + <genClasses image="false" ecoreClass="elorm.ecore#//XmlNamedColumn"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlNamedColumn/columnDefinition"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlNamedColumn/name"/> + </genClasses> + <genClasses image="false" ecoreClass="elorm.ecore#//AbstractXmlNamedColumn"/> + <genClasses image="false" ecoreClass="elorm.ecore#//XmlAbstractColumn"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlAbstractColumn/insertable"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlAbstractColumn/nullable"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlAbstractColumn/table"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlAbstractColumn/unique"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlAbstractColumn/updatable"/> + </genClasses> + <genClasses image="false" ecoreClass="elorm.ecore#//AbstractXmlAbstractColumn"/> + <genClasses image="false" ecoreClass="elorm.ecore#//XmlColumn"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlColumn/length"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlColumn/precision"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlColumn/scale"/> + </genClasses> + <genClasses ecoreClass="elorm.ecore#//XmlColumnImpl"/> + <genClasses ecoreClass="elorm.ecore#//ColumnResult"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//ColumnResult/name"/> + </genClasses> + <genClasses ecoreClass="elorm.ecore#//XmlDiscriminatorColumn"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlDiscriminatorColumn/discriminatorType"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlDiscriminatorColumn/length"/> + </genClasses> + <genClasses ecoreClass="elorm.ecore#//EntityListeners"> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//EntityListeners/entityListeners"/> + </genClasses> + <genClasses ecoreClass="elorm.ecore#//EntityListener"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//EntityListener/className"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//EntityListener/prePersist"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//EntityListener/postPersist"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//EntityListener/preRemove"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//EntityListener/postRemove"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//EntityListener/preUpdate"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//EntityListener/postUpdate"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//EntityListener/postLoad"/> + </genClasses> + <genClasses ecoreClass="elorm.ecore#//EntityResult"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//EntityResult/discriminatorColumn"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//EntityResult/entityClass"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//EntityResult/fieldResults"/> + </genClasses> + <genClasses ecoreClass="elorm.ecore#//EventMethod"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//EventMethod/methodName"/> + </genClasses> + <genClasses ecoreClass="elorm.ecore#//FieldResult"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//FieldResult/name"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//FieldResult/column"/> + </genClasses> + <genClasses image="false" ecoreClass="elorm.ecore#//XmlGeneratedValue"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlGeneratedValue/generator"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlGeneratedValue/strategy"/> + </genClasses> + <genClasses ecoreClass="elorm.ecore#//XmlGeneratedValueImpl"/> + <genClasses ecoreClass="elorm.ecore#//XmlIdClass"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlIdClass/className"/> + </genClasses> + <genClasses ecoreClass="elorm.ecore#//Inheritance"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//Inheritance/strategy"/> + </genClasses> + <genClasses image="false" ecoreClass="elorm.ecore#//XmlJoinColumn"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlJoinColumn/referencedColumnName"/> + </genClasses> + <genClasses ecoreClass="elorm.ecore#//XmlJoinColumnImpl"/> + <genClasses image="false" ecoreClass="elorm.ecore#//XmlJoinTable"> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlJoinTable/joinColumns"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlJoinTable/inverseJoinColumns"/> + </genClasses> + <genClasses ecoreClass="elorm.ecore#//XmlJoinTableImpl"/> + <genClasses ecoreClass="elorm.ecore#//Lob"/> + <genClasses ecoreClass="elorm.ecore#//MapKey"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//MapKey/name"/> + </genClasses> + <genClasses ecoreClass="elorm.ecore#//MapKeyImpl"/> + <genClasses image="false" ecoreClass="elorm.ecore#//XmlQuery"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlQuery/name"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlQuery/query"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlQuery/hints"/> + </genClasses> + <genClasses ecoreClass="elorm.ecore#//XmlNamedNativeQuery"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlNamedNativeQuery/resultClass"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlNamedNativeQuery/resultSetMapping"/> + </genClasses> + <genClasses ecoreClass="elorm.ecore#//XmlNamedQuery"/> + <genClasses ecoreClass="elorm.ecore#//PostLoad"/> + <genClasses ecoreClass="elorm.ecore#//PostPersist"/> + <genClasses ecoreClass="elorm.ecore#//PostRemove"/> + <genClasses ecoreClass="elorm.ecore#//PostUpdate"/> + <genClasses ecoreClass="elorm.ecore#//PrePersist"/> + <genClasses ecoreClass="elorm.ecore#//PreRemove"/> + <genClasses ecoreClass="elorm.ecore#//PreUpdate"/> + <genClasses ecoreClass="elorm.ecore#//XmlPrimaryKeyJoinColumn"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlPrimaryKeyJoinColumn/referencedColumnName"/> + </genClasses> + <genClasses ecoreClass="elorm.ecore#//XmlPrimaryKeyJoinColumnImpl"/> + <genClasses ecoreClass="elorm.ecore#//XmlQueryHint"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlQueryHint/name"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlQueryHint/value"/> + </genClasses> + <genClasses image="false" ecoreClass="elorm.ecore#//AbstractXmlBaseTable"/> + <genClasses image="false" ecoreClass="elorm.ecore#//XmlBaseTable"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlBaseTable/name"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlBaseTable/catalog"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlBaseTable/schema"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlBaseTable/uniqueConstraints"/> + </genClasses> + <genClasses ecoreClass="elorm.ecore#//XmlTable"/> + <genClasses ecoreClass="elorm.ecore#//XmlSecondaryTable"> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlSecondaryTable/primaryKeyJoinColumns"/> + </genClasses> + <genClasses ecoreClass="elorm.ecore#//XmlSecondaryTableImpl"/> + <genClasses image="false" ecoreClass="elorm.ecore#//XmlGenerator"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlGenerator/name"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlGenerator/initialValue"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlGenerator/allocationSize"/> + </genClasses> + <genClasses image="false" ecoreClass="elorm.ecore#//XmlSequenceGenerator"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlSequenceGenerator/sequenceName"/> + </genClasses> + <genClasses ecoreClass="elorm.ecore#//XmlSequenceGeneratorImpl"/> + <genClasses ecoreClass="elorm.ecore#//SqlResultSetMapping"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//SqlResultSetMapping/name"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//SqlResultSetMapping/entityResults"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//SqlResultSetMapping/columnResults"/> + </genClasses> + <genClasses image="false" ecoreClass="elorm.ecore#//XmlTableGenerator"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlTableGenerator/table"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlTableGenerator/catalog"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlTableGenerator/schema"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlTableGenerator/pkColumnName"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlTableGenerator/valueColumnName"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlTableGenerator/pkColumnValue"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elorm.ecore#//XmlTableGenerator/uniqueConstraints"/> + </genClasses> + <genClasses ecoreClass="elorm.ecore#//XmlTableGeneratorImpl"/> + <genClasses ecoreClass="elorm.ecore#//XmlUniqueConstraint"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elorm.ecore#//XmlUniqueConstraint/columnNames"/> + </genClasses> + <genClasses ecoreClass="elorm.ecore#//XmlUniqueConstraintImpl"/> + </genPackages> +</genmodel:GenModel> diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/plugin.properties b/jpa/plugins/org.eclipse.jpt.eclipselink.core/plugin.properties index 996ecfc042..0fed010545 100644 --- a/jpa/plugins/org.eclipse.jpt.eclipselink.core/plugin.properties +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/plugin.properties @@ -22,3 +22,7 @@ pluginName = Java Persistence API Tools - EclipseLink Support - Core providerName = Eclipse.org + +ECLIPSELINK_ORM_XML_CONTENT = EclipseLink ORM XML Content +ECLIPSELINK_PLATFORM = EclipseLink + diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/plugin.xml b/jpa/plugins/org.eclipse.jpt.eclipselink.core/plugin.xml index 934e184dbf..8f3e8aa535 100644 --- a/jpa/plugins/org.eclipse.jpt.eclipselink.core/plugin.xml +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/plugin.xml @@ -1,12 +1,63 @@ <?xml version="1.0" encoding="UTF-8"?> <?eclipse version="3.2"?> <plugin> - <extension - point="org.eclipse.jpt.core.jpaPlatform"> - <jpaPlatform + + <extension + point="org.eclipse.core.runtime.contentTypes"> + + <content-type + id="org.eclipse.jpt.eclipselink.core.content.orm" + name="%ECLIPSELINK_ORM_XML_CONTENT" + base-type="org.eclipse.core.runtime.xml" + file-names="eclipselink-orm.xml"> + <describer + class="org.eclipse.core.runtime.content.XMLRootElementContentDescriber2"> + <parameter + name="element" + value="{http://www.eclipse.org/eclipselink/xsds/persistence/orm}entity-mappings"/> + </describer> + </content-type> + + </extension> + + + <extension + point="org.eclipse.jpt.core.jpaPlatform"> + + <jpaPlatform + id="org.eclipse.eclipselink.platform" class="org.eclipse.jpt.eclipselink.core.internal.EclipseLinkPlatform" - id="org.eclipse.eclipselink.platform" - label="EclipseLink"> - </jpaPlatform> - </extension> + label="%ECLIPSELINK_PLATFORM"> + </jpaPlatform> + + </extension> + + + <!-- ***** WTP extensions ***** --> + + <extension + point="org.eclipse.wst.common.modulecore.resourceFactories"> + + <resourceFactory + class="org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmResourceFactory" + isDefault="true" + shortSegment="eclipselink-orm.xml"> + <contentTypeBinding + contentTypeId="org.eclipse.jpt.eclipselink.core.content.orm"> + </contentTypeBinding> + </resourceFactory> + + </extension> + + + <extension point="org.eclipse.wst.xml.core.catalogContributions"> + + <catalogContribution id="default"> + <uri + name="http://www.eclipse.org/eclipselink/xsds/eclipselink_orm_1_0.xsd" + uri="schemas/eclipselink_orm_1_0.xsd" /> + </catalogContribution> + + </extension> + </plugin> diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/schemas/eclipselink_orm_1_0.xsd b/jpa/plugins/org.eclipse.jpt.eclipselink.core/schemas/eclipselink_orm_1_0.xsd new file mode 100644 index 0000000000..af1d1dadad --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/schemas/eclipselink_orm_1_0.xsd @@ -0,0 +1,3128 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Java Persistence API object-relational mapping file schema --> +<xsd:schema targetNamespace="http://www.eclipse.org/eclipselink/xsds/persistence/orm" + xmlns:orm="http://www.eclipse.org/eclipselink/xsds/persistence/orm" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" + elementFormDefault="qualified" + attributeFormDefault="unqualified" + version="1.0"> + + <xsd:annotation> + <xsd:documentation> + @(#)eclipselink_orm_1_0.xsd 1.0 February 1 2008 + </xsd:documentation> + </xsd:annotation> + <xsd:annotation> + <xsd:documentation><![CDATA[ + + This is the XML Schema for the new native EclipseLink XML metadata + format used for JPA and native deployment xml files. + + ]]></xsd:documentation> + </xsd:annotation> + + <xsd:complexType name="emptyType"/> + + <xsd:simpleType name="versionType"> + <xsd:restriction base="xsd:token"> + <xsd:pattern value="[0-9]+(\.[0-9]+)*"/> + </xsd:restriction> + </xsd:simpleType> + + <!-- **************************************************** --> + + <xsd:element name="entity-mappings"> + <xsd:complexType> + <xsd:annotation> + <xsd:documentation> + + The entity-mappings element is the root element of an mapping + file. It contains the following four types of elements: + + 1. The persistence-unit-metadata element contains metadata + for the entire persistence unit. It is undefined if this element + occurs in multiple mapping files within the same persistence unit. + + 2. The package, schema, catalog and access elements apply to all of + the entity, mapped-superclass and embeddable elements defined in + the same file in which they occur. + + 3. The sequence-generator, table-generator, named-query, + named-native-query and sql-result-set-mapping elements are global + to the persistence unit. It is undefined to have more than one + sequence-generator or table-generator of the same name in the same + or different mapping files in a persistence unit. It is also + undefined to have more than one named-query or named-native-query + of the same name in the same or different mapping files in a + persistence unit. + + 4. The entity, mapped-superclass and embeddable elements each define + the mapping information for a managed persistent class. The mapping + information contained in these elements may be complete or it may + be partial. + + </xsd:documentation> + </xsd:annotation> + <xsd:sequence> + <xsd:element name="description" type="xsd:string" + minOccurs="0"/> + <xsd:element name="persistence-unit-metadata" + type="orm:persistence-unit-metadata" + minOccurs="0"/> + <xsd:element name="package" type="xsd:string" + minOccurs="0"/> + <xsd:element name="schema" type="xsd:string" + minOccurs="0"/> + <xsd:element name="catalog" type="xsd:string" + minOccurs="0"/> + <xsd:element name="access" type="orm:access-type" + minOccurs="0"/> + <xsd:element name="converter" type="orm:converter" + minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="type-converter" type="orm:type-converter" + minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="object-type-converter" type="orm:object-type-converter" + minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="struct-converter" type="orm:struct-converter" + minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="sequence-generator" type="orm:sequence-generator" + minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="table-generator" type="orm:table-generator" + minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="named-query" type="orm:named-query" + minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="named-native-query" type="orm:named-native-query" + minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="named-stored-procedure-query" type="orm:named-stored-procedure-query" + minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="sql-result-set-mapping" + type="orm:sql-result-set-mapping" + minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="mapped-superclass" type="orm:mapped-superclass" + minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="entity" type="orm:entity" + minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="embeddable" type="orm:embeddable" + minOccurs="0" maxOccurs="unbounded"/> + </xsd:sequence> + <xsd:attribute name="version" type="orm:versionType" + fixed="1.0" use="required"/> + </xsd:complexType> + </xsd:element> + + <!-- **************************************************** --> + + <xsd:complexType name="persistence-unit-metadata"> + <xsd:annotation> + <xsd:documentation> + + Metadata that applies to the persistence unit and not just to + the mapping file in which it is contained. + + If the xml-mapping-metadata-complete element is specified then + the complete set of mapping metadata for the persistence unit + is contained in the XML mapping files for the persistence unit. + + </xsd:documentation> + </xsd:annotation> + <xsd:sequence> + <xsd:element name="xml-mapping-metadata-complete" type="orm:emptyType" + minOccurs="0"/> + <xsd:element name="exclude-default-mappings" type="orm:emptyType" + minOccurs="0"/> + <xsd:element name="persistence-unit-defaults" + type="orm:persistence-unit-defaults" + minOccurs="0"/> + </xsd:sequence> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="persistence-unit-defaults"> + <xsd:annotation> + <xsd:documentation> + + These defaults are applied to the persistence unit as a whole + unless they are overridden by local annotation or XML + element settings. + + schema - Used as the schema for all tables or secondary tables + that apply to the persistence unit + catalog - Used as the catalog for all tables or secondary tables + that apply to the persistence unit + access - Used as the access type for all managed classes in + the persistence unit + cascade-persist - Adds cascade-persist to the set of cascade options + in entity relationships of the persistence unit + entity-listeners - List of default entity listeners to be invoked + on each entity in the persistence unit. + + </xsd:documentation> + </xsd:annotation> + <xsd:sequence> + <xsd:element name="schema" type="xsd:string" + minOccurs="0"/> + <xsd:element name="catalog" type="xsd:string" + minOccurs="0"/> + <xsd:element name="access" type="orm:access-type" + minOccurs="0"/> + <xsd:element name="cascade-persist" type="orm:emptyType" + minOccurs="0"/> + <xsd:element name="entity-listeners" type="orm:entity-listeners" + minOccurs="0"/> + </xsd:sequence> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="entity"> + <xsd:annotation> + <xsd:documentation> + + Defines the settings and mappings for an entity. Is allowed to be + sparsely populated and used in conjunction with the annotations. + Alternatively, the metadata-complete attribute can be used to + indicate that no annotations on the entity class (and its fields + or properties) are to be processed. If this is the case then + the defaulting rules for the entity and its subelements will + be recursively applied. + + @Target(TYPE) @Retention(RUNTIME) + public @interface Entity { + String name() default ""; + } + + </xsd:documentation> + </xsd:annotation> + <xsd:sequence> + <xsd:element name="description" type="xsd:string" minOccurs="0"/> + <xsd:element name="customizer" type="orm:customizer" minOccurs="0"/> + <xsd:element name="change-tracking" type="orm:change-tracking" + minOccurs="0"/> + <xsd:element name="table" type="orm:table" minOccurs="0"/> + <xsd:element name="secondary-table" type="orm:secondary-table" + minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="primary-key-join-column" + type="orm:primary-key-join-column" + minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="id-class" type="orm:id-class" minOccurs="0"/> + <xsd:element name="inheritance" type="orm:inheritance" minOccurs="0"/> + <xsd:element name="discriminator-value" type="orm:discriminator-value" + minOccurs="0"/> + <xsd:element name="discriminator-column" + type="orm:discriminator-column" + minOccurs="0"/> + <xsd:element name="optimistic-locking" type="orm:optimistic-locking" + minOccurs="0"/> + <xsd:element name="cache" type="orm:cache" minOccurs="0"/> + <xsd:element name="converter" type="orm:converter" + minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="type-converter" type="orm:type-converter" + minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="object-type-converter" type="orm:object-type-converter" + minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="struct-converter" type="orm:struct-converter" + minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="copy-policy" type="orm:copy-policy" + minOccurs="0" maxOccurs="1"/> + <xsd:element name="instantiation-copy-policy" type="orm:instantiation-copy-policy" + minOccurs="0" maxOccurs="1"/> + <xsd:element name="clone-copy-policy" type="orm:clone-copy-policy" + minOccurs="0" maxOccurs="1"/> + <xsd:element name="sequence-generator" type="orm:sequence-generator" + minOccurs="0"/> + <xsd:element name="table-generator" type="orm:table-generator" + minOccurs="0"/> + <xsd:element name="named-query" type="orm:named-query" + minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="named-native-query" type="orm:named-native-query" + minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="named-stored-procedure-query" type="orm:named-stored-procedure-query" + minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="sql-result-set-mapping" + type="orm:sql-result-set-mapping" + minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="exclude-default-listeners" type="orm:emptyType" + minOccurs="0"/> + <xsd:element name="exclude-superclass-listeners" type="orm:emptyType" + minOccurs="0"/> + <xsd:element name="entity-listeners" type="orm:entity-listeners" + minOccurs="0"/> + <xsd:element name="pre-persist" type="orm:pre-persist" minOccurs="0"/> + <xsd:element name="post-persist" type="orm:post-persist" + minOccurs="0"/> + <xsd:element name="pre-remove" type="orm:pre-remove" minOccurs="0"/> + <xsd:element name="post-remove" type="orm:post-remove" minOccurs="0"/> + <xsd:element name="pre-update" type="orm:pre-update" minOccurs="0"/> + <xsd:element name="post-update" type="orm:post-update" minOccurs="0"/> + <xsd:element name="post-load" type="orm:post-load" minOccurs="0"/> + <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="attribute-override" type="orm:attribute-override" + minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="association-override" type="orm:association-override" + minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="attributes" type="orm:attributes" minOccurs="0"/> + </xsd:sequence> + <xsd:attribute name="name" type="xsd:string"/> + <xsd:attribute name="class" type="xsd:string" use="required"/> + <xsd:attribute name="access" type="orm:access-type"/> + <xsd:attribute name="metadata-complete" type="xsd:boolean"/> + <xsd:attribute name="read-only" type="xsd:boolean"/> + <xsd:attribute name="existence-checking" type="orm:existence-type"/> + <xsd:attribute name="exclude-default-mappings" type="xsd:boolean"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="attributes"> + <xsd:annotation> + <xsd:documentation> + + This element contains the entity field or property mappings. + It may be sparsely populated to include only a subset of the + fields or properties. If metadata-complete for the entity is true + then the remainder of the attributes will be defaulted according + to the default rules. + + </xsd:documentation> + </xsd:annotation> + <xsd:sequence> + <xsd:choice> + <xsd:element name="id" type="orm:id" + minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="embedded-id" type="orm:embedded-id" + minOccurs="0"/> + </xsd:choice> + <xsd:element name="basic" type="orm:basic" + minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="basic-collection" type="orm:basic-collection" + minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="basic-map" type="orm:basic-map" + minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="version" type="orm:version" + minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="many-to-one" type="orm:many-to-one" + minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="one-to-many" type="orm:one-to-many" + minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="one-to-one" type="orm:one-to-one" + minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="variable-one-to-one" type="orm:variable-one-to-one" + minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="many-to-many" type="orm:many-to-many" + minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="embedded" type="orm:embedded" + minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="transformation" type="orm:transformation" + minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="transient" type="orm:transient" + minOccurs="0" maxOccurs="unbounded"/> + </xsd:sequence> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:simpleType name="access-type"> + <xsd:annotation> + <xsd:documentation> + + This element determines how the persistence provider accesses the + state of an entity or embedded object. + + </xsd:documentation> + </xsd:annotation> + <xsd:restriction base="xsd:token"> + <xsd:enumeration value="PROPERTY"/> + <xsd:enumeration value="FIELD"/> + </xsd:restriction> + </xsd:simpleType> + + <!-- **************************************************** --> + + <xsd:complexType name="entity-listeners"> + <xsd:annotation> + <xsd:documentation> + + @Target({TYPE}) @Retention(RUNTIME) + public @interface EntityListeners { + Class[] value(); + } + + </xsd:documentation> + </xsd:annotation> + <xsd:sequence> + <xsd:element name="entity-listener" type="orm:entity-listener" + minOccurs="0" maxOccurs="unbounded"/> + </xsd:sequence> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="entity-listener"> + <xsd:annotation> + <xsd:documentation> + + Defines an entity listener to be invoked at lifecycle events + for the entities that list this listener. + + </xsd:documentation> + </xsd:annotation> + <xsd:sequence> + <xsd:element name="pre-persist" type="orm:pre-persist" minOccurs="0"/> + <xsd:element name="post-persist" type="orm:post-persist" + minOccurs="0"/> + <xsd:element name="pre-remove" type="orm:pre-remove" minOccurs="0"/> + <xsd:element name="post-remove" type="orm:post-remove" minOccurs="0"/> + <xsd:element name="pre-update" type="orm:pre-update" minOccurs="0"/> + <xsd:element name="post-update" type="orm:post-update" minOccurs="0"/> + <xsd:element name="post-load" type="orm:post-load" minOccurs="0"/> + </xsd:sequence> + <xsd:attribute name="class" type="xsd:string" use="required"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="pre-persist"> + <xsd:annotation> + <xsd:documentation> + + @Target({METHOD}) @Retention(RUNTIME) + public @interface PrePersist {} + + </xsd:documentation> + </xsd:annotation> + <xsd:attribute name="method-name" type="xsd:string" use="required"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="post-persist"> + <xsd:annotation> + <xsd:documentation> + + @Target({METHOD}) @Retention(RUNTIME) + public @interface PostPersist {} + + </xsd:documentation> + </xsd:annotation> + <xsd:attribute name="method-name" type="xsd:string" use="required"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="pre-remove"> + <xsd:annotation> + <xsd:documentation> + + @Target({METHOD}) @Retention(RUNTIME) + public @interface PreRemove {} + + </xsd:documentation> + </xsd:annotation> + <xsd:attribute name="method-name" type="xsd:string" use="required"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="post-remove"> + <xsd:annotation> + <xsd:documentation> + + @Target({METHOD}) @Retention(RUNTIME) + public @interface PostRemove {} + + </xsd:documentation> + </xsd:annotation> + <xsd:attribute name="method-name" type="xsd:string" use="required"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="pre-update"> + <xsd:annotation> + <xsd:documentation> + + @Target({METHOD}) @Retention(RUNTIME) + public @interface PreUpdate {} + + </xsd:documentation> + </xsd:annotation> + <xsd:attribute name="method-name" type="xsd:string" use="required"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="post-update"> + <xsd:annotation> + <xsd:documentation> + + @Target({METHOD}) @Retention(RUNTIME) + public @interface PostUpdate {} + + </xsd:documentation> + </xsd:annotation> + <xsd:attribute name="method-name" type="xsd:string" use="required"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="post-load"> + <xsd:annotation> + <xsd:documentation> + + @Target({METHOD}) @Retention(RUNTIME) + public @interface PostLoad {} + + </xsd:documentation> + </xsd:annotation> + <xsd:attribute name="method-name" type="xsd:string" use="required"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="property"> + <xsd:annotation> + <xsd:documentation> + A user defined mapping's property. + @Target({METHOD, FIELD, TYPE}) + @Retention(RUNTIME) + public @interface Property { + /** + * Property name. + */ + String name(); + + /** + * String representation of Property value, + * converted to an instance of valueType. + */ + String value(); + + /** + * Property value type. + * The value converted to valueType by ConversionManager. + * If specified must be a simple type that could be handled by + * ConversionManager: + * numerical, boolean, temporal. + */ + Class valueType() default String.class; + } + </xsd:documentation> + </xsd:annotation> + <xsd:attribute name="name" type="xsd:string" use="required"/> + <xsd:attribute name="value" type="xsd:string" use="required"/> + <xsd:attribute name="value-type" type="xsd:string"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="query-hint"> + <xsd:annotation> + <xsd:documentation> + + @Target({}) @Retention(RUNTIME) + public @interface QueryHint { + String name(); + String value(); + } + + </xsd:documentation> + </xsd:annotation> + <xsd:attribute name="name" type="xsd:string" use="required"/> + <xsd:attribute name="value" type="xsd:string" use="required"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="named-query"> + <xsd:annotation> + <xsd:documentation> + + @Target({TYPE}) @Retention(RUNTIME) + public @interface NamedQuery { + String name(); + String query(); + QueryHint[] hints() default {}; + } + + </xsd:documentation> + </xsd:annotation> + <xsd:sequence> + <xsd:element name="query" type="xsd:string"/> + <xsd:element name="hint" type="orm:query-hint" + minOccurs="0" maxOccurs="unbounded"/> + </xsd:sequence> + <xsd:attribute name="name" type="xsd:string" use="required"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="named-native-query"> + <xsd:annotation> + <xsd:documentation> + + @Target({TYPE}) @Retention(RUNTIME) + public @interface NamedNativeQuery { + String name(); + String query(); + QueryHint[] hints() default {}; + Class resultClass() default void.class; + String resultSetMapping() default ""; //named SqlResultSetMapping + } + + </xsd:documentation> + </xsd:annotation> + <xsd:sequence> + <xsd:element name="query" type="xsd:string"/> + <xsd:element name="hint" type="orm:query-hint" + minOccurs="0" maxOccurs="unbounded"/> + </xsd:sequence> + <xsd:attribute name="name" type="xsd:string" use="required"/> + <xsd:attribute name="result-class" type="xsd:string"/> + <xsd:attribute name="result-set-mapping" type="xsd:string"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="sql-result-set-mapping"> + <xsd:annotation> + <xsd:documentation> + + @Target({TYPE}) @Retention(RUNTIME) + public @interface SqlResultSetMapping { + String name(); + EntityResult[] entities() default {}; + ColumnResult[] columns() default {}; + } + + </xsd:documentation> + </xsd:annotation> + <xsd:sequence> + <xsd:element name="entity-result" type="orm:entity-result" + minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="column-result" type="orm:column-result" + minOccurs="0" maxOccurs="unbounded"/> + </xsd:sequence> + <xsd:attribute name="name" type="xsd:string" use="required"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="entity-result"> + <xsd:annotation> + <xsd:documentation> + + @Target({}) @Retention(RUNTIME) + public @interface EntityResult { + Class entityClass(); + FieldResult[] fields() default {}; + String discriminatorColumn() default ""; + } + + </xsd:documentation> + </xsd:annotation> + <xsd:sequence> + <xsd:element name="field-result" type="orm:field-result" + minOccurs="0" maxOccurs="unbounded"/> + </xsd:sequence> + <xsd:attribute name="entity-class" type="xsd:string" use="required"/> + <xsd:attribute name="discriminator-column" type="xsd:string"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="field-result"> + <xsd:annotation> + <xsd:documentation> + + @Target({}) @Retention(RUNTIME) + public @interface FieldResult { + String name(); + String column(); + } + + </xsd:documentation> + </xsd:annotation> + <xsd:attribute name="name" type="xsd:string" use="required"/> + <xsd:attribute name="column" type="xsd:string" use="required"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="column-result"> + <xsd:annotation> + <xsd:documentation> + + @Target({}) @Retention(RUNTIME) + public @interface ColumnResult { + String name(); + } + + </xsd:documentation> + </xsd:annotation> + <xsd:attribute name="name" type="xsd:string" use="required"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="table"> + <xsd:annotation> + <xsd:documentation> + + @Target({TYPE}) @Retention(RUNTIME) + public @interface Table { + String name() default ""; + String catalog() default ""; + String schema() default ""; + UniqueConstraint[] uniqueConstraints() default {}; + } + + </xsd:documentation> + </xsd:annotation> + <xsd:sequence> + <xsd:element name="unique-constraint" type="orm:unique-constraint" + minOccurs="0" maxOccurs="unbounded"/> + </xsd:sequence> + <xsd:attribute name="name" type="xsd:string"/> + <xsd:attribute name="catalog" type="xsd:string"/> + <xsd:attribute name="schema" type="xsd:string"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="secondary-table"> + <xsd:annotation> + <xsd:documentation> + + @Target({TYPE}) @Retention(RUNTIME) + public @interface SecondaryTable { + String name(); + String catalog() default ""; + String schema() default ""; + PrimaryKeyJoinColumn[] pkJoinColumns() default {}; + UniqueConstraint[] uniqueConstraints() default {}; + } + + </xsd:documentation> + </xsd:annotation> + <xsd:sequence> + <xsd:element name="primary-key-join-column" + type="orm:primary-key-join-column" + minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="unique-constraint" type="orm:unique-constraint" + minOccurs="0" maxOccurs="unbounded"/> + </xsd:sequence> + <xsd:attribute name="name" type="xsd:string" use="required"/> + <xsd:attribute name="catalog" type="xsd:string"/> + <xsd:attribute name="schema" type="xsd:string"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="unique-constraint"> + <xsd:annotation> + <xsd:documentation> + + @Target({}) @Retention(RUNTIME) + public @interface UniqueConstraint { + String[] columnNames(); + } + + </xsd:documentation> + </xsd:annotation> + <xsd:sequence> + <xsd:element name="column-name" type="xsd:string" + maxOccurs="unbounded"/> + </xsd:sequence> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="column"> + <xsd:annotation> + <xsd:documentation> + + @Target({METHOD, FIELD}) @Retention(RUNTIME) + public @interface Column { + String name() default ""; + boolean unique() default false; + boolean nullable() default true; + boolean insertable() default true; + boolean updatable() default true; + String columnDefinition() default ""; + String table() default ""; + int length() default 255; + int precision() default 0; // decimal precision + int scale() default 0; // decimal scale + } + + </xsd:documentation> + </xsd:annotation> + <xsd:attribute name="name" type="xsd:string"/> + <xsd:attribute name="unique" type="xsd:boolean"/> + <xsd:attribute name="nullable" type="xsd:boolean"/> + <xsd:attribute name="insertable" type="xsd:boolean"/> + <xsd:attribute name="updatable" type="xsd:boolean"/> + <xsd:attribute name="column-definition" type="xsd:string"/> + <xsd:attribute name="table" type="xsd:string"/> + <xsd:attribute name="length" type="xsd:int"/> + <xsd:attribute name="precision" type="xsd:int"/> + <xsd:attribute name="scale" type="xsd:int"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="join-column"> + <xsd:annotation> + <xsd:documentation> + + @Target({METHOD, FIELD}) @Retention(RUNTIME) + public @interface JoinColumn { + String name() default ""; + String referencedColumnName() default ""; + boolean unique() default false; + boolean nullable() default true; + boolean insertable() default true; + boolean updatable() default true; + String columnDefinition() default ""; + String table() default ""; + } + + </xsd:documentation> + </xsd:annotation> + <xsd:attribute name="name" type="xsd:string"/> + <xsd:attribute name="referenced-column-name" type="xsd:string"/> + <xsd:attribute name="unique" type="xsd:boolean"/> + <xsd:attribute name="nullable" type="xsd:boolean"/> + <xsd:attribute name="insertable" type="xsd:boolean"/> + <xsd:attribute name="updatable" type="xsd:boolean"/> + <xsd:attribute name="column-definition" type="xsd:string"/> + <xsd:attribute name="table" type="xsd:string"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:simpleType name="generation-type"> + <xsd:annotation> + <xsd:documentation> + + public enum GenerationType { TABLE, SEQUENCE, IDENTITY, AUTO }; + + </xsd:documentation> + </xsd:annotation> + <xsd:restriction base="xsd:token"> + <xsd:enumeration value="TABLE"/> + <xsd:enumeration value="SEQUENCE"/> + <xsd:enumeration value="IDENTITY"/> + <xsd:enumeration value="AUTO"/> + </xsd:restriction> + </xsd:simpleType> + + <!-- **************************************************** --> + + <xsd:complexType name="access-methods"> + <xsd:annotation> + <xsd:documentation> + + </xsd:documentation> + </xsd:annotation> + <xsd:attribute name="get-method" type="xsd:string" use="required"/> + <xsd:attribute name="set-method" type="xsd:string" use="required"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="attribute-override"> + <xsd:annotation> + <xsd:documentation> + + @Target({TYPE, METHOD, FIELD}) @Retention(RUNTIME) + public @interface AttributeOverride { + String name(); + Column column(); + } + + </xsd:documentation> + </xsd:annotation> + <xsd:sequence> + <xsd:element name="column" type="orm:column"/> + </xsd:sequence> + <xsd:attribute name="name" type="xsd:string" use="required"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="association-override"> + <xsd:annotation> + <xsd:documentation> + + @Target({TYPE, METHOD, FIELD}) @Retention(RUNTIME) + public @interface AssociationOverride { + String name(); + JoinColumn[] joinColumns(); + } + + </xsd:documentation> + </xsd:annotation> + <xsd:sequence> + <xsd:element name="join-column" type="orm:join-column" + maxOccurs="unbounded"/> + </xsd:sequence> + <xsd:attribute name="name" type="xsd:string" use="required"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="id-class"> + <xsd:annotation> + <xsd:documentation> + + @Target({TYPE}) @Retention(RUNTIME) + public @interface IdClass { + Class value(); + } + + </xsd:documentation> + </xsd:annotation> + <xsd:attribute name="class" type="xsd:string" use="required"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="id"> + <xsd:annotation> + <xsd:documentation> + + @Target({METHOD, FIELD}) @Retention(RUNTIME) + public @interface Id {} + + </xsd:documentation> + </xsd:annotation> + <xsd:sequence> + <xsd:element name="column" type="orm:column" minOccurs="0"/> + <xsd:element name="generated-value" type="orm:generated-value" minOccurs="0"/> + <xsd:element name="temporal" type="orm:temporal" minOccurs="0"/> + <xsd:element name="convert" type="xsd:string" minOccurs="0"/> + <xsd:element name="table-generator" type="orm:table-generator" minOccurs="0"/> + <xsd:element name="sequence-generator" type="orm:sequence-generator" minOccurs="0"/> + <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="access-methods" type="orm:access-methods" + minOccurs="0" maxOccurs="1"/> + </xsd:sequence> + <xsd:attribute name="name" type="xsd:string" use="required"/> + <xsd:attribute name="mutable" type="xsd:boolean"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="embedded-id"> + <xsd:annotation> + <xsd:documentation> + + @Target({METHOD, FIELD}) @Retention(RUNTIME) + public @interface EmbeddedId {} + + </xsd:documentation> + </xsd:annotation> + <xsd:sequence> + <xsd:element name="attribute-override" type="orm:attribute-override" + minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="access-methods" type="orm:access-methods" + minOccurs="0" maxOccurs="1"/> + </xsd:sequence> + <xsd:attribute name="name" type="xsd:string" use="required"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="transient"> + <xsd:annotation> + <xsd:documentation> + + @Target({METHOD, FIELD}) @Retention(RUNTIME) + public @interface Transient {} + + </xsd:documentation> + </xsd:annotation> + <xsd:attribute name="name" type="xsd:string" use="required"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="version"> + <xsd:annotation> + <xsd:documentation> + + @Target({METHOD, FIELD}) @Retention(RUNTIME) + public @interface Version {} + + </xsd:documentation> + </xsd:annotation> + <xsd:sequence> + <xsd:element name="column" type="orm:column" minOccurs="0"/> + <xsd:element name="temporal" type="orm:temporal" minOccurs="0"/> + <xsd:element name="convert" type="xsd:string" minOccurs="0"/> + <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="access-methods" type="orm:access-methods" + minOccurs="0" maxOccurs="1"/> + </xsd:sequence> + <xsd:attribute name="name" type="xsd:string" use="required"/> + <xsd:attribute name="mutable" type="xsd:boolean"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="basic"> + <xsd:annotation> + <xsd:documentation> + + @Target({METHOD, FIELD}) @Retention(RUNTIME) + public @interface Basic { + FetchType fetch() default EAGER; + boolean optional() default true; + } + + </xsd:documentation> + </xsd:annotation> + <xsd:sequence> + <xsd:element name="column" type="orm:column" minOccurs="0"/> + <xsd:choice> + <xsd:element name="lob" type="orm:lob" minOccurs="0"/> + <xsd:element name="temporal" type="orm:temporal" minOccurs="0"/> + <xsd:element name="enumerated" type="orm:enumerated" minOccurs="0"/> + <xsd:element name="convert" type="xsd:string" minOccurs="0"/> + </xsd:choice> + <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="access-methods" type="orm:access-methods" + minOccurs="0" maxOccurs="1"/> + </xsd:sequence> + <xsd:attribute name="name" type="xsd:string" use="required"/> + <xsd:attribute name="fetch" type="orm:fetch-type"/> + <xsd:attribute name="optional" type="xsd:boolean"/> + <xsd:attribute name="mutable" type="xsd:boolean"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="read-transformer"> + <xsd:annotation> + <xsd:documentation> + + /** + * Annotation for org.eclipse.persistence.mappings.TransformationMapping. + * Unless the TransformationMapping is write-only, it should have a + * ReadTransformer, it defines transformation of database column(s) + * value(s)into attribute value. + * + * Also unless it's a read-only mapping, either WriteTransformer + * annotation or WriteTransformers annotation should be specified. Each + * WriteTransformer defines transformation of the attribute value to a + * single database column value (column is specified in the + * WriteTransformer). + */ + @Target({METHOD, FIELD}) + @Retention(RUNTIME) + public @interface ReadTransformer { + /** + * User-defined class that must implement the + * org.eclipse.persistence.mappings.transformers.AttributeTransformer + * interface. The class will be instantiated, its + * buildAttributeValue will be used to create the value to be + * assigned to the attribute. + * Either transformerClass or method must be specified, but not both. + */ + Class transformerClass() default void.class; + + /** + * The mapped class must have a method with this name which returns + * a value to be assigned to the attribute (not assigns the value to + * the attribute). Either transformerClass or method must be + * specified, but not both. + */ + String method() default ""; + } + + </xsd:documentation> + </xsd:annotation> + <xsd:attribute name="transformer-class" type="xsd:string"/> + <xsd:attribute name="method" type="xsd:string"/> + </xsd:complexType> + + <xsd:complexType name="write-transformer"> + <xsd:annotation> + <xsd:documentation> + + /** + * Annotation for org.eclipse.persistence.mappings.TransformationMapping. + * WriteTransformer defines transformation of the attribute value to a + * single database column value (column is specified in the + * WriteTransformer). + * + * A single WriteTransformer may be specified directly on the method or + * attribute. Multiple WriteTransformers should be wrapped into + * WriteTransformers annotation. No WriteTransformers specified for + * read-only mapping. Unless the TransformationMapping is write-only, it + * should have a ReadTransformer, it defines transformation of database + * column(s) value(s)into attribute value. + */ + @Target({METHOD, FIELD}) + @Retention(RUNTIME) + public @interface WriteTransformer { + /** + * User-defined class that must implement the + * org.eclipse.persistence.mappings.transformers.FieldTransformer + * interface. The class will be instantiated, its buildFieldValue + * will be used to create the value to be written into the database + * column. Note that for ddl generation and returning to be + * supported the method buildFieldValue in the class should be + * defined to return the relevant Java type, not just Object as + * defined in the interface, for instance: + * public Time buildFieldValue(Object instance, String fieldName, Session session). + * Either transformerClass or method must be specified, but not both. + */ + Class transformerClass() default void.class; + + /** + * The mapped class must have a method with this name which returns + * a value to be written into the database column. + * Note that for ddl generation and returning to be supported the + * method should be defined to return a particular type, not just + * Object, for instance: + * public Time getStartTime(). + * The method may require a Transient annotation to avoid being + * mapped as Basic by default. + * Either transformerClass or method must be specified, but not both. + */ + String method() default ""; + + /** + * Specify here the column into which the value should be written. + * The only case when this could be skipped is if a single + * WriteTransformer annotates an attribute - the attribute's name + * will be used as a column name. + */ + Column column() default @Column; + } + + </xsd:documentation> + </xsd:annotation> + <xsd:sequence> + <xsd:element name="column" type="orm:column"/> + </xsd:sequence> + <xsd:attribute name="transformer-class" type="xsd:string"/> + <xsd:attribute name="method" type="xsd:string"/> + </xsd:complexType> + + <xsd:complexType name="transformation"> + <xsd:annotation> + <xsd:documentation> + + /** + * Transformation is an optional annotation for + * org.eclipse.persistence.mappings.TransformationMapping. + * TransformationMapping allows to map an attribute to one or more + * database columns. + * + * Transformation annotation is an optional part of + * TransformationMapping definition. Unless the TransformationMapping is + * write-only, it should have a ReadTransformer, it defines + * transformation of database column(s) value(s)into attribute value. + * Also unless it's a read-only mapping, either WriteTransformer + * annotation or WriteTransformers annotation should be specified. Each + * WriteTransformer defines transformation of the attribute value to a + * single database column value (column is specified in the + * WriteTransformer). + */ + @Target({METHOD, FIELD}) + @Retention(RUNTIME) + public @interface Transformation { + /** + * (Optional) Defines whether the value of the field or property + * should be lazily loaded or must be eagerly fetched. The EAGER + * strategy is a requirement on the persistence provider runtime + * that the value must be eagerly fetched. The LAZY strategy is a + * hint to the persistence provider runtime. If not specified, + * defaults to EAGER. + */ + FetchType fetch() default EAGER; + + /** + * (Optional) The optional element is a hint as to whether the value + * of the field or property may be null. It is disregarded + * for primitive types, which are considered non-optional. + */ + boolean optional() default true; + } + + </xsd:documentation> + </xsd:annotation> + <xsd:sequence> + <xsd:element name="read-transformer" type="orm:read-transformer"/> + <xsd:element name="write-transformer" type="orm:write-transformer" minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="access" type="orm:access-type" minOccurs="0"/> + <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="access-methods" type="orm:access-methods" + minOccurs="0" maxOccurs="1"/> + </xsd:sequence> + <xsd:attribute name="name" type="xsd:string" use="required"/> + <xsd:attribute name="fetch" type="orm:fetch-type"/> + <xsd:attribute name="optional" type="xsd:boolean"/> + <xsd:attribute name="mutable" type="xsd:boolean"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:simpleType name="fetch-type"> + <xsd:annotation> + <xsd:documentation> + + public enum FetchType { LAZY, EAGER }; + + </xsd:documentation> + </xsd:annotation> + <xsd:restriction base="xsd:token"> + <xsd:enumeration value="LAZY"/> + <xsd:enumeration value="EAGER"/> + </xsd:restriction> + </xsd:simpleType> + + <!-- **************************************************** --> + + <xsd:complexType name="lob"> + <xsd:annotation> + <xsd:documentation> + + @Target({METHOD, FIELD}) @Retention(RUNTIME) + public @interface Lob {} + + </xsd:documentation> + </xsd:annotation> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:simpleType name="temporal"> + <xsd:annotation> + <xsd:documentation> + + @Target({METHOD, FIELD}) @Retention(RUNTIME) + public @interface Temporal { + TemporalType value(); + } + + </xsd:documentation> + </xsd:annotation> + <xsd:restriction base="orm:temporal-type"/> + </xsd:simpleType> + + <!-- **************************************************** --> + + <xsd:simpleType name="temporal-type"> + <xsd:annotation> + <xsd:documentation> + + public enum TemporalType { + DATE, // java.sql.Date + TIME, // java.sql.Time + TIMESTAMP // java.sql.Timestamp + } + + </xsd:documentation> + </xsd:annotation> + <xsd:restriction base="xsd:token"> + <xsd:enumeration value="DATE"/> + <xsd:enumeration value="TIME"/> + <xsd:enumeration value="TIMESTAMP"/> + </xsd:restriction> + </xsd:simpleType> + + <!-- **************************************************** --> + + <xsd:simpleType name="enumerated"> + <xsd:annotation> + <xsd:documentation> + + @Target({METHOD, FIELD}) @Retention(RUNTIME) + public @interface Enumerated { + EnumType value() default ORDINAL; + } + + </xsd:documentation> + </xsd:annotation> + <xsd:restriction base="orm:enum-type"/> + </xsd:simpleType> + + <!-- **************************************************** --> + + <xsd:simpleType name="enum-type"> + <xsd:annotation> + <xsd:documentation> + + public enum EnumType { + ORDINAL, + STRING + } + + </xsd:documentation> + </xsd:annotation> + <xsd:restriction base="xsd:token"> + <xsd:enumeration value="ORDINAL"/> + <xsd:enumeration value="STRING"/> + </xsd:restriction> + </xsd:simpleType> + + <!-- **************************************************** --> + + <xsd:complexType name="many-to-one"> + <xsd:annotation> + <xsd:documentation> + + @Target({METHOD, FIELD}) @Retention(RUNTIME) + public @interface ManyToOne { + Class targetEntity() default void.class; + CascadeType[] cascade() default {}; + FetchType fetch() default EAGER; + boolean optional() default true; + } + + </xsd:documentation> + </xsd:annotation> + <xsd:sequence> + <xsd:choice> + <xsd:element name="join-column" type="orm:join-column" minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="join-table" type="orm:join-table" minOccurs="0"/> + </xsd:choice> + <xsd:element name="cascade" type="orm:cascade-type" minOccurs="0"/> + <xsd:element name="join-fetch" type="orm:join-fetch-type" minOccurs="0"/> + <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="access-methods" type="orm:access-methods" + minOccurs="0" maxOccurs="1"/> + </xsd:sequence> + <xsd:attribute name="name" type="xsd:string" use="required"/> + <xsd:attribute name="target-entity" type="xsd:string"/> + <xsd:attribute name="fetch" type="orm:fetch-type"/> + <xsd:attribute name="optional" type="xsd:boolean"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="cascade-type"> + <xsd:annotation> + <xsd:documentation> + + public enum CascadeType { ALL, PERSIST, MERGE, REMOVE, REFRESH}; + + </xsd:documentation> + </xsd:annotation> + <xsd:sequence> + <xsd:element name="cascade-all" type="orm:emptyType" + minOccurs="0"/> + <xsd:element name="cascade-persist" type="orm:emptyType" + minOccurs="0"/> + <xsd:element name="cascade-merge" type="orm:emptyType" + minOccurs="0"/> + <xsd:element name="cascade-remove" type="orm:emptyType" + minOccurs="0"/> + <xsd:element name="cascade-refresh" type="orm:emptyType" + minOccurs="0"/> + </xsd:sequence> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="one-to-one"> + <xsd:annotation> + <xsd:documentation> + + @Target({METHOD, FIELD}) @Retention(RUNTIME) + public @interface OneToOne { + Class targetEntity() default void.class; + CascadeType[] cascade() default {}; + FetchType fetch() default EAGER; + boolean optional() default true; + String mappedBy() default ""; + } + + </xsd:documentation> + </xsd:annotation> + <xsd:sequence> + <xsd:choice> + <xsd:element name="primary-key-join-column" type="orm:primary-key-join-column" minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="join-column" type="orm:join-column" minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="join-table" type="orm:join-table" minOccurs="0"/> + </xsd:choice> + <xsd:element name="cascade" type="orm:cascade-type" minOccurs="0"/> + <xsd:element name="private-owned" type="orm:emptyType" minOccurs="0"/> + <xsd:element name="join-fetch" type="orm:join-fetch-type" minOccurs="0"/> + <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="access-methods" type="orm:access-methods" + minOccurs="0" maxOccurs="1"/> + </xsd:sequence> + <xsd:attribute name="name" type="xsd:string" use="required"/> + <xsd:attribute name="target-entity" type="xsd:string"/> + <xsd:attribute name="fetch" type="orm:fetch-type"/> + <xsd:attribute name="optional" type="xsd:boolean"/> + <xsd:attribute name="mapped-by" type="xsd:string"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="one-to-many"> + <xsd:annotation> + <xsd:documentation> + + @Target({METHOD, FIELD}) @Retention(RUNTIME) + public @interface OneToMany { + Class targetEntity() default void.class; + CascadeType[] cascade() default {}; + FetchType fetch() default LAZY; + String mappedBy() default ""; + } + + </xsd:documentation> + </xsd:annotation> + <xsd:sequence> + <xsd:element name="order-by" type="orm:order-by" minOccurs="0"/> + <xsd:element name="map-key" type="orm:map-key" minOccurs="0"/> + <xsd:choice> + <xsd:element name="join-table" type="orm:join-table" minOccurs="0"/> + <xsd:element name="join-column" type="orm:join-column" minOccurs="0" maxOccurs="unbounded"/> + </xsd:choice> + <xsd:element name="cascade" type="orm:cascade-type" minOccurs="0"/> + <xsd:element name="private-owned" type="orm:emptyType" minOccurs="0"/> + <xsd:element name="join-fetch" type="orm:join-fetch-type" minOccurs="0"/> + <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="access-methods" type="orm:access-methods" + minOccurs="0" maxOccurs="1"/> + </xsd:sequence> + <xsd:attribute name="name" type="xsd:string" use="required"/> + <xsd:attribute name="target-entity" type="xsd:string"/> + <xsd:attribute name="fetch" type="orm:fetch-type"/> + <xsd:attribute name="mapped-by" type="xsd:string"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="join-table"> + <xsd:annotation> + <xsd:documentation> + + @Target({METHOD, FIELD}) + public @interface JoinTable { + String name() default ""; + String catalog() default ""; + String schema() default ""; + JoinColumn[] joinColumns() default {}; + JoinColumn[] inverseJoinColumns() default {}; + UniqueConstraint[] uniqueConstraints() default {}; + } + + </xsd:documentation> + </xsd:annotation> + <xsd:sequence> + <xsd:element name="join-column" type="orm:join-column" + minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="inverse-join-column" type="orm:join-column" + minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="unique-constraint" type="orm:unique-constraint" + minOccurs="0" maxOccurs="unbounded"/> + </xsd:sequence> + <xsd:attribute name="name" type="xsd:string"/> + <xsd:attribute name="catalog" type="xsd:string"/> + <xsd:attribute name="schema" type="xsd:string"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="many-to-many"> + <xsd:annotation> + <xsd:documentation> + + @Target({METHOD, FIELD}) @Retention(RUNTIME) + public @interface ManyToMany { + Class targetEntity() default void.class; + CascadeType[] cascade() default {}; + FetchType fetch() default LAZY; + String mappedBy() default ""; + } + + </xsd:documentation> + </xsd:annotation> + <xsd:sequence> + <xsd:element name="order-by" type="orm:order-by" minOccurs="0"/> + <xsd:element name="map-key" type="orm:map-key" minOccurs="0"/> + <xsd:element name="join-table" type="orm:join-table" minOccurs="0"/> + <xsd:element name="cascade" type="orm:cascade-type" minOccurs="0"/> + <xsd:element name="join-fetch" type="orm:join-fetch-type" minOccurs="0"/> + <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="access-methods" type="orm:access-methods" + minOccurs="0" maxOccurs="1"/> + </xsd:sequence> + <xsd:attribute name="name" type="xsd:string" use="required"/> + <xsd:attribute name="target-entity" type="xsd:string"/> + <xsd:attribute name="fetch" type="orm:fetch-type"/> + <xsd:attribute name="mapped-by" type="xsd:string"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="generated-value"> + <xsd:annotation> + <xsd:documentation> + + @Target({METHOD, FIELD}) @Retention(RUNTIME) + public @interface GeneratedValue { + GenerationType strategy() default AUTO; + String generator() default ""; + } + + </xsd:documentation> + </xsd:annotation> + <xsd:attribute name="strategy" type="orm:generation-type"/> + <xsd:attribute name="generator" type="xsd:string"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="map-key"> + <xsd:annotation> + <xsd:documentation> + + @Target({METHOD, FIELD}) @Retention(RUNTIME) + public @interface MapKey { + String name() default ""; + } + + </xsd:documentation> + </xsd:annotation> + <xsd:attribute name="name" type="xsd:string"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:simpleType name="order-by"> + <xsd:annotation> + <xsd:documentation> + + @Target({METHOD, FIELD}) @Retention(RUNTIME) + public @interface OrderBy { + String value() default ""; + } + + </xsd:documentation> + </xsd:annotation> + <xsd:restriction base="xsd:string"/> + </xsd:simpleType> + + <!-- **************************************************** --> + + <xsd:complexType name="inheritance"> + <xsd:annotation> + <xsd:documentation> + + @Target({TYPE}) @Retention(RUNTIME) + public @interface Inheritance { + InheritanceType strategy() default SINGLE_TABLE; + } + + </xsd:documentation> + </xsd:annotation> + <xsd:attribute name="strategy" type="orm:inheritance-type"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:simpleType name="inheritance-type"> + <xsd:annotation> + <xsd:documentation> + + public enum InheritanceType + { SINGLE_TABLE, JOINED, TABLE_PER_CLASS}; + + </xsd:documentation> + </xsd:annotation> + <xsd:restriction base="xsd:token"> + <xsd:enumeration value="SINGLE_TABLE"/> + <xsd:enumeration value="JOINED"/> + <xsd:enumeration value="TABLE_PER_CLASS"/> + </xsd:restriction> + </xsd:simpleType> + + <!-- **************************************************** --> + + <xsd:simpleType name="discriminator-value"> + <xsd:annotation> + <xsd:documentation> + + @Target({TYPE}) @Retention(RUNTIME) + public @interface DiscriminatorValue { + String value(); + } + + </xsd:documentation> + </xsd:annotation> + <xsd:restriction base="xsd:string"/> + </xsd:simpleType> + + <!-- **************************************************** --> + + <xsd:simpleType name="discriminator-type"> + <xsd:annotation> + <xsd:documentation> + + public enum DiscriminatorType { STRING, CHAR, INTEGER }; + + </xsd:documentation> + </xsd:annotation> + <xsd:restriction base="xsd:token"> + <xsd:enumeration value="STRING"/> + <xsd:enumeration value="CHAR"/> + <xsd:enumeration value="INTEGER"/> + </xsd:restriction> + </xsd:simpleType> + + <!-- **************************************************** --> + + <xsd:complexType name="primary-key-join-column"> + <xsd:annotation> + <xsd:documentation> + + @Target({TYPE, METHOD, FIELD}) @Retention(RUNTIME) + public @interface PrimaryKeyJoinColumn { + String name() default ""; + String referencedColumnName() default ""; + String columnDefinition() default ""; + } + + </xsd:documentation> + </xsd:annotation> + <xsd:attribute name="name" type="xsd:string"/> + <xsd:attribute name="referenced-column-name" type="xsd:string"/> + <xsd:attribute name="column-definition" type="xsd:string"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="discriminator-column"> + <xsd:annotation> + <xsd:documentation> + + @Target({TYPE}) @Retention(RUNTIME) + public @interface DiscriminatorColumn { + String name() default "DTYPE"; + DiscriminatorType discriminatorType() default STRING; + String columnDefinition() default ""; + int length() default 31; + } + + </xsd:documentation> + </xsd:annotation> + <xsd:attribute name="name" type="xsd:string"/> + <xsd:attribute name="discriminator-type" type="orm:discriminator-type"/> + <xsd:attribute name="column-definition" type="xsd:string"/> + <xsd:attribute name="length" type="xsd:int"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="embeddable"> + <xsd:annotation> + <xsd:documentation> + + Defines the settings and mappings for embeddable objects. Is + allowed to be sparsely populated and used in conjunction with + the annotations. Alternatively, the metadata-complete attribute + can be used to indicate that no annotations are to be processed + in the class. If this is the case then the defaulting rules will + be recursively applied. + + @Target({TYPE}) @Retention(RUNTIME) + public @interface Embeddable {} + + </xsd:documentation> + </xsd:annotation> + <xsd:sequence> + <xsd:element name="description" type="xsd:string" minOccurs="0"/> + <xsd:element name="customizer" type="orm:customizer" minOccurs="0"/> + <xsd:element name="change-tracking" type="orm:change-tracking" + minOccurs="0"/> + <xsd:element name="converter" type="orm:converter" minOccurs="0" + maxOccurs="unbounded"/> + <xsd:element name="type-converter" type="orm:type-converter" minOccurs="0" + maxOccurs="unbounded"/> + <xsd:element name="object-type-converter" type="orm:object-type-converter" + minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="struct-converter" type="orm:struct-converter" + minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="attributes" type="orm:attributes" + minOccurs="0"/> + <xsd:element name="copy-policy" type="orm:copy-policy" + minOccurs="0" maxOccurs="1"/> + <xsd:element name="instantiation-copy-policy" type="orm:instantiation-copy-policy" + minOccurs="0" maxOccurs="1"/> + <xsd:element name="clone-copy-policy" type="orm:clone-copy-policy" + minOccurs="0" maxOccurs="1"/> + </xsd:sequence> + <xsd:attribute name="class" type="xsd:string" use="required"/> + <xsd:attribute name="access" type="orm:access-type"/> + <xsd:attribute name="metadata-complete" type="xsd:boolean"/> + <xsd:attribute name="exclude-default-mappings" type="xsd:boolean"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="embedded"> + <xsd:annotation> + <xsd:documentation> + + @Target({METHOD, FIELD}) @Retention(RUNTIME) + public @interface Embedded {} + + </xsd:documentation> + </xsd:annotation> + <xsd:sequence> + <xsd:element name="attribute-override" type="orm:attribute-override" + minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="access-methods" type="orm:access-methods" + minOccurs="0" maxOccurs="1"/> + </xsd:sequence> + <xsd:attribute name="name" type="xsd:string" use="required"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="mapped-superclass"> + <xsd:annotation> + <xsd:documentation> + + Defines the settings and mappings for a mapped superclass. Is + allowed to be sparsely populated and used in conjunction with + the annotations. Alternatively, the metadata-complete attribute + can be used to indicate that no annotations are to be processed + If this is the case then the defaulting rules will be recursively + applied. + + @Target(TYPE) @Retention(RUNTIME) + public @interface MappedSuperclass{} + + </xsd:documentation> + </xsd:annotation> + <xsd:sequence> + <xsd:element name="description" type="xsd:string" minOccurs="0"/> + <xsd:element name="customizer" type="orm:customizer" minOccurs="0"/> + <xsd:element name="change-tracking" type="orm:change-tracking" + minOccurs="0"/> + <xsd:element name="id-class" type="orm:id-class" minOccurs="0"/> + <xsd:element name="optimistic-locking" type="orm:optimistic-locking" + minOccurs="0"/> + <xsd:element name="cache" type="orm:cache" minOccurs="0"/> + <xsd:element name="converter" type="orm:converter" + minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="type-converter" type="orm:type-converter" + minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="object-type-converter" type="orm:object-type-converter" + minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="struct-converter" type="orm:struct-converter" + minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="copy-policy" type="orm:copy-policy" + minOccurs="0" maxOccurs="1"/> + <xsd:element name="instantiation-copy-policy" type="orm:instantiation-copy-policy" + minOccurs="0" maxOccurs="1"/> + <xsd:element name="clone-copy-policy" type="orm:clone-copy-policy" + minOccurs="0" maxOccurs="1"/> + <xsd:element name="exclude-default-listeners" type="orm:emptyType" + minOccurs="0"/> + <xsd:element name="exclude-superclass-listeners" type="orm:emptyType" + minOccurs="0"/> + <xsd:element name="entity-listeners" type="orm:entity-listeners" + minOccurs="0"/> + <xsd:element name="pre-persist" type="orm:pre-persist" minOccurs="0"/> + <xsd:element name="post-persist" type="orm:post-persist" + minOccurs="0"/> + <xsd:element name="pre-remove" type="orm:pre-remove" minOccurs="0"/> + <xsd:element name="post-remove" type="orm:post-remove" minOccurs="0"/> + <xsd:element name="pre-update" type="orm:pre-update" minOccurs="0"/> + <xsd:element name="post-update" type="orm:post-update" minOccurs="0"/> + <xsd:element name="post-load" type="orm:post-load" minOccurs="0"/> + <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="attributes" type="orm:attributes" minOccurs="0"/> + </xsd:sequence> + <xsd:attribute name="class" type="xsd:string" use="required"/> + <xsd:attribute name="access" type="orm:access-type"/> + <xsd:attribute name="metadata-complete" type="xsd:boolean"/> + <xsd:attribute name="read-only" type="xsd:boolean"/> + <xsd:attribute name="existence-checking" type="orm:existence-type"/> + <xsd:attribute name="exclude-default-mappings" type="xsd:boolean"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="sequence-generator"> + <xsd:annotation> + <xsd:documentation> + + @Target({TYPE, METHOD, FIELD}) @Retention(RUNTIME) + public @interface SequenceGenerator { + String name(); + String sequenceName() default ""; + int initialValue() default 1; + int allocationSize() default 50; + } + + </xsd:documentation> + </xsd:annotation> + <xsd:attribute name="name" type="xsd:string" use="required"/> + <xsd:attribute name="sequence-name" type="xsd:string"/> + <xsd:attribute name="initial-value" type="xsd:int"/> + <xsd:attribute name="allocation-size" type="xsd:int"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="table-generator"> + <xsd:annotation> + <xsd:documentation> + + @Target({TYPE, METHOD, FIELD}) @Retention(RUNTIME) + public @interface TableGenerator { + String name(); + String table() default ""; + String catalog() default ""; + String schema() default ""; + String pkColumnName() default ""; + String valueColumnName() default ""; + String pkColumnValue() default ""; + int initialValue() default 0; + int allocationSize() default 50; + UniqueConstraint[] uniqueConstraints() default {}; + } + + </xsd:documentation> + </xsd:annotation> + <xsd:sequence> + <xsd:element name="unique-constraint" type="orm:unique-constraint" + minOccurs="0" maxOccurs="unbounded"/> + </xsd:sequence> + <xsd:attribute name="name" type="xsd:string" use="required"/> + <xsd:attribute name="table" type="xsd:string"/> + <xsd:attribute name="catalog" type="xsd:string"/> + <xsd:attribute name="schema" type="xsd:string"/> + <xsd:attribute name="pk-column-name" type="xsd:string"/> + <xsd:attribute name="value-column-name" type="xsd:string"/> + <xsd:attribute name="pk-column-value" type="xsd:string"/> + <xsd:attribute name="initial-value" type="xsd:int"/> + <xsd:attribute name="allocation-size" type="xsd:int"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="converter"> + <xsd:annotation> + <xsd:documentation> + + @Target({TYPE, METHOD, FIELD}) + @Retention(RUNTIME) + public @interface Converter { + /** + * (Required) Name this converter. The name should be unique across + * the whole persistence unit. + */ + String name(); + + /** + * (Required) The converter class to be used. This class must implement + * the org.eclipse.persistence.mappings.converters.Converter interface. + */ + Class converterClass(); + } + + </xsd:documentation> + </xsd:annotation> + <xsd:attribute name="name" type="xsd:string" use="required"/> + <xsd:attribute name="class" type="xsd:string" use="required"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="type-converter"> + <xsd:annotation> + <xsd:documentation> + + @Target({TYPE, METHOD, FIELD}) + @Retention(RUNTIME) + public @interface TypeConverter { + /** + * (Required) Name this converter. The name should be unique + * across the whole persistence unit. + */ + String name(); + + /** + * (Optional) Specify the type stored on the database. The + * default is inferred from the type of the persistence field + * or property. + */ + Class dataType() default void.class; + + /** + * (Optional) Specify the type stored on the entity. The + * default is inferred from the type of the persistent field + * or property. + */ + Class objectType() default void.class; + } + + </xsd:documentation> + </xsd:annotation> + <xsd:attribute name="name" type="xsd:string" use="required"/> + <xsd:attribute name="data-type" type="xsd:string"/> + <xsd:attribute name="object-type" type="xsd:string"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="object-type-converter"> + <xsd:annotation> + <xsd:documentation> + + @Target({TYPE, METHOD, FIELD}) + @Retention(RUNTIME) + public @interface ObjectTypeConverter { + /** + * (Required) Name this converter. The name should be unique + * across the whole persistence unit. + */ + String name(); + + /** + * (Optional) Specify the type stored on the database. The + * default is inferred from the type of the persistence + * field or property. + */ + Class dataType() default void.class; + + /** + * (Optional) Specify the type stored on the entity. The + * default is inferred from the type of the persistent + * field or property. + */ + Class objectType() default void.class; + + /** + * (Required) Specify the conversion values to be used + * with the object converter. + */ + ConversionValue[] conversionValues(); + + /** + * (Optional) Specify a default object value. Used for + * legacy data if the data value is missing. + */ + String defaultObjectValue() default ""; + } + + </xsd:documentation> + </xsd:annotation> + <xsd:sequence> + <xsd:element name="conversion-value" type="orm:conversion-value" minOccurs="1" maxOccurs="unbounded"/> + <xsd:element name="default-object-value" type="xsd:string" minOccurs="0"/> + </xsd:sequence> + <xsd:attribute name="name" type="xsd:string" use="required"/> + <xsd:attribute name="data-type" type="xsd:string"/> + <xsd:attribute name="object-type" type="xsd:string"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="conversion-value"> + <xsd:annotation> + <xsd:documentation> + + @Target({}) + @Retention(RUNTIME) + public @interface ConversionValue { + /** + * (Required) Specify the database value. + */ + String dataValue(); + + /** + * (Required) Specify the object value. + */ + String objectValue(); + } + + </xsd:documentation> + </xsd:annotation> + <xsd:attribute name="data-value" type="xsd:string" use="required"/> + <xsd:attribute name="object-value" type="xsd:string" use="required"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="struct-converter"> + <xsd:annotation> + <xsd:documentation> + + @Target({TYPE, METHOD, FIELD}) + @Retention(RUNTIME) + public @interface StructConverter { + /** + * (Required) Name this converter. The name should be unique across + * the whole persistence unit. + */ + String name(); + + /** + * (Required) The converter class to be used. This class must + * implement the EclipseLink interface + * org.eclipse.persistence.mappings.converters.Converter + */ + String converter(); + } + + </xsd:documentation> + </xsd:annotation> + <xsd:attribute name="name" type="xsd:string" use="required"/> + <xsd:attribute name="converter" type="xsd:string" use="required"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="copy-policy"> + <xsd:annotation> + <xsd:documentation> + /** + * A CopyPolicy is used to set a + * org.eclipse.persistence.descriptors.copying.CopyPolicy on an Entity. + * It is required that a class that implements + * org.eclipse.persistence.descriptors.copying.CopyPolicy be specified + * as the argument. + * + * A CopyPolicy should be specified on an Entity or MappedSuperclass. + * + * For instance: + * @Entity + * @CopyPolicy("example.MyCopyPolicy") + */ + public @interface CopyPolicy { + + /* + * (Required) + * This defines the class of the copy policy. It must specify a class + * that implements org.eclipse.persistence.descriptors.copying.CopyPolicy + */ + Class value(); + } + + </xsd:documentation> + </xsd:annotation> + <xsd:attribute name="class" type="xsd:string" use="required"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="instantiation-copy-policy"> + <xsd:annotation> + <xsd:documentation> + /** + * An InstantiationCopyPolicy is used to set an + * org.eclipse.persistence.descriptors.copying.InstantiationCopyPolicy + * on an Entity. InstantiationCopyPolicy is the default CopyPolicy in + * EclipseLink and therefore this configuration option is only used to + * override other types of copy policies + * + * An InstantiationCopyPolicy should be specified on an Entity or + * MappedSuperclass. + * + * Example: + * @Entity + * @InstantiationCopyPolicy + */ + public @interface InstantiationCopyPolicy { + } + </xsd:documentation> + </xsd:annotation> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="clone-copy-policy"> + <xsd:annotation> + <xsd:documentation> + /** + * A CloneCopyPolicy is used to set an + * org.eclipse.persistence.descriptors.copying.CloneCopyPolicy on an + * Entity. A CloneCopyPolicy must specify at one or both of the "method" + * or "workingCopyMethod". "workingCopyMethod" is used to clone objects + * that will be returned to the user as they are registered in + * EclipseLink's transactional mechanism, the UnitOfWork. "method" will + * be used for the clone that is used for comparison in conjunction with + * EclipseLink's DeferredChangeDetectionPolicy + * + * A CloneCopyPolicy should be specified on an Entity or + * MappedSuperclass. + * + * Example: + * @Entity + * @CloneCopyPolicy(method="myCloneMethod") + * + * or: + * + * @Entity + * @CloneCopyPolicy(method="myCloneMethod", workingCopyMethod="myWorkingCopyCloneMethod") + * + * or: + * + @Entity + * @CloneCopyPolicy(workingCopyMethodName="myWorkingCopyClone") + */ + public @interface CloneCopyPolicy { + + /** + * (Optional) + * Either method or workingCopyMethod must be specified this defines + * a method that will be used to create a clone that will be used + * for comparison by + * EclipseLink's DeferredChangeDetectionPolicy + */ + String method(); + + /** + * (Optional) + * Either method or workingCopyMethod must be specified + * this defines a method that will be used to create a clone that + * will be used to create the object returned when registering an + * Object in an EclipseLink UnitOfWork + */ + String workingCopyMethod(); + + } + </xsd:documentation> + </xsd:annotation> + <xsd:attribute name="method" type="xsd:string"/> + <xsd:attribute name="working-copy-method" type="xsd:string"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="collection-table"> + <xsd:annotation> + <xsd:documentation> + + @Target({METHOD, FIELD}) + @Retention(RUNTIME) + public @interface CollectionTable { + /** + * (Optional) The name of the collection table. If it is not + * specified, it is defaulted to the concatenation of the following: + * the name of the source entity; "_" ; the name of the relationship + * property or field of the source entity. + */ + String name() default ""; + + /** + * (Optional) The catalog of the table. It defaults to the persistence + * unit default catalog. + */ + String catalog() default ""; + + /** + * (Optional) The schema of the table. It defaults to the persistence + * unit default schema. + */ + String schema() default ""; + + /** + * (Optional) Used to specify a primary key column that is used as a + * foreign key to join to another table. If the source entity uses a + * composite primary key, a primary key join column must be specified + * for each field of the composite primary key. In a single primary + * key case, a primary key join column may optionally be specified. + * Defaulting will apply otherwise as follows: + * name, the same name as the primary key column of the primary table + * of the source entity. referencedColumnName, the same name of + * primary key column of the primary table of the source entity. + */ + PrimaryKeyJoinColumn[] primaryKeyJoinColumns() default {}; + + /** + * (Optional) Unique constraints that are to be placed on the table. + * These are only used if table generation is in effect. + */ + UniqueConstraint[] uniqueConstraints() default {}; + } + + </xsd:documentation> + </xsd:annotation> + <xsd:sequence> + <xsd:element name="primary-key-join-column" type="orm:primary-key-join-column" minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="unique-constraint" type="orm:unique-constraint" minOccurs="0" maxOccurs="unbounded"/> + </xsd:sequence> + <xsd:attribute name="name" type="xsd:string"/> + <xsd:attribute name="catalog" type="xsd:string"/> + <xsd:attribute name="schema" type="xsd:string"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="basic-collection"> + <xsd:annotation> + <xsd:documentation> + + @Target({METHOD, FIELD}) + @Retention(RUNTIME) + public @interface BasicCollection { + /** + * (Optional) Defines whether the value of the field or property + * should be lazily loaded or must be eagerly fetched. The EAGER + * strategy is a requirement on the persistence provider runtime that + * the value must be eagerly fetched. The LAZY strategy is a hint to + * the persistence provider runtime. If not specified, defaults to + * LAZY. + */ + FetchType fetch() default LAZY; + + /** + * (Optional) The name of the value column that holds the direct + * collection data. Defaults to the property or field name. + */ + Column valueColumn() default @Column; + } + + </xsd:documentation> + </xsd:annotation> + <xsd:sequence> + <xsd:element name="value-column" type="orm:column" minOccurs="0"/> + <xsd:element name="convert" type="xsd:string" minOccurs="0"/> + <xsd:element name="collection-table" type="orm:collection-table" minOccurs="0"/> + <xsd:element name="private-owned" type="orm:emptyType" minOccurs="0"/> + <xsd:element name="join-fetch" type="orm:join-fetch-type" minOccurs="0"/> + <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="access-methods" type="orm:access-methods" + minOccurs="0" maxOccurs="1"/> + </xsd:sequence> + <xsd:attribute name="name" type="xsd:string"/> + <xsd:attribute name="fetch" type="orm:fetch-type"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="basic-map"> + <xsd:annotation> + <xsd:documentation> + + @Target({METHOD, FIELD}) + @Retention(RUNTIME) + public @interface BasicMap { + /** + * (Optional) Defines whether the value of the field or property + * should be lazily loaded or must be eagerly fetched. The EAGER + * strategy is a requirement on the persistence provider runtime that + * the value must be eagerly fetched. The LAZY strategy is a hint to + * the persistence provider runtime. If not specified, defaults to + * LAZY. + */ + FetchType fetch() default LAZY; + + /** + * (Optional) The name of the data column that holds the direct map + * key. If the name on te key column is "", the name will default to: + * the name of the property or field; "_key". + */ + Column keyColumn(); + + /** + * (Optional) Specify the key converter. Default is equivalent to + * specifying @Convert("none"), meaning no converter will be added to + * the direct map key. + */ + Convert keyConverter() default @Convert; + + /** + * (Optional) The name of the data column that holds the direct + * collection data. Defaults to the property or field name. + */ + Column valueColumn() default @Column; + + /** + * (Optional) Specify the value converter. Default is equivalent to + * specifying @Convert("none"), meaning no converter will be added to + * the value column mapping. + */ + Convert valueConverter() default @Convert; + } + + </xsd:documentation> + </xsd:annotation> + <xsd:sequence> + <xsd:element name="key-column" type="orm:column" minOccurs="0"/> + <xsd:element name="key-converter" type="xsd:string"/> + <xsd:element name="value-column" type="orm:column" minOccurs="0"/> + <xsd:element name="value-converter" type="xsd:string"/> + <xsd:element name="collection-table" type="orm:collection-table" minOccurs="0"/> + <xsd:element name="private-owned" type="orm:emptyType" minOccurs="0"/> + <xsd:element name="join-fetch" type="orm:join-fetch-type" minOccurs="0"/> + <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="access-methods" type="orm:access-methods" + minOccurs="0" maxOccurs="1"/> + </xsd:sequence> + <xsd:attribute name="name" type="xsd:string"/> + <xsd:attribute name="fetch" type="orm:fetch-type"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:simpleType name="join-fetch-type"> + <xsd:annotation> + <xsd:documentation> + + public enum JoinFetchType { + /** + * An inner join is used to fetch the related object. + * This does not allow for null/empty values. + */ + INNER, + + /** + * An inner join is used to fetch the related object. + * This allows for null/empty values. + */ + OUTER, + } + + </xsd:documentation> + </xsd:annotation> + <xsd:restriction base="xsd:token"> + <xsd:enumeration value="INNER"/> + <xsd:enumeration value="OUTER"/> + </xsd:restriction> + </xsd:simpleType> + + <!-- **************************************************** --> + + <xsd:complexType name="optimistic-locking"> + <xsd:annotation> + <xsd:documentation> + + /** + * An optimistic-locking element is used to specify the type of + * optimistic locking EclipseLink should use when updating or deleting + * entities. An optimistic-locking specification is supported on + * an entity or mapped-superclass. + * + * It is used in conjunction with the optimistic-locking-type. + */ + @Target({TYPE}) + @Retention(RUNTIME) + public @interface OptimisticLocking { + /** + * (Optional) The type of optimistic locking policy to use. + */ + OptimisticLockingType type() default VERSION_COLUMN; + + /** + * (Optional) For an optimistic locking policy of type + * SELECTED_COLUMNS, this annotation member becomes a (Required) + * field. + */ + Column[] selectedColumns() default {}; + + /** + * (Optional) Specify where the optimistic locking policy should + * cascade lock. Currently only supported with VERSION_COLUMN locking. + */ + boolean cascade() default false; + } + + </xsd:documentation> + </xsd:annotation> + <xsd:sequence> + <xsd:element name="selected-column" type="orm:column" minOccurs="0" maxOccurs="unbounded"/> + </xsd:sequence> + <xsd:attribute name="type" type="orm:optimistic-locking-type"/> + <xsd:attribute name="cascade" type="xsd:boolean"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:simpleType name="optimistic-locking-type"> + <xsd:annotation> + <xsd:documentation> + + /** + * A simple type that is used within an optimistic-locking + * specification to specify the type of optimistic-locking that + * EclipseLink should use when updating or deleting entities. + */ + public enum OptimisticLockingType { + /** + * Using this type of locking policy compares every field in the table + * in the WHERE clause when doing an update or a delete. If any field + * has been changed, an optimistic locking exception will be thrown. + */ + ALL_COLUMNS, + + /** + * Using this type of locking policy compares only the changed fields + * in the WHERE clause when doing an update. If any field has been + * changed, an optimistic locking exception will be thrown. A delete + * will only compare the primary key. + */ + CHANGED_COLUMNS, + + /** + * Using this type of locking compares selected fields in the WHERE + * clause when doing an update or a delete. If any field has been + * changed, an optimistic locking exception will be thrown. Note that + * the fields specified must be mapped and not be primary keys. + */ + SELECTED_COLUMNS, + + /** + * Using this type of locking policy compares a single version number + * in the where clause when doing an update. The version field must be + * mapped and not be the primary key. + */ + VERSION_COLUMN + } + + </xsd:documentation> + </xsd:annotation> + + <xsd:restriction base="xsd:token"> + <xsd:enumeration value="ALL_COLUMNS"/> + <xsd:enumeration value="CHANGED_COLUMNS"/> + <xsd:enumeration value="SELECTED_COLUMNS"/> + <xsd:enumeration value="VERSION_COLUMN"/> + </xsd:restriction> + </xsd:simpleType> + + <!-- **************************************************** --> + + <xsd:complexType name="cache"> + <xsd:annotation> + <xsd:documentation> + + /** + * The Cache annotation is used to set an + * org.eclipse.persistence.descriptors.invalidation.CacheInvalidationPolicy + * which sets objects in EclipseLink's identity maps to be invalid + * following given rules. By default in EclipseLink, objects do not + * expire in the cache. Several different policies are available to + * allow objects to expire. + * + * @see org.eclipse.persistence.annotations.CacheType + * + * A Cache anotation may be defined on an Entity or MappedSuperclass. + * In the case of inheritance, a Cache annotation should only be defined + * on the root of the inheritance hierarchy. + */ + @Target({TYPE}) + @Retention(RUNTIME) + public @interface Cache { + /** + * (Optional) The type of cache to use. + */ + CacheType type() default SOFT_WEAK; + + /** + * (Optional) The size of cache to use. + */ + int size() default 100; + + /** + * (Optional) Cached instances in the shared cache or a client + * isolated cache. + */ + boolean shared() default true; + + /** + * (Optional) Expire cached instance after a fix period of time (ms). + * Queries executed against the cache after this will be forced back + * to the database for a refreshed copy + */ + int expiry() default -1; // minus one is no expiry. + + /** + * (Optional) Expire cached instance a specific time of day. Queries + * executed against the cache after this will be forced back to the + * database for a refreshed copy + */ + TimeOfDay expiryTimeOfDay() default @TimeOfDay(specified=false); + + /** + * (Optional) Force all queries that go to the database to always + * refresh the cache. + */ + boolean alwaysRefresh() default false; + + /** + * (Optional) For all queries that go to the database, refresh the + * cache only if the data received from the database by a query is + * newer than the data in the cache (as determined by the optimistic + * locking field) + */ + boolean refreshOnlyIfNewer() default false; + + /** + * (Optional) Setting to true will force all queries to bypass the + * cache for hits but still resolve against the cache for identity. + * This forces all queries to hit the database. + */ + boolean disableHits() default false; + + /** + * (Optional) The cache coordination mode. + */ + CacheCoordinationType coordinationType() default SEND_OBJECT_CHANGES; + } + + </xsd:documentation> + </xsd:annotation> + <xsd:choice> + <xsd:element name="expiry" type="xsd:integer" minOccurs="0"/> + <xsd:element name="expiry-time-of-day" type="orm:time-of-day" minOccurs="0"/> + </xsd:choice> + <xsd:attribute name="size" type="xsd:integer"/> + <xsd:attribute name="shared" type="xsd:boolean"/> + <xsd:attribute name="type" type="orm:cache-type"/> + <xsd:attribute name="always-refresh" type="xsd:boolean"/> + <xsd:attribute name="refresh-only-if-newer" type="xsd:boolean"/> + <xsd:attribute name="disable-hits" type="xsd:boolean"/> + <xsd:attribute name="coordination-type" type="orm:cache-coordination-type"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:simpleType name="cache-type"> + <xsd:annotation> + <xsd:documentation> + + /** + * The CacheType enum is used with the Cache annotation for a + * persistent class. It defines the type of IdentityMap/Cache used for + * the class. By default the SOFT_WEAK cache type is used. + * + * @see org.eclipse.persistence.annotations.Cache + */ + public enum CacheType { + /** + * Provides full caching and guaranteed identity. Caches all objects + * and does not remove them. + * WARNING: This method may be memory intensive when many objects are + * read. + */ + FULL, + + /** + * Similar to the FULL identity map except that the map holds the + * objects using weak references. This method allows full garbage + * collection and provides full caching and guaranteed identity. + */ + WEAK, + + /** + * Similar to the FULL identity map except that the map holds the + * objects using soft references. This method allows full garbage + * collection when memory is low and provides full caching and + * guaranteed identity. + */ + SOFT, + + /** + * Similar to the WEAK identity map except that it maintains a + * most-frequently-used sub-cache. The size of the sub-cache is + * proportional to the size of the identity map as specified by + * descriptor's setIdentityMapSize() method. The sub-cache + * uses soft references to ensure that these objects are + * garbage-collected only if the system is low on memory. + */ + SOFT_WEAK, + + /** + * Identical to the soft cache weak (SOFT_WEAK) identity map except + * that it uses hard references in the sub-cache. Use this identity + * map if soft references do not behave properly on your platform. + */ + HARD_WEAK, + + /** + * A cache identity map maintains a fixed number of objects + * specified by the application. Objects are removed from the cache + * on a least-recently-used basis. This method allows object + * identity for the most commonly used objects. + * WARNING: Furnishes caching and identity, but does not guarantee + * identity. + */ + CACHE, + + /** + * WARNING: Does not preserve object identity and does not cache + * objects. + */ + NONE + } + + </xsd:documentation> + </xsd:annotation> + <xsd:restriction base="xsd:token"> + <xsd:enumeration value="FULL"/> + <xsd:enumeration value="WEAK"/> + <xsd:enumeration value="SOFT"/> + <xsd:enumeration value="SOFT_WEAK"/> + <xsd:enumeration value="HARD_WEAK"/> + <xsd:enumeration value="CACHE"/> + <xsd:enumeration value="NONE"/> + </xsd:restriction> + </xsd:simpleType> + + + <!-- **************************************************** --> + + <xsd:simpleType name="cache-coordination-type"> + <xsd:annotation> + <xsd:documentation> + + /** + * An enum that is used within the Cache annotation. + * + * @see org.eclipse.persistence.annotations.Cache + */ + public enum CacheCoordinationType { + /** + * Sends a list of changed objects including data about the changes. + * This data is merged into the receiving cache. + */ + SEND_OBJECT_CHANGES, + + /** + * Sends a list of the identities of the objects that have changed. + * The receiving cache invalidates the objects (rather than changing + * any of the data) + */ + INVALIDATE_CHANGED_OBJECTS, + + /** + * Same as SEND_OBJECT_CHANGES except it also includes any newly + * created objects from the transaction. + */ + SEND_NEW_OBJECTS_WITH_CHANGES, + + /** + * Does no cache coordination. + */ + NONE + } + + </xsd:documentation> + </xsd:annotation> + <xsd:restriction base="xsd:token"> + <xsd:enumeration value="SEND_OBJECT_CHANGES"/> + <xsd:enumeration value="INVALIDATE_CHANGED_OBJECTS"/> + <xsd:enumeration value="SEND_NEW_OBJECTS_WITH_CHANGES"/> + <xsd:enumeration value="NONE"/> + </xsd:restriction> + </xsd:simpleType> + + <!-- **************************************************** --> + + <xsd:complexType name="time-of-day"> + <xsd:annotation> + <xsd:documentation> + + @Target({}) + @Retention(RUNTIME) + public @interface TimeOfDay { + /** + * (Optional) Hour of the day. + */ + int hour() default 0; + + /** + * (Optional) Minute of the day. + */ + int minute() default 0; + + /** + * (Optional) Second of the day. + */ + int second() default 0; + + /** + * (Optional) Millisecond of the day. + */ + int millisecond() default 0; + + /** + * Internal use. Do not modify. + */ + boolean specified() default true; + } + + </xsd:documentation> + </xsd:annotation> + <xsd:attribute name="hour" type="xsd:integer"/> + <xsd:attribute name="minute" type="xsd:integer"/> + <xsd:attribute name="second" type="xsd:integer"/> + <xsd:attribute name="millisecond" type="xsd:integer"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="change-tracking"> + <xsd:annotation> + <xsd:documentation> + + /** + * The ChangeTracking annotation is used to specify the + * org.eclipse.persistence.descriptors.changetracking.ObjectChangePolicy + * which computes changes sets for EclipseLink's UnitOfWork commit + * process. An ObjectChangePolicy is stored on an Entity's descriptor. + * + * A ChangeTracking annotation may be specified on an Entity or + * MappedSuperclass. + */ + @Target({TYPE}) + @Retention(RUNTIME) + public @interface ChangeTracking { + /** + * (Optional) The type of change tracking to use. + */ + ChangeTrackingType value() default AUTO; + } + + </xsd:documentation> + </xsd:annotation> + <xsd:attribute name="type" type="orm:change-tracking-type" use="required"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:simpleType name="change-tracking-type"> + <xsd:annotation> + <xsd:documentation> + + /** + * An enum that is used within the ChangeTracking annotation. + */ + public enum ChangeTrackingType { + /** + * An ATTRIBUTE change tracking type allows change tracking at the + * attribute level of an object. Objects with changed attributes will + * be processed in the commit process to include any changes in the + * results of the commit. Unchanged objects will be ignored. + */ + ATTRIBUTE, + + /** + * An OBJECT change tracking policy allows an object to calculate for + * itself whether it has changed. Changed objects will be processed in + * the commit process to include any changes in the results of the + * commit. Unchanged objects will be ignored. + */ + OBJECT, + + /** + * A DEFERRED change tracking policy defers all change detection to + * the UnitOfWork's change detection process. Essentially, the + * calculateChanges() method will run for all objects in a UnitOfWork. + * This is the default ObjectChangePolicy + */ + DEFERRED, + + /** + * Will not set any change tracking policy. + */ + AUTO + } + + </xsd:documentation> + </xsd:annotation> + <xsd:restriction base="xsd:token"> + <xsd:enumeration value="ATTRIBUTE"/> + <xsd:enumeration value="OBJECT"/> + <xsd:enumeration value="DEFERRED"/> + <xsd:enumeration value="AUTO"/> + </xsd:restriction> + </xsd:simpleType> + + <!-- **************************************************** --> + + <xsd:complexType name="customizer"> + <xsd:annotation> + <xsd:documentation> + + /** + * The Customizer annotation is used to specify a class that implements + * the org.eclipse.persistence.internal.sessions.factories.DescriptorCustomizer + * interface and is to run against an enetity's class descriptor after all + * metadata processing has been completed. + * + * The Customizer annotation may be defined on an Entity, MappedSuperclass + * or Embeddable class. In the case of inheritance, a Customizer is not + * inherited from its parent classes. + */ + @Target({TYPE}) + @Retention(RUNTIME) + public @interface Customizer { + /** + * (Required) Defines the name of the descriptor customizer class that + * should be applied for the related entity or embeddable class. + */ + Class value(); + } + + </xsd:documentation> + </xsd:annotation> + <xsd:attribute name="class" type="xsd:string" use="required"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="named-stored-procedure-query"> + <xsd:annotation> + <xsd:documentation> + + /** + * A NamedStoredProcedureQuery annotation allows the definition of + * queries that call stored procedures as named queries. + + * A NamedStoredProcedureQuery annotation may be defined on an Entity or + * MappedSuperclass. + */ + @Target({TYPE}) + @Retention(RUNTIME) + public @interface NamedStoredProcedureQuery { + /** + * (Required) Unique name that references this stored procedure query. + */ + String name(); + + /** + * (Optional) Query hints. + */ + QueryHint[] hints() default {}; + + /** + * (Optional) Refers to the class of the result. + */ + Class resultClass() default void.class; + + /** + * (Optional) The name of the SQLResultMapping. + */ + String resultSetMapping() default ""; + + /** + * (Required) The name of the stored procedure. + */ + String procedureName(); + + /** + * (Optional) Whether the query should return a result set. + */ + boolean returnsResultSet() default true; + + /** + * (Optional) Defines arguments to the stored procedure. + */ + StoredProcedureParameter[] parameters() default {}; + } + + </xsd:documentation> + </xsd:annotation> + <xsd:sequence> + <xsd:element name="hint" type="orm:query-hint" minOccurs="0" + maxOccurs="unbounded"/> + <xsd:element name="parameter" type="orm:stored-procedure-parameter" + minOccurs="0" maxOccurs="unbounded"/> + </xsd:sequence> + <xsd:attribute name="name" type="xsd:string" use="required"/> + <xsd:attribute name="result-class" type="xsd:string"/> + <xsd:attribute name="result-set-mapping" type="xsd:string"/> + <xsd:attribute name="procedure-name" type="xsd:string" use="required"/> + <xsd:attribute name="returns-result-set" type="xsd:boolean"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="stored-procedure-parameter"> + <xsd:annotation> + <xsd:documentation> + + /** + * A StoredProcedureParameter annotation is used within a + * NamedStoredProcedureQuery annotation. + */ + @Target({}) + @Retention(RUNTIME) + public @interface StoredProcedureParameter { + /** + * (Optional) The direction of the stored procedure parameter. + */ + Direction direction() default IN; + + /** + * (Optional) Stored procedure parameter name. + */ + String name() default ""; + + /** + * (Required) The query parameter name. + */ + String queryParameter(); + + /** + * (Optional) The type of Java class desired back from the procedure, + * this is dependent on the type returned from the procedure. + */ + Class type() default void.class; + + /** + * (Optional) The JDBC type code, this dependent on the type returned + * from the procedure. + */ + int jdbcType() default -1; + + /** + * (Optional) The JDBC type name, this may be required for ARRAY or + * STRUCT types. + */ + String jdbcTypeName() default ""; + } + + </xsd:documentation> + </xsd:annotation> + <xsd:attribute name="direction" type="orm:direction-type"/> + <xsd:attribute name="name" type="xsd:string"/> + <xsd:attribute name="query-parameter" type="xsd:string" use="required"/> + <xsd:attribute name="type" type="xsd:string"/> + <xsd:attribute name="jdbc-type" type="xsd:integer"/> + <xsd:attribute name="jdbc-type-name" type="xsd:string"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:simpleType name="direction-type"> + <xsd:annotation> + <xsd:documentation> + + /** + * An enum that is used within the StoredProcedureParameter annotation. + * It is used to specify the direction of the stored procedure + * parameters of a named stored procedure query. + */ + public enum Direction { + /** + * Input parameter + */ + IN, + + /** + * Output parameter + */ + OUT, + + /** + * Input and output parameter + */ + IN_OUT, + + /** + * Output cursor + */ + OUT_CURSOR + } + + </xsd:documentation> + </xsd:annotation> + <xsd:restriction base="xsd:token"> + <xsd:enumeration value="IN"/> + <xsd:enumeration value="OUT"/> + <xsd:enumeration value="IN_OUT"/> + <xsd:enumeration value="OUT_CURSOR"/> + </xsd:restriction> + </xsd:simpleType> + + <!-- **************************************************** --> + + <xsd:complexType name="variable-one-to-one"> + <xsd:annotation> + <xsd:documentation> + /** + * Variable one to one mappings are used to represent a pointer + * references between a java object and an implementer of an interface. + * This mapping is usually represented by a single pointer (stored in an + * instance variable) between the source and target objects. In the + * relational database tables, these mappings are normally implemented + * using a foreign key and a type code. + * + * A VariableOneToOne can be specified within an Entity, + * MappedSuperclass and Embeddable class. + */ + @Target({METHOD, FIELD}) + @Retention(RUNTIME) + public @interface VariableOneToOne { + /** + * (Optional) The interface class that is the target of the + * association. If not specified it will be inferred from the type + * of the object being referenced. + */ + Class targetInterface() default void.class; + + /** + * (Optional) The operations that must be cascaded to the target of + * the association. + */ + CascadeType[] cascade() default {}; + + /** + * (Optional) Defines whether the value of the field or property + * should be lazily loaded or must be eagerly fetched. The EAGER + * strategy is a requirement on the persistence provider runtime + * that the value must be eagerly fetched. The LAZY strategy is a + * hint to the persistence provider runtime. If not specified, + * defaults to EAGER. + */ + FetchType fetch() default EAGER; + + /** + * (Optional) Whether the association is optional. If set to false + * then a non-null relationship must always exist. + */ + boolean optional() default true; + + /** + * (Optional) The discriminator column will hold the type + * indicators. If the DiscriminatorColumn is not specified, the name + * of the discriminator column defaults to "DTYPE" and the + * discriminator type to STRING. + */ + DiscriminatorColumn discriminatorColumn() default @DiscriminatorColumn; + + /** + * (Optional) The list of discriminator types that can be used with + * this VariableOneToOne. If none are specified then those entities + * within the persistence unit that implement the target interface + * will be added to the list of types. The discriminator type will + * default as follows: + * - If DiscriminatorColumn type is STRING: Entity.name() + * - If DiscriminatorColumn type is CHAR: First letter of the + * Entity class + * - If DiscriminatorColumn type is INTEGER: The next integer after + * the highest integer explicitly added. + */ + DiscriminatorClass[] discriminatorClasses() default {}; + } + + </xsd:documentation> + </xsd:annotation> + <xsd:sequence> + <xsd:element name="cascade" type="orm:cascade-type" minOccurs="0"/> + <xsd:element name="discriminator-column" type="orm:discriminator-column" + minOccurs="0"/> + <xsd:element name="discriminator-class" type="orm:discriminator-class" + minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="join-column" type="orm:join-column" minOccurs="0" + maxOccurs="unbounded"/> + <xsd:element name="private-owned" type="orm:emptyType" minOccurs="0"/> + <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/> + <xsd:element name="access-methods" type="orm:access-methods" + minOccurs="0" maxOccurs="1"/> + </xsd:sequence> + <xsd:attribute name="name" type="xsd:string" use="required"/> + <xsd:attribute name="target-interface" type="xsd:string"/> + <xsd:attribute name="fetch" type="orm:fetch-type"/> + <xsd:attribute name="optional" type="xsd:boolean"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:complexType name="discriminator-class"> + <xsd:annotation> + <xsd:documentation> + + /** + * A DiscriminatorClass is used within a VariableOneToOne annotation. + */ + @Target({}) + @Retention(RUNTIME) + public @interface DiscriminatorClass { + /** + * (Required) The discriminator to be stored on the database. + */ + String discriminator(); + + /** + * (Required) The class to the instantiated with the given + * discriminator. + */ + Class value(); + } + + </xsd:documentation> + </xsd:annotation> + <xsd:attribute name="discriminator" type="xsd:string" use="required"/> + <xsd:attribute name="value" type="xsd:string" use="required"/> + </xsd:complexType> + + <!-- **************************************************** --> + + <xsd:simpleType name="existence-type"> + <xsd:annotation> + <xsd:documentation> + /** + * The ExistenceChecking annotation is used to specify the type of + * checking EclipseLink should use when updating entities. + * + * An existence-checking specification is supported on an Entity or + * MappedSuperclass annotation. + */ + public @interface ExistenceChecking { + /** + * (Optional) Set the existence check for determining + * if an insert or update should occur for an object. + */ + ExistenceType value() default CHECK_CACHE; + } + + /** + * Assume that if the objects primary key does not include null and + * it is in the cache, then it must exist. + */ + CHECK_CACHE, + + /** + * Perform does exist check on the database. + */ + CHECK_DATABASE, + + /** + * Assume that if the objects primary key does not include null then + * it must exist. This may be used if the application guarantees or + * does not care about the existence check. + */ + ASSUME_EXISTENCE, + + /** + * Assume that the object does not exist. This may be used if the + * application guarantees or does not care about the existence check. + * This will always force an insert to be called. + */ + ASSUME_NON_EXISTENCE + + </xsd:documentation> + </xsd:annotation> + <xsd:restriction base="xsd:token"> + <xsd:enumeration value="CHECK_CACHE" /> + <xsd:enumeration value="CHECK_DATABASE" /> + <xsd:enumeration value="ASSUME_EXISTENCE" /> + <xsd:enumeration value="ASSUME_NON_EXISTENCE"/> + </xsd:restriction> + </xsd:simpleType> + +</xsd:schema> diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/JptEclipseLinkCorePlugin.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/JptEclipseLinkCorePlugin.java index f913fcded6..313b5bf0fc 100644 --- a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/JptEclipseLinkCorePlugin.java +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/JptEclipseLinkCorePlugin.java @@ -9,7 +9,11 @@ *******************************************************************************/ package org.eclipse.jpt.eclipselink.core.internal; +import org.eclipse.core.resources.IProject; +import org.eclipse.core.runtime.IStatus; import org.eclipse.core.runtime.Plugin; +import org.eclipse.core.runtime.Status; +import org.eclipse.jpt.core.JptCorePlugin; import org.osgi.framework.BundleContext; /** @@ -19,15 +23,61 @@ public class JptEclipseLinkCorePlugin extends Plugin { // The plug-in ID public static final String PLUGIN_ID = "org.eclipse.jpt.eclipselink.core"; - + + /** + * Value of the content-type for eclipselink-orm.xml mappings files. Use this + * value to retrieve the ORM xml content type from the content type manager + * and to add new eclipselink-orm.xml-like extensions to this content type. + * + * @see org.eclipse.core.runtime.content.IContentTypeManager#getContentType(String) + */ + public static final String ECLIPSELINK_ORM_XML_CONTENT_TYPE = PLUGIN_ID + ".content.orm"; //$NON-NLS-1$ + + public static final String DEFAULT_ECLIPSELINK_ORM_XML_FILE_PATH = "META-INF/eclipselink-orm.xml"; + + // The shared instance private static JptEclipseLinkCorePlugin plugin; - + + /** * The constructor */ public JptEclipseLinkCorePlugin() {} - + + + /** + * Return the default mapping file (specified as "META-INF/eclipselink-orm.xml") + * deployment URI for the specified project. + */ + public static String getDefaultEclipseLinkOrmXmlDeploymentURI(IProject project) { + return JptCorePlugin.getDeploymentURI(project, DEFAULT_ECLIPSELINK_ORM_XML_FILE_PATH); + } + + /** + * Log the specified status. + */ + public static void log(IStatus status) { + plugin.getLog().log(status); + } + + /** + * Log the specified message. + */ + public static void log(String msg) { + log(new Status(IStatus.ERROR, PLUGIN_ID, IStatus.OK, msg, null)); + } + + /** + * Log the specified exception or error. + */ + public static void log(Throwable throwable) { + log(new Status(IStatus.ERROR, PLUGIN_ID, IStatus.OK, throwable.getLocalizedMessage(), throwable)); + } + + + // ********** plug-in implementation ********** + /* * (non-Javadoc) * diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/AssociationOverrideTranslator.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/AssociationOverrideTranslator.java new file mode 100644 index 0000000000..ee2565e51b --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/AssociationOverrideTranslator.java @@ -0,0 +1,53 @@ +/******************************************************************************* + * Copyright (c) 2007, 2008 Oracle. All rights reserved. This + * program and the accompanying materials are made available under the terms of + * the Eclipse Public License v1.0 which accompanies this distribution, and is + * available at http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: Oracle. - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.internal.resource.elorm.translators; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EStructuralFeature; +import org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmFactory; +import org.eclipse.wst.common.internal.emf.resource.Translator; + +public class AssociationOverrideTranslator extends Translator + implements EclipseLinkOrmXmlMapper +{ + private Translator[] children; + + + public AssociationOverrideTranslator(String domNameAndPath, EStructuralFeature aFeature) { + super(domNameAndPath, aFeature); + } + + @Override + public EObject createEMFObject(String nodeName, String readAheadName) { + return EclipseLinkOrmFactory.eINSTANCE.createXmlAssociationOverrideImpl(); + } + + @Override + public Translator[] getChildren(Object target, int versionID) { + if (this.children == null) { + this.children = createChildren(); + } + return this.children; + } + + protected Translator[] createChildren() { + return new Translator[] { + createNameTranslator(), + createJoinColumnTranslator() + }; + } + + private Translator createNameTranslator() { + return new Translator(NAME, ECLIPSELINK_ORM_PKG.getXmlAssociationOverride_Name(), DOM_ATTRIBUTE); + } + + private Translator createJoinColumnTranslator() { + return new JoinColumnTranslator(JOIN_COLUMN, ECLIPSELINK_ORM_PKG.getXmlAssociationOverride_JoinColumns()); + } +} diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/AttributeOverrideTranslator.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/AttributeOverrideTranslator.java new file mode 100644 index 0000000000..5b37f6e0ca --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/AttributeOverrideTranslator.java @@ -0,0 +1,53 @@ +/******************************************************************************* + * Copyright (c) 2007, 2008 Oracle. All rights reserved. This + * program and the accompanying materials are made available under the terms of + * the Eclipse Public License v1.0 which accompanies this distribution, and is + * available at http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: Oracle. - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.internal.resource.elorm.translators; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EStructuralFeature; +import org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmFactory; +import org.eclipse.wst.common.internal.emf.resource.Translator; + +public class AttributeOverrideTranslator extends Translator + implements EclipseLinkOrmXmlMapper +{ + private Translator[] children; + + + public AttributeOverrideTranslator(String domNameAndPath, EStructuralFeature aFeature) { + super(domNameAndPath, aFeature); + } + + @Override + public EObject createEMFObject(String nodeName, String readAheadName) { + return EclipseLinkOrmFactory.eINSTANCE.createXmlAttributeOverrideImpl(); + } + + @Override + public Translator[] getChildren(Object target, int versionID) { + if (this.children == null) { + this.children = createChildren(); + } + return this.children; + } + + protected Translator[] createChildren() { + return new Translator[] { + createNameTranslator(), + createColumnTranslator() + }; + } + + private Translator createNameTranslator() { + return new Translator(NAME, ECLIPSELINK_ORM_PKG.getXmlAttributeOverride_Name(), DOM_ATTRIBUTE); + } + + private Translator createColumnTranslator() { + return new ColumnTranslator(COLUMN, ECLIPSELINK_ORM_PKG.getXmlAttributeOverride_Column()); + } +} diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/AttributesTranslator.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/AttributesTranslator.java new file mode 100644 index 0000000000..30582759c4 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/AttributesTranslator.java @@ -0,0 +1,88 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. All rights reserved. + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.internal.resource.elorm.translators; + +import org.eclipse.emf.ecore.EStructuralFeature; +import org.eclipse.wst.common.internal.emf.resource.Translator; + +public class AttributesTranslator extends Translator + implements EclipseLinkOrmXmlMapper +{ + private Translator[] children; + + + public AttributesTranslator(String domNameAndPath, EStructuralFeature aFeature) { + super(domNameAndPath, aFeature); + } + + @Override + public Translator[] getChildren(Object target, int versionID) { + if (this.children == null) { + this.children = createChildren(); + } + return this.children; + } + + protected Translator[] createChildren() { + return new Translator[] { + createIdTranslator(), + createEmbeddedIdTranslator(), + createBasicTranslator(), + createVersionTranslator(), + createManyToOneTranslator(), + createOneToManyTranslator(), + createOneToOneTranslator(), + createManyToManyTranslator(), + createEmbeddedTranslator(), + createTransientTranslator() + }; + } + + private Translator createIdTranslator() { + return new IdTranslator(ID, ECLIPSELINK_ORM_PKG.getAttributes_Ids()); + } + + private Translator createEmbeddedIdTranslator() { + return new EmbeddedIdTranslator(EMBEDDED_ID, ECLIPSELINK_ORM_PKG.getAttributes_EmbeddedIds()); + } + + private Translator createBasicTranslator() { + return new BasicTranslator(BASIC, ECLIPSELINK_ORM_PKG.getAttributes_Basics()); + } + + private Translator createVersionTranslator() { + return new VersionTranslator(VERSION, ECLIPSELINK_ORM_PKG.getAttributes_Versions()); + } + + private Translator createManyToOneTranslator() { + return new ManyToOneTranslator(MANY_TO_ONE, ECLIPSELINK_ORM_PKG.getAttributes_ManyToOnes()); + } + + private Translator createOneToManyTranslator() { + return new OneToManyTranslator(ONE_TO_MANY, ECLIPSELINK_ORM_PKG.getAttributes_OneToManys()); + } + + private Translator createOneToOneTranslator() { + return new OneToOneTranslator(ONE_TO_ONE, ECLIPSELINK_ORM_PKG.getAttributes_OneToOnes()); + } + + private Translator createManyToManyTranslator() { + return new ManyToManyTranslator(MANY_TO_MANY, ECLIPSELINK_ORM_PKG.getAttributes_ManyToManys()); + } + + private Translator createEmbeddedTranslator() { + return new EmbeddedTranslator(EMBEDDED, ECLIPSELINK_ORM_PKG.getAttributes_Embeddeds()); + } + + private Translator createTransientTranslator() { + return new TransientTranslator(TRANSIENT, ECLIPSELINK_ORM_PKG.getAttributes_Transients()); + } +} diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/BasicTranslator.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/BasicTranslator.java new file mode 100644 index 0000000000..a15a4e5621 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/BasicTranslator.java @@ -0,0 +1,80 @@ +/******************************************************************************* + * Copyright (c) 2006, 2008 Oracle. All rights reserved. This + * program and the accompanying materials are made available under the terms of + * the Eclipse Public License v1.0 which accompanies this distribution, and is + * available at http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: Oracle. - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.internal.resource.elorm.translators; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EStructuralFeature; +import org.eclipse.jpt.core.internal.resource.common.translators.BooleanTranslator; +import org.eclipse.jpt.core.internal.resource.common.translators.EmptyTagBooleanTranslator; +import org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmFactory; +import org.eclipse.wst.common.internal.emf.resource.Translator; + +public class BasicTranslator extends Translator + implements EclipseLinkOrmXmlMapper +{ + private Translator[] children; + + + public BasicTranslator(String domNameAndPath, EStructuralFeature aFeature) { + super(domNameAndPath, aFeature); + } + + @Override + public EObject createEMFObject(String nodeName, String readAheadName) { + return EclipseLinkOrmFactory.eINSTANCE.createXmlBasicImpl(); + } + + @Override + public Translator[] getChildren(Object target, int versionID) { + if (this.children == null) { + this.children = createChildren(); + } + return this.children; + } + + protected Translator[] createChildren() { + return new Translator[] { + createNameTranslator(), + createFetchTranslator(), + createOptionalTranslator(), + createColumnTranslator(), + createLobTranslator(), + createTemporalTranslator(), + createEnumeratedTranslator() + }; + } + + private Translator createNameTranslator() { + return new Translator(NAME, ECLIPSELINK_ORM_PKG.getXmlAttributeMapping_Name(), DOM_ATTRIBUTE); + } + + private Translator createFetchTranslator() { + return new Translator(FETCH, ECLIPSELINK_ORM_PKG.getXmlBasic_Fetch(), DOM_ATTRIBUTE); + } + + private Translator createOptionalTranslator() { + return new BooleanTranslator(OPTIONAL, ECLIPSELINK_ORM_PKG.getXmlBasic_Optional(), DOM_ATTRIBUTE); + } + + private Translator createColumnTranslator() { + return new ColumnTranslator(COLUMN, ECLIPSELINK_ORM_PKG.getColumnMapping_Column()); + } + + private Translator createLobTranslator() { + return new EmptyTagBooleanTranslator(LOB, ECLIPSELINK_ORM_PKG.getXmlBasic_Lob()); + } + + private Translator createTemporalTranslator() { + return new Translator(TEMPORAL, ECLIPSELINK_ORM_PKG.getXmlBasic_Temporal()); + } + + private Translator createEnumeratedTranslator() { + return new Translator(ENUMERATED, ECLIPSELINK_ORM_PKG.getXmlBasic_Enumerated()); + } +} diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/CascadeTypeTranslator.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/CascadeTypeTranslator.java new file mode 100644 index 0000000000..da223df58e --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/CascadeTypeTranslator.java @@ -0,0 +1,69 @@ +/******************************************************************************* + * Copyright (c) 2007, 2008 Oracle. All rights reserved. This + * program and the accompanying materials are made available under the terms of + * the Eclipse Public License v1.0 which accompanies this distribution, and is + * available at http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: Oracle. - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.internal.resource.elorm.translators; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EStructuralFeature; +import org.eclipse.jpt.core.internal.resource.common.translators.EmptyTagBooleanTranslator; +import org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmFactory; +import org.eclipse.wst.common.internal.emf.resource.Translator; + +public class CascadeTypeTranslator extends Translator + implements EclipseLinkOrmXmlMapper +{ + private Translator[] children; + + + public CascadeTypeTranslator(String domNameAndPath, EStructuralFeature aFeature) { + super(domNameAndPath, aFeature); + } + + @Override + public Translator[] getChildren(Object target, int versionID) { + if (this.children == null) { + this.children = createChildren(); + } + return this.children; + } + + @Override + public EObject createEMFObject(String nodeName, String readAheadName) { + return EclipseLinkOrmFactory.eINSTANCE.createCascadeTypeImpl(); + } + + protected Translator[] createChildren() { + return new Translator[] { + createCascadeAllTranslator(), + createCascadePersistTranslator(), + createCascadeMergeTranslator(), + createCascadeRemoveTranslator(), + createCascadeRefreshTranslator() + }; + } + + private Translator createCascadeAllTranslator() { + return new EmptyTagBooleanTranslator(CASCADE_ALL, ECLIPSELINK_ORM_PKG.getCascadeType_CascadeAll()); + } + + private Translator createCascadePersistTranslator() { + return new EmptyTagBooleanTranslator(CASCADE_PERSIST, ECLIPSELINK_ORM_PKG.getCascadeType_CascadePersist()); + } + + private Translator createCascadeMergeTranslator() { + return new EmptyTagBooleanTranslator(CASCADE_MERGE, ECLIPSELINK_ORM_PKG.getCascadeType_CascadeMerge()); + } + + private Translator createCascadeRemoveTranslator() { + return new EmptyTagBooleanTranslator(CASCADE_REMOVE, ECLIPSELINK_ORM_PKG.getCascadeType_CascadeRemove()); + } + + private Translator createCascadeRefreshTranslator() { + return new EmptyTagBooleanTranslator(CASCADE_REFRESH, ECLIPSELINK_ORM_PKG.getCascadeType_CascadeRefresh()); + } +} diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/ColumnResultTranslator.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/ColumnResultTranslator.java new file mode 100644 index 0000000000..26e8a41eab --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/ColumnResultTranslator.java @@ -0,0 +1,43 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. All rights reserved. + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.internal.resource.elorm.translators; + +import org.eclipse.emf.ecore.EStructuralFeature; +import org.eclipse.wst.common.internal.emf.resource.Translator; + +public class ColumnResultTranslator extends Translator + implements EclipseLinkOrmXmlMapper +{ + private Translator[] children; + + + public ColumnResultTranslator(String domNameAndPath, EStructuralFeature aFeature) { + super(domNameAndPath, aFeature, END_TAG_NO_INDENT); + } + + @Override + public Translator[] getChildren(Object target, int versionID) { + if (this.children == null) { + this.children = createChildren(); + } + return this.children; + } + + protected Translator[] createChildren() { + return new Translator[] { + createNameTranslator() + }; + } + + private Translator createNameTranslator() { + return new Translator(NAME, ECLIPSELINK_ORM_PKG.getColumnResult_Name(), DOM_ATTRIBUTE); + } +} diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/ColumnTranslator.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/ColumnTranslator.java new file mode 100644 index 0000000000..a87e38f1be --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/ColumnTranslator.java @@ -0,0 +1,95 @@ +/******************************************************************************* + * Copyright (c) 2006, 2008 Oracle. All rights reserved. + * This program and the accompanying materials are made available under the terms of + * the Eclipse Public License v1.0, which accompanies this distribution and is available at + * http://www.eclipse.org/legal/epl-v10.html. + * + * Contributors: + * Oracle - initial API and implementation + ******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.internal.resource.elorm.translators; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EStructuralFeature; +import org.eclipse.jpt.core.internal.resource.common.translators.BooleanTranslator; +import org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmFactory; +import org.eclipse.wst.common.internal.emf.resource.Translator; + +public class ColumnTranslator extends Translator + implements EclipseLinkOrmXmlMapper +{ + private Translator[] children; + + + public ColumnTranslator(String domNameAndPath, EStructuralFeature aFeature) { + super(domNameAndPath, aFeature, END_TAG_NO_INDENT); + } + + @Override + public EObject createEMFObject(String nodeName, String readAheadName) { + return EclipseLinkOrmFactory.eINSTANCE.createXmlColumnImpl(); + } + + @Override + public Translator[] getChildren(Object target, int versionID) { + if (this.children == null) { + this.children = createChildren(); + } + return this.children; + } + + protected Translator[] createChildren() { + return new Translator[] { + createNameTranslator(), + createUniqueTranslator(), + createNullableTranslator(), + createInsertableTranslator(), + createUpdatableTranslator(), + createColumnDefinitionTranslator(), + createTableTranslator(), + createLengthTranslator(), + createPrecisionTranslator(), + createScaleTranslator(), + }; + } + + private Translator createNameTranslator() { + return new Translator(NAME, ECLIPSELINK_ORM_PKG.getXmlNamedColumn_Name(), DOM_ATTRIBUTE); + } + + private Translator createUniqueTranslator() { + return new BooleanTranslator(UNIQUE, ECLIPSELINK_ORM_PKG.getXmlAbstractColumn_Unique(), DOM_ATTRIBUTE); + } + + private Translator createNullableTranslator() { + return new BooleanTranslator(NULLABLE, ECLIPSELINK_ORM_PKG.getXmlAbstractColumn_Nullable(), DOM_ATTRIBUTE); + } + + private Translator createInsertableTranslator() { + return new BooleanTranslator(INSERTABLE, ECLIPSELINK_ORM_PKG.getXmlAbstractColumn_Insertable(), DOM_ATTRIBUTE); + } + + private Translator createUpdatableTranslator() { + return new BooleanTranslator(UPDATABLE, ECLIPSELINK_ORM_PKG.getXmlAbstractColumn_Updatable(), DOM_ATTRIBUTE); + } + + private Translator createColumnDefinitionTranslator() { + return new Translator(COLUMN_DEFINITION, ECLIPSELINK_ORM_PKG.getXmlNamedColumn_ColumnDefinition(), DOM_ATTRIBUTE); + } + + private Translator createTableTranslator() { + return new Translator(TABLE, ECLIPSELINK_ORM_PKG.getXmlAbstractColumn_Table(), DOM_ATTRIBUTE); + } + + private Translator createLengthTranslator() { + return new Translator(LENGTH, ECLIPSELINK_ORM_PKG.getXmlColumn_Length(), DOM_ATTRIBUTE); + } + + private Translator createPrecisionTranslator() { + return new Translator(PRECISION, ECLIPSELINK_ORM_PKG.getXmlColumn_Precision(), DOM_ATTRIBUTE); + } + + private Translator createScaleTranslator() { + return new Translator(SCALE, ECLIPSELINK_ORM_PKG.getXmlColumn_Scale(), DOM_ATTRIBUTE); + } +} diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/DiscriminatorColumnTranslator.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/DiscriminatorColumnTranslator.java new file mode 100644 index 0000000000..f38341c2f6 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/DiscriminatorColumnTranslator.java @@ -0,0 +1,56 @@ +/******************************************************************************* + * Copyright (c) 2006, 2008 Oracle. All rights reserved. This + * program and the accompanying materials are made available under the terms of + * the Eclipse Public License v1.0 which accompanies this distribution, and is + * available at http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: Oracle. - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.internal.resource.elorm.translators; + +import org.eclipse.emf.ecore.EStructuralFeature; +import org.eclipse.wst.common.internal.emf.resource.Translator; + +public class DiscriminatorColumnTranslator extends Translator + implements EclipseLinkOrmXmlMapper +{ + private Translator[] children; + + + public DiscriminatorColumnTranslator(String domNameAndPath, EStructuralFeature aFeature) { + super(domNameAndPath, aFeature, END_TAG_NO_INDENT); + } + + @Override + public Translator[] getChildren(Object target, int versionID) { + if (this.children == null) { + this.children = createChildren(); + } + return this.children; + } + + protected Translator[] createChildren() { + return new Translator[] { + createNameTranslator(), + createDiscrminiatorTypeTranslator(), + createColumnDefinitionTranslator(), + createLengthTranslator() + }; + } + + private Translator createNameTranslator() { + return new Translator(NAME, ECLIPSELINK_ORM_PKG.getXmlNamedColumn_Name(), DOM_ATTRIBUTE); + } + + protected Translator createDiscrminiatorTypeTranslator() { + return new Translator(DISCRIMINATOR_TYPE, ECLIPSELINK_ORM_PKG.getXmlDiscriminatorColumn_DiscriminatorType(), DOM_ATTRIBUTE); + } + + private Translator createColumnDefinitionTranslator() { + return new Translator(COLUMN_DEFINITION, ECLIPSELINK_ORM_PKG.getXmlNamedColumn_ColumnDefinition(), DOM_ATTRIBUTE); + } + + protected Translator createLengthTranslator() { + return new Translator(LENGTH, ECLIPSELINK_ORM_PKG.getXmlDiscriminatorColumn_Length(), DOM_ATTRIBUTE); + } +} diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/EclipseLinkOrmXmlMapper.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/EclipseLinkOrmXmlMapper.java new file mode 100644 index 0000000000..d38e41e4ad --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/EclipseLinkOrmXmlMapper.java @@ -0,0 +1,126 @@ +/******************************************************************************* + * Copyright (c) 2006, 2008 Oracle. All rights reserved. This + * program and the accompanying materials are made available under the terms of + * the Eclipse Public License v1.0 which accompanies this distribution, and is + * available at http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: Oracle. - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.internal.resource.elorm.translators; + +import org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage; + +public interface EclipseLinkOrmXmlMapper +{ + EclipseLinkOrmPackage ECLIPSELINK_ORM_PKG = EclipseLinkOrmPackage.eINSTANCE; + + String XML_NS = "xmlns"; //$NON-NLS-1$ + String XML_NS_XSI = "xmlns:xsi"; //$NON-NLS-1$ + String XSI_SCHEMA_LOCATION = "xsi:schemaLocation"; //$NON-NLS-1$ + String XSI_NS_URL = "http://www.w3.org/2001/XMLSchema-instance"; //$NON-NLS-1$ + String ECLIPSELINK_ORM_NS_URL = "http://www.eclipse.org/eclipselink/xsds/persistence/orm"; //$NON-NLS-1$ + String ECLIPSELINK_ORM_SCHEMA_LOC_1_0 = "http://www.eclipse.org/eclipselink/xsds/eclipselink_orm_1_0.xsd"; //$NON-NLS-1$ + + + String ACCESS = "access"; //$NON-NLS-1$ + String ALLOCATION_SIZE = "allocation-size"; //$NON-NLS-1$ + String ASSOCIATION_OVERRIDE = "association-override"; //$NON-NLS-1$ + String ATTRIBUTE_OVERRIDE = "attribute-override"; //$NON-NLS-1$ + String ATTRIBUTES = "attributes"; //$NON-NLS-1$ + String BASIC = "basic"; //$NON-NLS-1$ + String CASCADE = "cascade"; //$NON-NLS-1$ + String CASCADE_ALL = "cascade-all"; //$NON-NLS-1$ + String CASCADE_MERGE = "cascade-merge"; //$NON-NLS-1$ + String CASCADE_PERSIST = "cascade-persist"; //$NON-NLS-1$ + String CASCADE_REFRESH = "cascade-refresh"; //$NON-NLS-1$ + String CASCADE_REMOVE = "cascade-remove"; //$NON-NLS-1$ + String CATALOG = "catalog"; //$NON-NLS-1$ + String CLASS = "class"; //$NON-NLS-1$ + String COLUMN = "column"; //$NON-NLS-1$ + String COLUMN_DEFINITION= "column-definition"; //$NON-NLS-1$ + String COLUMN_NAME = "column-name"; //$NON-NLS-1$ + String COLUMN_RESULT = "column-result"; //$NON-NLS-1$ + String DESCRIPTION = "description"; //$NON-NLS-1$ + String DISCRIMINATOR_COLUMN = "discriminator-column"; //$NON-NLS-1$ + String DISCRIMINATOR_TYPE = "discriminator-type"; //$NON-NLS-1$ + String DISCRIMINATOR_VALUE = "discriminator-value"; //$NON-NLS-1$ + String EMBEDDABLE = "embeddable"; //$NON-NLS-1$ + String EMBEDDED = "embedded"; //$NON-NLS-1$ + String EMBEDDED_ID = "embedded-id"; //$NON-NLS-1$ + String ENTITY = "entity"; //$NON-NLS-1$ + String ENTITY_CLASS = "entity-class"; //$NON-NLS-1$ + String ENTITY_LISTENER = "entity-listener"; //$NON-NLS-1$ + String ENTITY_LISTENERS = "entity-listeners"; //$NON-NLS-1$ + String ENTITY_MAPPINGS = "entity-mappings"; //$NON-NLS-1$ + String ENTITY_RESULT = "entity-result"; //$NON-NLS-1$ + String ENUMERATED = "enumerated"; //$NON-NLS-1$ + String EXCLUDE_DEFAULT_LISTENERS = "exclude-default-listeners"; //$NON-NLS-1$ + String EXCLUDE_SUPERCLASS_LISTENERS = "exclude-superclass-listeners"; //$NON-NLS-1$ + String FETCH = "fetch"; //$NON-NLS-1$ + String FIELD_RESULT = "field-result"; //$NON-NLS-1$ + String GENERATED_VALUE = "generated-value"; //$NON-NLS-1$ + String GENERATOR = "generator"; //$NON-NLS-1$ + String HINT = "hint"; //$NON-NLS-1$ + String ID = "id"; //$NON-NLS-1$ + String ID_CLASS = "id-class"; //$NON-NLS-1$ + String INHERITANCE = "inheritance"; //$NON-NLS-1$ + String INITIAL_VALUE = "initial-value"; //$NON-NLS-1$ + String INSERTABLE = "insertable"; //$NON-NLS-1$ + String INVERSE_JOIN_COLUMN = "inverse-join-column"; //$NON-NLS-1$ + String JOIN_COLUMN = "join-column"; //$NON-NLS-1$ + String JOIN_TABLE = "join-table"; //$NON-NLS-1$ + String LENGTH = "length"; //$NON-NLS-1$ + String LOB = "lob"; //$NON-NLS-1$ + String MANY_TO_MANY = "many-to-many"; //$NON-NLS-1$ + String MANY_TO_ONE = "many-to-one"; //$NON-NLS-1$ + String MAP_KEY = "map-key"; //$NON-NLS-1$ + String MAPPED_BY = "mapped-by"; //$NON-NLS-1$ + String MAPPED_SUPERCLASS = "mapped-superclass"; //$NON-NLS-1$ + String METADATA_COMPLETE = "metadata-complete"; //$NON-NLS-1$ + String METHOD_NAME = "method-name"; //$NON-NLS-1$ + String NAME = "name"; //$NON-NLS-1$ + String NAMED_NATIVE_QUERY = "named-native-query"; //$NON-NLS-1$ + String NAMED_QUERY = "named-query"; //$NON-NLS-1$ + String NULLABLE = "nullable"; //$NON-NLS-1$ + String ONE_TO_MANY = "one-to-many"; //$NON-NLS-1$ + String ONE_TO_ONE = "one-to-one"; //$NON-NLS-1$ + String OPTIONAL = "optional"; //$NON-NLS-1$ + String ORDER_BY = "order-by"; //$NON-NLS-1$ + String PACKAGE = "package"; //$NON-NLS-1$ + String PERSISTENCE_UNIT_DEFAULTS = "persistence-unit-defaults"; //$NON-NLS-1$ + String PERSISTENCE_UNIT_METADATA = "persistence-unit-metadata"; //$NON-NLS-1$ + String PK_COLUMN_NAME = "pk-column-name"; //$NON-NLS-1$ + String PK_COLUMN_VALUE = "pk-column-value"; //$NON-NLS-1$ + String POST_LOAD = "post-load"; //$NON-NLS-1$ + String POST_PERSIST = "post-persist"; //$NON-NLS-1$ + String POST_REMOVE = "post-remove"; //$NON-NLS-1$ + String POST_UPDATE = "post-update"; //$NON-NLS-1$ + String PRE_PERSIST = "pre-persist"; //$NON-NLS-1$ + String PRE_REMOVE = "pre-remove"; //$NON-NLS-1$ + String PRE_UPDATE = "pre-update"; //$NON-NLS-1$ + String PRECISION= "precision"; //$NON-NLS-1$ + String PRIMARY_KEY_JOIN_COLUMN = "primary-key-join-column"; //$NON-NLS-1$ + String QUERY = "query"; //$NON-NLS-1$ + String REFERENCED_COLUMN_NAME = "referenced-column-name"; //$NON-NLS-1$ + String RESULT_CLASS = "result-class"; //$NON-NLS-1$ + String RESULT_SET_MAPPING = "result-set-mapping"; //$NON-NLS-1$ + String SCALE= "scale"; //$NON-NLS-1$ + String SCHEMA = "schema"; //$NON-NLS-1$ + String SECONDARY_TABLE = "secondary-table"; //$NON-NLS-1$ + String SEQUENCE_GENERATOR = "sequence-generator"; //$NON-NLS-1$ + String SEQUENCE_NAME = "sequence-name"; //$NON-NLS-1$ + String SQL_RESULT_SET_MAPPING = "sql-result-set-mapping"; //$NON-NLS-1$ + String STRATEGY = "strategy"; //$NON-NLS-1$ + String TABLE = "table"; //$NON-NLS-1$ + String TABLE_GENERATOR = "table-generator"; //$NON-NLS-1$ + String TARGET_ENTITY = "target-entity"; //$NON-NLS-1$ + String TEMPORAL = "temporal"; //$NON-NLS-1$ + String TRANSIENT = "transient"; //$NON-NLS-1$ + String UNIQUE = "unique"; //$NON-NLS-1$ + String UNIQUE_CONSTRAINT = "unique-constraint"; //$NON-NLS-1$ + String UPDATABLE = "updatable"; //$NON-NLS-1$ + String VALUE = "value"; //$NON-NLS-1$ + String VALUE_COLUMN_NAME = "value-column-name"; //$NON-NLS-1$ + String VERSION = "version"; //$NON-NLS-1$ + String XML_MAPPING_METADATA_COMPLETE = "xml-mapping-metadata-complete"; //$NON-NLS-1$ +} diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/EmbeddableTranslator.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/EmbeddableTranslator.java new file mode 100644 index 0000000000..7a956e0db4 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/EmbeddableTranslator.java @@ -0,0 +1,61 @@ +/******************************************************************************* + * Copyright (c) 2007, 2008 Oracle. All rights reserved. This + * program and the accompanying materials are made available under the terms of + * the Eclipse Public License v1.0 which accompanies this distribution, and is + * available at http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: Oracle. - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.internal.resource.elorm.translators; + +import org.eclipse.emf.ecore.EStructuralFeature; +import org.eclipse.wst.common.internal.emf.resource.Translator; + +public class EmbeddableTranslator extends Translator + implements EclipseLinkOrmXmlMapper +{ + private Translator[] children; + + + public EmbeddableTranslator(String domNameAndPath, EStructuralFeature aFeature) { + super(domNameAndPath, aFeature); + } + + @Override + public Translator[] getChildren(Object target, int versionID) { + if (this.children == null) { + this.children = createChildren(); + } + return this.children; + } + + protected Translator[] createChildren() { + return new Translator[] { + createClassTranslator(), + createAccessTranslator(), + createMetadataCompleteTranslator(), + createDescriptionTranslator(), + createAttributesTranslator() + }; + } + + private Translator createClassTranslator() { + return new Translator(CLASS, ECLIPSELINK_ORM_PKG.getAbstractXmlTypeMapping_ClassName(), DOM_ATTRIBUTE); + } + + private Translator createAccessTranslator() { + return new Translator(ACCESS, ECLIPSELINK_ORM_PKG.getAbstractXmlTypeMapping_Access(), DOM_ATTRIBUTE); + } + + private Translator createMetadataCompleteTranslator() { + return new Translator(METADATA_COMPLETE, ECLIPSELINK_ORM_PKG.getAbstractXmlTypeMapping_MetadataComplete(), DOM_ATTRIBUTE); + } + + private Translator createDescriptionTranslator() { + return new Translator(DESCRIPTION, ECLIPSELINK_ORM_PKG.getAbstractXmlTypeMapping_Description()); + } + + private Translator createAttributesTranslator() { + return new AttributesTranslator(ATTRIBUTES, ECLIPSELINK_ORM_PKG.getAbstractXmlTypeMapping_Attributes()); + } +} diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/EmbeddedIdTranslator.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/EmbeddedIdTranslator.java new file mode 100644 index 0000000000..b73a41d9ed --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/EmbeddedIdTranslator.java @@ -0,0 +1,54 @@ +/******************************************************************************* + * Copyright (c) 2007, 2008 Oracle. All rights reserved. + * This program and the accompanying materials are made available under the + * terms of the Eclipse Public License v1.0, which accompanies this distribution + * and is available at http://www.eclipse.org/legal/epl-v10.html. + * + * Contributors: + * Oracle - initial API and implementation + ******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.internal.resource.elorm.translators; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EStructuralFeature; +import org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmFactory; +import org.eclipse.wst.common.internal.emf.resource.Translator; + +public class EmbeddedIdTranslator extends Translator + implements EclipseLinkOrmXmlMapper +{ + private Translator[] children; + + + public EmbeddedIdTranslator(String domNameAndPath, EStructuralFeature aFeature) { + super(domNameAndPath, aFeature); + } + + @Override + public EObject createEMFObject(String nodeName, String readAheadName) { + return EclipseLinkOrmFactory.eINSTANCE.createXmlEmbeddedIdImpl(); + } + + @Override + public Translator[] getChildren(Object target, int versionID) { + if (this.children == null) { + this.children = createChildren(); + } + return this.children; + } + + protected Translator[] createChildren() { + return new Translator[] { + createNameTranslator(), + createAttributeOverrideTranslator() + }; + } + + private Translator createNameTranslator() { + return new Translator(NAME, ECLIPSELINK_ORM_PKG.getXmlAttributeMapping_Name(), DOM_ATTRIBUTE); + } + + private Translator createAttributeOverrideTranslator() { + return new AttributeOverrideTranslator(ATTRIBUTE_OVERRIDE, ECLIPSELINK_ORM_PKG.getBaseXmlEmbedded_AttributeOverrides()); + } +} diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/EmbeddedTranslator.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/EmbeddedTranslator.java new file mode 100644 index 0000000000..3090c01b64 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/EmbeddedTranslator.java @@ -0,0 +1,54 @@ +/******************************************************************************* + * Copyright (c) 2007, 2008 Oracle. All rights reserved. + * This program and the accompanying materials are made available under the + * terms of the Eclipse Public License v1.0, which accompanies this distribution + * and is available at http://www.eclipse.org/legal/epl-v10.html. + * + * Contributors: + * Oracle - initial API and implementation + ******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.internal.resource.elorm.translators; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EStructuralFeature; +import org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmFactory; +import org.eclipse.wst.common.internal.emf.resource.Translator; + +public class EmbeddedTranslator extends Translator + implements EclipseLinkOrmXmlMapper +{ + private Translator[] children; + + + public EmbeddedTranslator(String domNameAndPath, EStructuralFeature aFeature) { + super(domNameAndPath, aFeature); + } + + @Override + public EObject createEMFObject(String nodeName, String readAheadName) { + return EclipseLinkOrmFactory.eINSTANCE.createXmlEmbeddedImpl(); + } + + @Override + public Translator[] getChildren(Object target, int versionID) { + if (this.children == null) { + this.children = createChildren(); + } + return this.children; + } + + protected Translator[] createChildren() { + return new Translator[] { + createNameTranslator(), + createAttributeOverrideTranslator() + }; + } + + private Translator createNameTranslator() { + return new Translator(NAME, ECLIPSELINK_ORM_PKG.getXmlAttributeMapping_Name(), DOM_ATTRIBUTE); + } + + private Translator createAttributeOverrideTranslator() { + return new AttributeOverrideTranslator(ATTRIBUTE_OVERRIDE, ECLIPSELINK_ORM_PKG.getBaseXmlEmbedded_AttributeOverrides()); + } +} diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/EntityListenerTranslator.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/EntityListenerTranslator.java new file mode 100644 index 0000000000..a369984bd1 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/EntityListenerTranslator.java @@ -0,0 +1,78 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. All rights reserved. + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.internal.resource.elorm.translators; + +import org.eclipse.emf.ecore.EStructuralFeature; +import org.eclipse.wst.common.internal.emf.resource.Translator; + +public class EntityListenerTranslator extends Translator + implements EclipseLinkOrmXmlMapper +{ + private Translator[] children; + + + public EntityListenerTranslator(String domNameAndPath, EStructuralFeature aFeature) { + super(domNameAndPath, aFeature); + } + + @Override + public Translator[] getChildren(Object target, int versionID) { + if (this.children == null) { + this.children = createChildren(); + } + return this.children; + } + + private Translator[] createChildren() { + return new Translator[] { + createClassTranslator(), + createPrePersistTranslator(), + createPostPersistTranslator(), + createPreRemoveTranslator(), + createPostRemoveTranslator(), + createPreUpdateTranslator(), + createPostUpdateTranslator(), + createPostLoadTranslator() + }; + } + + private Translator createClassTranslator() { + return new Translator(CLASS, ECLIPSELINK_ORM_PKG.getEntityListener_ClassName()); + } + + private Translator createPrePersistTranslator() { + return new EventMethodTranslator(PRE_PERSIST, ECLIPSELINK_ORM_PKG.getEntityListener_PrePersist()); + } + + private Translator createPostPersistTranslator() { + return new EventMethodTranslator(POST_PERSIST, ECLIPSELINK_ORM_PKG.getEntityListener_PostPersist()); + } + + private Translator createPreRemoveTranslator() { + return new EventMethodTranslator(PRE_REMOVE, ECLIPSELINK_ORM_PKG.getEntityListener_PreRemove()); + } + + private Translator createPostRemoveTranslator() { + return new EventMethodTranslator(POST_REMOVE, ECLIPSELINK_ORM_PKG.getEntityListener_PostRemove()); + } + + private Translator createPreUpdateTranslator() { + return new EventMethodTranslator(PRE_UPDATE, ECLIPSELINK_ORM_PKG.getEntityListener_PreUpdate()); + } + + private Translator createPostUpdateTranslator() { + return new EventMethodTranslator(POST_UPDATE, ECLIPSELINK_ORM_PKG.getEntityListener_PostUpdate()); + } + + private Translator createPostLoadTranslator() { + return new EventMethodTranslator(POST_LOAD, ECLIPSELINK_ORM_PKG.getEntityListener_PostLoad()); + } +} diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/EntityListenersTranslator.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/EntityListenersTranslator.java new file mode 100644 index 0000000000..ead3554078 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/EntityListenersTranslator.java @@ -0,0 +1,43 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. All rights reserved. + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.internal.resource.elorm.translators; + +import org.eclipse.emf.ecore.EStructuralFeature; +import org.eclipse.wst.common.internal.emf.resource.Translator; + +public class EntityListenersTranslator extends Translator + implements EclipseLinkOrmXmlMapper +{ + private Translator[] children; + + + public EntityListenersTranslator(String domNameAndPath, EStructuralFeature aFeature) { + super(domNameAndPath, aFeature); + } + + @Override + public Translator[] getChildren(Object target, int versionID) { + if (this.children == null) { + this.children = createChildren(); + } + return this.children; + } + + private Translator[] createChildren() { + return new Translator[] { + createEntityListenerTranslator() + }; + } + + private Translator createEntityListenerTranslator() { + return new EntityListenerTranslator(ENTITY_LISTENER, ECLIPSELINK_ORM_PKG.getEntityListeners_EntityListeners()); + } +} diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/EntityMappingsTranslator.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/EntityMappingsTranslator.java new file mode 100644 index 0000000000..cdc83d451e --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/EntityMappingsTranslator.java @@ -0,0 +1,118 @@ +/******************************************************************************* + * Copyright (c) 2006, 2008 Oracle. All rights reserved. This + * program and the accompanying materials are made available under the terms of + * the Eclipse Public License v1.0 which accompanies this distribution, and is + * available at http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: Oracle. - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.internal.resource.elorm.translators; + +import org.eclipse.wst.common.internal.emf.resource.ConstantAttributeTranslator; +import org.eclipse.wst.common.internal.emf.resource.RootTranslator; +import org.eclipse.wst.common.internal.emf.resource.Translator; + +public class EntityMappingsTranslator extends RootTranslator + implements EclipseLinkOrmXmlMapper +{ + public static EntityMappingsTranslator INSTANCE = new EntityMappingsTranslator(); + + + private Translator[] children; + + + public EntityMappingsTranslator() { + super(ENTITY_MAPPINGS, ECLIPSELINK_ORM_PKG.getXmlEntityMappings()); + } + + @Override + public Translator[] getChildren(Object target, int versionID) { + if (this.children == null) { + this.children = createChildren(); + } + return this.children; + } + + private Translator[] createChildren() { + return new Translator[] { + createVersionTranslator(), + new ConstantAttributeTranslator(XML_NS, ECLIPSELINK_ORM_NS_URL), + new ConstantAttributeTranslator(XML_NS_XSI, XSI_NS_URL), + new ConstantAttributeTranslator(XSI_SCHEMA_LOCATION, ECLIPSELINK_ORM_NS_URL + ' ' + ECLIPSELINK_ORM_SCHEMA_LOC_1_0), + createDescriptionTranslator(), + createPersistenceUnitMetadataTranslator(), + createPackageTranslator(), + createSchemaTranslator(), + createCatalogTranslator(), + createAccessTranslator(), + createSequenceGeneratorTranslator(), + createTableGeneratorTranslator(), + createNamedQueryTranslator(), + createNamedNativeQueryTranslator(), + createSqlResultSetMappingTranslator(), + createMappedSuperclassTranslator(), + createEntityTranslator(), + createEmbeddableTranslator() + }; + } + + private Translator createVersionTranslator() { + return new Translator(VERSION, ECLIPSELINK_ORM_PKG.getXmlEntityMappings_Version(), DOM_ATTRIBUTE); + } + + private Translator createDescriptionTranslator() { + return new Translator(DESCRIPTION, ECLIPSELINK_ORM_PKG.getXmlEntityMappings_Description()); + } + + private Translator createPersistenceUnitMetadataTranslator() { + return new PersistenceUnitMetadataTranslator(PERSISTENCE_UNIT_METADATA, ECLIPSELINK_ORM_PKG.getXmlEntityMappings_PersistenceUnitMetadata()); + } + + private Translator createPackageTranslator() { + return new Translator(PACKAGE, ECLIPSELINK_ORM_PKG.getXmlEntityMappings_Package()); + } + + private Translator createSchemaTranslator() { + return new Translator(SCHEMA, ECLIPSELINK_ORM_PKG.getXmlEntityMappings_Schema()); + } + + private Translator createCatalogTranslator() { + return new Translator(CATALOG, ECLIPSELINK_ORM_PKG.getXmlEntityMappings_Catalog()); + } + + private Translator createAccessTranslator() { + return new Translator(ACCESS, ECLIPSELINK_ORM_PKG.getXmlEntityMappings_Access()); + } + + private Translator createSequenceGeneratorTranslator() { + return new SequenceGeneratorTranslator(SEQUENCE_GENERATOR, ECLIPSELINK_ORM_PKG.getXmlEntityMappings_SequenceGenerators()); + } + + private Translator createTableGeneratorTranslator() { + return new TableGeneratorTranslator(TABLE_GENERATOR, ECLIPSELINK_ORM_PKG.getXmlEntityMappings_TableGenerators()); + } + + private Translator createNamedQueryTranslator() { + return new NamedQueryTranslator(NAMED_QUERY, ECLIPSELINK_ORM_PKG.getXmlEntityMappings_NamedQueries()); + } + + private Translator createNamedNativeQueryTranslator() { + return new NamedNativeQueryTranslator(NAMED_NATIVE_QUERY, ECLIPSELINK_ORM_PKG.getXmlEntityMappings_NamedNativeQueries()); + } + + private Translator createSqlResultSetMappingTranslator() { + return new SqlResultSetMappingTranslator(SQL_RESULT_SET_MAPPING, ECLIPSELINK_ORM_PKG.getXmlEntityMappings_SqlResultSetMappings()); + } + + private Translator createMappedSuperclassTranslator() { + return new MappedSuperclassTranslator(MAPPED_SUPERCLASS, ECLIPSELINK_ORM_PKG.getXmlEntityMappings_MappedSuperclasses()); + } + + private Translator createEntityTranslator() { + return new EntityTranslator(ENTITY, ECLIPSELINK_ORM_PKG.getXmlEntityMappings_Entities()); + } + + private Translator createEmbeddableTranslator() { + return new EmbeddableTranslator(EMBEDDABLE, ECLIPSELINK_ORM_PKG.getXmlEntityMappings_Embeddables()); + } +} diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/EntityResultTranslator.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/EntityResultTranslator.java new file mode 100644 index 0000000000..ff7dfb882e --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/EntityResultTranslator.java @@ -0,0 +1,53 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. All rights reserved. + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.internal.resource.elorm.translators; + +import org.eclipse.emf.ecore.EStructuralFeature; +import org.eclipse.wst.common.internal.emf.resource.Translator; + +public class EntityResultTranslator extends Translator + implements EclipseLinkOrmXmlMapper +{ + private Translator[] children; + + + public EntityResultTranslator(String domNameAndPath, EStructuralFeature aFeature) { + super(domNameAndPath, aFeature); + } + + @Override + public Translator[] getChildren(Object target, int versionID) { + if (this.children == null) { + this.children = createChildren(); + } + return this.children; + } + + protected Translator[] createChildren() { + return new Translator[] { + createEntityClassTranslator(), + createDiscriminatorColumnTranslator(), + createFieldResultTranslator() + }; + } + + private Translator createEntityClassTranslator() { + return new Translator(ENTITY_CLASS, ECLIPSELINK_ORM_PKG.getEntityResult_EntityClass(), DOM_ATTRIBUTE); + } + + private Translator createDiscriminatorColumnTranslator() { + return new Translator(DISCRIMINATOR_COLUMN, ECLIPSELINK_ORM_PKG.getEntityResult_DiscriminatorColumn(), DOM_ATTRIBUTE); + } + + private Translator createFieldResultTranslator() { + return new FieldResultTranslator(FIELD_RESULT, ECLIPSELINK_ORM_PKG.getEntityResult_FieldResults()); + } +} diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/EntityTranslator.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/EntityTranslator.java new file mode 100644 index 0000000000..d431e7867f --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/EntityTranslator.java @@ -0,0 +1,187 @@ +/******************************************************************************* + * Copyright (c) 2006, 2008 Oracle. All rights reserved. This + * program and the accompanying materials are made available under the terms of + * the Eclipse Public License v1.0 which accompanies this distribution, and is + * available at http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: Oracle. - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.internal.resource.elorm.translators; + +import org.eclipse.emf.ecore.EStructuralFeature; +import org.eclipse.jpt.core.internal.resource.common.translators.EmptyTagBooleanTranslator; +import org.eclipse.wst.common.internal.emf.resource.Translator; + +public class EntityTranslator extends Translator + implements EclipseLinkOrmXmlMapper +{ + private Translator[] children; + + + public EntityTranslator(String domNameAndPath, EStructuralFeature aFeature) { + super(domNameAndPath, aFeature); + } + + @Override + public Translator[] getChildren(Object target, int versionID) { + if (this.children == null) { + this.children = createChildren(); + } + return this.children; + } + + protected Translator[] createChildren() { + return new Translator[] { + createNameTranslator(), + createClassTranslator(), + createAccessTranslator(), + createMetadataCompleteTranslator(), + createDescriptionTranslator(), + createTableTranslator(), + createSecondaryTableTranslator(), + createPrimaryKeyJoinColumnTranslator(), + createIdClassTranslator(), + createInheritanceTranslator(), + createDiscriminatorValueTranslator(), + createDiscriminatorColumnTranslator(), + createSequenceGeneratorTranslator(), + createTableGeneratorTranslator(), + createNamedQueryTranslator(), + createNamedNativeQueryTranslator(), + createSqlResultSetMappingTranslator(), + createExcludeDefaultListenersTranslator(), + createExcludeSuperclassListenersTranslator(), + createEntityListenersTranslator(), + createPrePersistTranslator(), + createPostPersistTranslator(), + createPreRemoveTranslator(), + createPostRemoveTranslator(), + createPreUpdateTranslator(), + createPostUpdateTranslator(), + createPostLoadTranslator(), + createAttributeOverrideTranslator(), + createAssociationOverrideTranslator(), + createAttributesTranslator() + }; + } + + private Translator createNameTranslator() { + return new Translator(NAME, ECLIPSELINK_ORM_PKG.getXmlEntity_Name(), DOM_ATTRIBUTE); + } + + private Translator createClassTranslator() { + return new Translator(CLASS, ECLIPSELINK_ORM_PKG.getAbstractXmlTypeMapping_ClassName(), DOM_ATTRIBUTE); + } + + private Translator createAccessTranslator() { + return new Translator(ACCESS, ECLIPSELINK_ORM_PKG.getAbstractXmlTypeMapping_Access(), DOM_ATTRIBUTE); + } + + private Translator createMetadataCompleteTranslator() { + return new Translator(METADATA_COMPLETE, ECLIPSELINK_ORM_PKG.getAbstractXmlTypeMapping_MetadataComplete(), DOM_ATTRIBUTE); + } + + private Translator createDescriptionTranslator() { + return new Translator(DESCRIPTION, ECLIPSELINK_ORM_PKG.getAbstractXmlTypeMapping_Description()); + } + + private Translator createTableTranslator() { + return new TableTranslator(TABLE, ECLIPSELINK_ORM_PKG.getXmlEntity_Table()); + } + + private Translator createSecondaryTableTranslator() { + return new SecondaryTableTranslator(SECONDARY_TABLE, ECLIPSELINK_ORM_PKG.getXmlEntity_SecondaryTables()); + } + + private Translator createPrimaryKeyJoinColumnTranslator() { + return new PrimaryKeyJoinColumnTranslator(PRIMARY_KEY_JOIN_COLUMN, ECLIPSELINK_ORM_PKG.getXmlEntity_PrimaryKeyJoinColumns()); + } + + private Translator createIdClassTranslator() { + return new IdClassTranslator(ID_CLASS, ECLIPSELINK_ORM_PKG.getXmlEntity_IdClass()); + } + + private Translator createInheritanceTranslator() { + return new InheritanceTranslator(INHERITANCE, ECLIPSELINK_ORM_PKG.getXmlEntity_Inheritance()); + } + + private Translator createDiscriminatorValueTranslator() { + return new Translator(DISCRIMINATOR_VALUE, ECLIPSELINK_ORM_PKG.getXmlEntity_DiscriminatorValue()); + } + + private Translator createDiscriminatorColumnTranslator() { + return new DiscriminatorColumnTranslator(DISCRIMINATOR_COLUMN, ECLIPSELINK_ORM_PKG.getXmlEntity_DiscriminatorColumn()); + } + + private Translator createSequenceGeneratorTranslator() { + return new SequenceGeneratorTranslator(SEQUENCE_GENERATOR, ECLIPSELINK_ORM_PKG.getXmlEntity_SequenceGenerator()); + } + + private Translator createTableGeneratorTranslator() { + return new TableGeneratorTranslator(TABLE_GENERATOR, ECLIPSELINK_ORM_PKG.getXmlEntity_TableGenerator()); + } + + private Translator createNamedQueryTranslator() { + return new NamedQueryTranslator(NAMED_QUERY, ECLIPSELINK_ORM_PKG.getXmlEntity_NamedQueries()); + } + + private Translator createNamedNativeQueryTranslator() { + return new NamedNativeQueryTranslator(NAMED_NATIVE_QUERY, ECLIPSELINK_ORM_PKG.getXmlEntity_NamedNativeQueries()); + } + + private Translator createSqlResultSetMappingTranslator() { + return new SqlResultSetMappingTranslator(SQL_RESULT_SET_MAPPING, ECLIPSELINK_ORM_PKG.getXmlEntity_SqlResultSetMappings()); + } + + private Translator createExcludeDefaultListenersTranslator() { + return new EmptyTagBooleanTranslator(EXCLUDE_DEFAULT_LISTENERS, ECLIPSELINK_ORM_PKG.getXmlEntity_ExcludeDefaultListeners()); + } + + private Translator createExcludeSuperclassListenersTranslator() { + return new EmptyTagBooleanTranslator(EXCLUDE_SUPERCLASS_LISTENERS, ECLIPSELINK_ORM_PKG.getXmlEntity_ExcludeSuperclassListeners()); + } + + private Translator createEntityListenersTranslator() { + return new EntityListenersTranslator(ENTITY_LISTENERS, ECLIPSELINK_ORM_PKG.getXmlEntity_EntityListeners()); + } + + private Translator createPrePersistTranslator() { + return new EventMethodTranslator(PRE_PERSIST, ECLIPSELINK_ORM_PKG.getXmlEntity_PrePersist()); + } + + private Translator createPostPersistTranslator() { + return new EventMethodTranslator(POST_PERSIST, ECLIPSELINK_ORM_PKG.getXmlEntity_PostPersist()); + } + + private Translator createPreRemoveTranslator() { + return new EventMethodTranslator(PRE_REMOVE, ECLIPSELINK_ORM_PKG.getXmlEntity_PreRemove()); + } + + private Translator createPostRemoveTranslator() { + return new EventMethodTranslator(POST_REMOVE, ECLIPSELINK_ORM_PKG.getXmlEntity_PostRemove()); + } + + private Translator createPreUpdateTranslator() { + return new EventMethodTranslator(PRE_UPDATE, ECLIPSELINK_ORM_PKG.getXmlEntity_PreUpdate()); + } + + private Translator createPostUpdateTranslator() { + return new EventMethodTranslator(POST_UPDATE, ECLIPSELINK_ORM_PKG.getXmlEntity_PostUpdate()); + } + + private Translator createPostLoadTranslator() { + return new EventMethodTranslator(POST_LOAD, ECLIPSELINK_ORM_PKG.getXmlEntity_PostLoad()); + } + + private Translator createAttributeOverrideTranslator() { + return new AttributeOverrideTranslator(ATTRIBUTE_OVERRIDE, ECLIPSELINK_ORM_PKG.getXmlEntity_AttributeOverrides()); + } + + private Translator createAssociationOverrideTranslator() { + return new AssociationOverrideTranslator(ASSOCIATION_OVERRIDE, ECLIPSELINK_ORM_PKG.getXmlEntity_AssociationOverrides()); + } + + private Translator createAttributesTranslator() { + return new AttributesTranslator(ATTRIBUTES, ECLIPSELINK_ORM_PKG.getAbstractXmlTypeMapping_Attributes()); + } +} diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/EventMethodTranslator.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/EventMethodTranslator.java new file mode 100644 index 0000000000..520ba3293a --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/EventMethodTranslator.java @@ -0,0 +1,43 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. All rights reserved. + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.internal.resource.elorm.translators; + +import org.eclipse.emf.ecore.EStructuralFeature; +import org.eclipse.wst.common.internal.emf.resource.Translator; + +public class EventMethodTranslator extends Translator + implements EclipseLinkOrmXmlMapper +{ + private Translator[] children; + + + public EventMethodTranslator(String domNameAndPath, EStructuralFeature aFeature) { + super(domNameAndPath, aFeature, END_TAG_NO_INDENT); + } + + @Override + public Translator[] getChildren(Object target, int versionID) { + if (this.children == null) { + this.children = createChildren(); + } + return this.children; + } + + private Translator[] createChildren() { + return new Translator[] { + createMethodNameTranslator() + }; + } + + private Translator createMethodNameTranslator() { + return new Translator(METHOD_NAME, ECLIPSELINK_ORM_PKG.getEventMethod_MethodName(), DOM_ATTRIBUTE); + } +} diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/FieldResultTranslator.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/FieldResultTranslator.java new file mode 100644 index 0000000000..f890b43eb5 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/FieldResultTranslator.java @@ -0,0 +1,48 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. All rights reserved. + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.internal.resource.elorm.translators; + +import org.eclipse.emf.ecore.EStructuralFeature; +import org.eclipse.wst.common.internal.emf.resource.Translator; + +public class FieldResultTranslator extends Translator + implements EclipseLinkOrmXmlMapper +{ + private Translator[] children; + + + public FieldResultTranslator(String domNameAndPath, EStructuralFeature aFeature) { + super(domNameAndPath, aFeature, END_TAG_NO_INDENT); + } + + @Override + public Translator[] getChildren(Object target, int versionID) { + if (this.children == null) { + this.children = createChildren(); + } + return this.children; + } + + protected Translator[] createChildren() { + return new Translator[] { + createNameTranslator(), + createColumnTranslator() + }; + } + + private Translator createNameTranslator() { + return new Translator(NAME, ECLIPSELINK_ORM_PKG.getFieldResult_Name(), DOM_ATTRIBUTE); + } + + private Translator createColumnTranslator() { + return new Translator(COLUMN, ECLIPSELINK_ORM_PKG.getFieldResult_Column(), DOM_ATTRIBUTE); + } +} diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/GeneratedValueTranslator.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/GeneratedValueTranslator.java new file mode 100644 index 0000000000..2f304ebb6a --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/GeneratedValueTranslator.java @@ -0,0 +1,53 @@ +/******************************************************************************* + * Copyright (c) 2007, 2008 Oracle. All rights reserved. This + * program and the accompanying materials are made available under the terms of + * the Eclipse Public License v1.0 which accompanies this distribution, and is + * available at http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: Oracle. - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.internal.resource.elorm.translators; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EStructuralFeature; +import org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmFactory; +import org.eclipse.wst.common.internal.emf.resource.Translator; + +public class GeneratedValueTranslator extends Translator + implements EclipseLinkOrmXmlMapper +{ + private Translator[] children; + + + public GeneratedValueTranslator(String domNameAndPath, EStructuralFeature aFeature) { + super(domNameAndPath, aFeature, END_TAG_NO_INDENT); + } + + @Override + public EObject createEMFObject(String nodeName, String readAheadName) { + return EclipseLinkOrmFactory.eINSTANCE.createXmlGeneratedValueImpl(); + } + + @Override + public Translator[] getChildren(Object target, int versionID) { + if (this.children == null) { + this.children = createChildren(); + } + return this.children; + } + + protected Translator[] createChildren() { + return new Translator[] { + createStrategyTranslator(), + createGeneratorTranslator() + }; + } + + protected Translator createStrategyTranslator() { + return new Translator(STRATEGY, ECLIPSELINK_ORM_PKG.getXmlGeneratedValue_Strategy(), DOM_ATTRIBUTE); + } + + protected Translator createGeneratorTranslator() { + return new Translator(GENERATOR, ECLIPSELINK_ORM_PKG.getXmlGeneratedValue_Generator(), DOM_ATTRIBUTE); + } +} diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/IdClassTranslator.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/IdClassTranslator.java new file mode 100644 index 0000000000..f6db4896ac --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/IdClassTranslator.java @@ -0,0 +1,41 @@ +/******************************************************************************* + * Copyright (c) 2007, 2008 Oracle. All rights reserved. This + * program and the accompanying materials are made available under the terms of + * the Eclipse Public License v1.0 which accompanies this distribution, and is + * available at http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: Oracle. - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.internal.resource.elorm.translators; + +import org.eclipse.emf.ecore.EStructuralFeature; +import org.eclipse.wst.common.internal.emf.resource.Translator; + +public class IdClassTranslator extends Translator + implements EclipseLinkOrmXmlMapper +{ + private Translator[] children; + + + public IdClassTranslator(String domNameAndPath, EStructuralFeature aFeature) { + super(domNameAndPath, aFeature, END_TAG_NO_INDENT); + } + + @Override + public Translator[] getChildren(Object target, int versionID) { + if (this.children == null) { + this.children = createChildren(); + } + return this.children; + } + + protected Translator[] createChildren() { + return new Translator[] { + createClassTranslator() + }; + } + + protected Translator createClassTranslator() { + return new Translator(CLASS, ECLIPSELINK_ORM_PKG.getXmlIdClass_ClassName(), DOM_ATTRIBUTE); + } +} diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/IdTranslator.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/IdTranslator.java new file mode 100644 index 0000000000..52cce976fe --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/IdTranslator.java @@ -0,0 +1,73 @@ +/******************************************************************************* + * Copyright (c) 2006, 2008 Oracle. All rights reserved. This + * program and the accompanying materials are made available under the terms of + * the Eclipse Public License v1.0 which accompanies this distribution, and is + * available at http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: Oracle. - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.internal.resource.elorm.translators; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EStructuralFeature; +import org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmFactory; +import org.eclipse.wst.common.internal.emf.resource.Translator; + +public class IdTranslator extends Translator + implements EclipseLinkOrmXmlMapper +{ + private Translator[] children; + + + public IdTranslator(String domNameAndPath, EStructuralFeature aFeature) { + super(domNameAndPath, aFeature); + } + + @Override + public EObject createEMFObject(String nodeName, String readAheadName) { + return EclipseLinkOrmFactory.eINSTANCE.createXmlIdImpl(); + } + + @Override + public Translator[] getChildren(Object target, int versionID) { + if (this.children == null) { + this.children = createChildren(); + } + return this.children; + } + + protected Translator[] createChildren() { + return new Translator[] { + createNameTranslator(), + createColumnTranslator(), + createGeneratedValueTranslator(), + createTemporalTranslator(), + createTableGeneratorTranslator(), + createSequenceGeneratorTranslator() + }; + } + + private Translator createNameTranslator() { + return new Translator(NAME, ECLIPSELINK_ORM_PKG.getXmlAttributeMapping_Name(), DOM_ATTRIBUTE); + } + + private Translator createColumnTranslator() { + return new ColumnTranslator(COLUMN, ECLIPSELINK_ORM_PKG.getColumnMapping_Column()); + } + + private Translator createGeneratedValueTranslator() { + return new GeneratedValueTranslator(GENERATED_VALUE, ECLIPSELINK_ORM_PKG.getXmlId_GeneratedValue()); + } + + private Translator createTemporalTranslator() { + return new Translator(TEMPORAL, ECLIPSELINK_ORM_PKG.getXmlId_Temporal()); + } + + private Translator createTableGeneratorTranslator() { + return new TableGeneratorTranslator(TABLE_GENERATOR, ECLIPSELINK_ORM_PKG.getXmlId_TableGenerator()); + } + + private Translator createSequenceGeneratorTranslator() { + return new SequenceGeneratorTranslator(SEQUENCE_GENERATOR, ECLIPSELINK_ORM_PKG.getXmlId_SequenceGenerator()); + } +} diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/InheritanceTranslator.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/InheritanceTranslator.java new file mode 100644 index 0000000000..e8cc7c05f7 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/InheritanceTranslator.java @@ -0,0 +1,41 @@ +/******************************************************************************* + * Copyright (c) 2007, 2008 Oracle. All rights reserved. This + * program and the accompanying materials are made available under the terms of + * the Eclipse Public License v1.0 which accompanies this distribution, and is + * available at http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: Oracle. - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.internal.resource.elorm.translators; + +import org.eclipse.emf.ecore.EStructuralFeature; +import org.eclipse.wst.common.internal.emf.resource.Translator; + +public class InheritanceTranslator extends Translator + implements EclipseLinkOrmXmlMapper +{ + private Translator[] children; + + + public InheritanceTranslator(String domNameAndPath, EStructuralFeature aFeature) { + super(domNameAndPath, aFeature, END_TAG_NO_INDENT); + } + + @Override + public Translator[] getChildren(Object target, int versionID) { + if (this.children == null) { + this.children = createChildren(); + } + return this.children; + } + + protected Translator[] createChildren() { + return new Translator[] { + createStrategyTranslator(), + }; + } + + private Translator createStrategyTranslator() { + return new Translator(STRATEGY, ECLIPSELINK_ORM_PKG.getInheritance_Strategy(), DOM_ATTRIBUTE); + } +} diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/JoinColumnTranslator.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/JoinColumnTranslator.java new file mode 100644 index 0000000000..7d231e39b6 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/JoinColumnTranslator.java @@ -0,0 +1,85 @@ +/******************************************************************************* + * Copyright (c) 2007, 2008 Oracle. All rights reserved. + * This program and the accompanying materials are made available under the terms of + * the Eclipse Public License v1.0, which accompanies this distribution and is available at + * http://www.eclipse.org/legal/epl-v10.html. + * + * Contributors: + * Oracle - initial API and implementation + ******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.internal.resource.elorm.translators; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EStructuralFeature; +import org.eclipse.jpt.core.internal.resource.common.translators.BooleanTranslator; +import org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmFactory; +import org.eclipse.wst.common.internal.emf.resource.Translator; + +public class JoinColumnTranslator extends Translator + implements EclipseLinkOrmXmlMapper +{ + private Translator[] children; + + + public JoinColumnTranslator(String domNameAndPath, EStructuralFeature aFeature) { + super(domNameAndPath, aFeature, END_TAG_NO_INDENT); + } + + @Override + public EObject createEMFObject(String nodeName, String readAheadName) { + return EclipseLinkOrmFactory.eINSTANCE.createXmlJoinColumnImpl(); + } + + @Override + public Translator[] getChildren(Object target, int versionID) { + if (this.children == null) { + this.children = createChildren(); + } + return this.children; + } + + protected Translator[] createChildren() { + return new Translator[] { + createNameTranslator(), + createReferencedColumnNameTranslator(), + createUniqueTranslator(), + createNullableTranslator(), + createInsertableTranslator(), + createUpdatableTranslator(), + createColumnDefinitionTranslator(), + createTableTranslator(), + }; + } + + private Translator createNameTranslator() { + return new Translator(NAME, ECLIPSELINK_ORM_PKG.getXmlNamedColumn_Name(), DOM_ATTRIBUTE); + } + + private Translator createReferencedColumnNameTranslator() { + return new Translator(REFERENCED_COLUMN_NAME, ECLIPSELINK_ORM_PKG.getXmlJoinColumn_ReferencedColumnName(), DOM_ATTRIBUTE); + } + + private Translator createUniqueTranslator() { + return new BooleanTranslator(UNIQUE, ECLIPSELINK_ORM_PKG.getXmlAbstractColumn_Unique(), DOM_ATTRIBUTE); + } + + private Translator createNullableTranslator() { + return new BooleanTranslator(NULLABLE, ECLIPSELINK_ORM_PKG.getXmlAbstractColumn_Nullable(), DOM_ATTRIBUTE); + } + + private Translator createInsertableTranslator() { + return new BooleanTranslator(INSERTABLE, ECLIPSELINK_ORM_PKG.getXmlAbstractColumn_Insertable(), DOM_ATTRIBUTE); + } + + private Translator createUpdatableTranslator() { + return new BooleanTranslator(UPDATABLE, ECLIPSELINK_ORM_PKG.getXmlAbstractColumn_Updatable(), DOM_ATTRIBUTE); + } + + private Translator createColumnDefinitionTranslator() { + return new Translator(COLUMN_DEFINITION, ECLIPSELINK_ORM_PKG.getXmlNamedColumn_ColumnDefinition(), DOM_ATTRIBUTE); + } + + private Translator createTableTranslator() { + return new Translator(TABLE, ECLIPSELINK_ORM_PKG.getXmlAbstractColumn_Table(), DOM_ATTRIBUTE); + } +} diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/JoinTableTranslator.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/JoinTableTranslator.java new file mode 100644 index 0000000000..e3400f4ae6 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/JoinTableTranslator.java @@ -0,0 +1,73 @@ +/******************************************************************************* + * Copyright (c) 2007, 2008 Oracle. All rights reserved. This + * program and the accompanying materials are made available under the terms of + * the Eclipse Public License v1.0 which accompanies this distribution, and is + * available at http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: Oracle. - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.internal.resource.elorm.translators; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EStructuralFeature; +import org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmFactory; +import org.eclipse.wst.common.internal.emf.resource.Translator; + +public class JoinTableTranslator extends Translator + implements EclipseLinkOrmXmlMapper +{ + private Translator[] children; + + + public JoinTableTranslator(String domNameAndPath, EStructuralFeature aFeature) { + super(domNameAndPath, aFeature); + } + + @Override + public EObject createEMFObject(String nodeName, String readAheadName) { + return EclipseLinkOrmFactory.eINSTANCE.createXmlJoinTableImpl(); + } + + @Override + public Translator[] getChildren(Object target, int versionID) { + if (this.children == null) { + this.children = createChildren(); + } + return this.children; + } + + protected Translator[] createChildren() { + return new Translator[] { + createNameTranslator(), + createCatalogTranslator(), + createSchemaTranslator(), + createJoinColumnTranslator(), + createInverseJoinColumnTranslator(), + createUniqueConstraintTranslator() + }; + } + + private Translator createNameTranslator() { + return new Translator(NAME, ECLIPSELINK_ORM_PKG.getXmlBaseTable_Name(), DOM_ATTRIBUTE); + } + + private Translator createCatalogTranslator() { + return new Translator(CATALOG, ECLIPSELINK_ORM_PKG.getXmlBaseTable_Catalog(), DOM_ATTRIBUTE); + } + + private Translator createSchemaTranslator() { + return new Translator(SCHEMA, ECLIPSELINK_ORM_PKG.getXmlBaseTable_Schema(), DOM_ATTRIBUTE); + } + + private Translator createJoinColumnTranslator() { + return new JoinColumnTranslator(JOIN_COLUMN, ECLIPSELINK_ORM_PKG.getXmlJoinTable_JoinColumns()); + } + + private Translator createInverseJoinColumnTranslator() { + return new JoinColumnTranslator(INVERSE_JOIN_COLUMN, ECLIPSELINK_ORM_PKG.getXmlJoinTable_InverseJoinColumns()); + } + + private Translator createUniqueConstraintTranslator() { + return new UniqueConstraintTranslator(UNIQUE_CONSTRAINT, ECLIPSELINK_ORM_PKG.getXmlBaseTable_UniqueConstraints()); + } +} diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/ManyToManyTranslator.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/ManyToManyTranslator.java new file mode 100644 index 0000000000..f3aea5b218 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/ManyToManyTranslator.java @@ -0,0 +1,83 @@ +/******************************************************************************* + * Copyright (c) 2006, 2008 Oracle. All rights reserved. This + * program and the accompanying materials are made available under the terms of + * the Eclipse Public License v1.0 which accompanies this distribution, and is + * available at http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: Oracle. - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.internal.resource.elorm.translators; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EStructuralFeature; +import org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmFactory; +import org.eclipse.wst.common.internal.emf.resource.Translator; + +public class ManyToManyTranslator extends Translator + implements EclipseLinkOrmXmlMapper +{ + private Translator[] children; + + + public ManyToManyTranslator(String domNameAndPath, EStructuralFeature aFeature) { + super(domNameAndPath, aFeature); + } + + @Override + public EObject createEMFObject(String nodeName, String readAheadName) { + return EclipseLinkOrmFactory.eINSTANCE.createXmlManyToManyImpl(); + } + + @Override + public Translator[] getChildren(Object target, int versionID) { + if (this.children == null) { + this.children = createChildren(); + } + return this.children; + } + + protected Translator[] createChildren() { + return new Translator[] { + createNameTranslator(), + createTargetEntityTranslator(), + createFetchTranslator(), + createMappedByTranslator(), + createOrderByTranslator(), + createMapKeyTranslator(), + createJoinTableTranslator(), + createCascadeTranslator() + }; + } + + private Translator createNameTranslator() { + return new Translator(NAME, ECLIPSELINK_ORM_PKG.getXmlAttributeMapping_Name(), DOM_ATTRIBUTE); + } + + private Translator createTargetEntityTranslator() { + return new Translator(TARGET_ENTITY, ECLIPSELINK_ORM_PKG.getXmlRelationshipMapping_TargetEntity(), DOM_ATTRIBUTE); + } + + private Translator createFetchTranslator() { + return new Translator(FETCH, ECLIPSELINK_ORM_PKG.getXmlRelationshipMapping_Fetch(), DOM_ATTRIBUTE); + } + + private Translator createMappedByTranslator() { + return new Translator(MAPPED_BY, ECLIPSELINK_ORM_PKG.getXmlMultiRelationshipMapping_MappedBy(), DOM_ATTRIBUTE); + } + + private Translator createOrderByTranslator() { + return new Translator(ORDER_BY, ECLIPSELINK_ORM_PKG.getXmlMultiRelationshipMapping_OrderBy()); + } + + private Translator createMapKeyTranslator() { + return new MapKeyTranslator(MAP_KEY, ECLIPSELINK_ORM_PKG.getXmlMultiRelationshipMapping_MapKey()); + } + + private Translator createJoinTableTranslator() { + return new JoinTableTranslator(JOIN_TABLE, ECLIPSELINK_ORM_PKG.getXmlRelationshipMapping_JoinTable()); + } + + private Translator createCascadeTranslator() { + return new CascadeTypeTranslator(CASCADE, ECLIPSELINK_ORM_PKG.getXmlRelationshipMapping_Cascade()); + } +} diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/ManyToOneTranslator.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/ManyToOneTranslator.java new file mode 100644 index 0000000000..f013418eaa --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/ManyToOneTranslator.java @@ -0,0 +1,78 @@ +/******************************************************************************* + * Copyright (c) 2006, 2008 Oracle. All rights reserved. This + * program and the accompanying materials are made available under the terms of + * the Eclipse Public License v1.0 which accompanies this distribution, and is + * available at http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: Oracle. - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.internal.resource.elorm.translators; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EStructuralFeature; +import org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmFactory; +import org.eclipse.wst.common.internal.emf.resource.Translator; + +public class ManyToOneTranslator extends Translator + implements EclipseLinkOrmXmlMapper +{ + private Translator[] children; + + + public ManyToOneTranslator(String domNameAndPath, EStructuralFeature aFeature) { + super(domNameAndPath, aFeature); + } + + @Override + public EObject createEMFObject(String nodeName, String readAheadName) { + return EclipseLinkOrmFactory.eINSTANCE.createXmlManyToOneImpl(); + } + + @Override + public Translator[] getChildren(Object target, int versionID) { + if (this.children == null) { + this.children = createChildren(); + } + return this.children; + } + + protected Translator[] createChildren() { + return new Translator[] { + createNameTranslator(), + createTargetEntityTranslator(), + createFetchTranslator(), + createOptionalTranslator(), + createJoinColumnTranslator(), + createJoinTableTranslator(), + createCascadeTranslator() + }; + } + + private Translator createNameTranslator() { + return new Translator(NAME, ECLIPSELINK_ORM_PKG.getXmlAttributeMapping_Name(), DOM_ATTRIBUTE); + } + + private Translator createTargetEntityTranslator() { + return new Translator(TARGET_ENTITY, ECLIPSELINK_ORM_PKG.getXmlRelationshipMapping_TargetEntity(), DOM_ATTRIBUTE); + } + + private Translator createFetchTranslator() { + return new Translator(FETCH, ECLIPSELINK_ORM_PKG.getXmlRelationshipMapping_Fetch(), DOM_ATTRIBUTE); + } + + private Translator createOptionalTranslator() { + return new Translator(OPTIONAL, ECLIPSELINK_ORM_PKG.getXmlSingleRelationshipMapping_Optional(), DOM_ATTRIBUTE); + } + + private Translator createJoinColumnTranslator() { + return new JoinColumnTranslator(JOIN_COLUMN, ECLIPSELINK_ORM_PKG.getXmlSingleRelationshipMapping_JoinColumns()); + } + + private Translator createJoinTableTranslator() { + return new JoinTableTranslator(JOIN_TABLE, ECLIPSELINK_ORM_PKG.getXmlRelationshipMapping_JoinTable()); + } + + private Translator createCascadeTranslator() { + return new CascadeTypeTranslator(CASCADE, ECLIPSELINK_ORM_PKG.getXmlRelationshipMapping_Cascade()); + } +} diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/MapKeyTranslator.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/MapKeyTranslator.java new file mode 100644 index 0000000000..9b18e0ab63 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/MapKeyTranslator.java @@ -0,0 +1,42 @@ +/******************************************************************************* + * Copyright (c) 2007, 2008 Oracle. All rights reserved. This + * program and the accompanying materials are made available under the terms of + * the Eclipse Public License v1.0 which accompanies this distribution, and is + * available at http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: Oracle. - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.internal.resource.elorm.translators; + +import org.eclipse.emf.ecore.EStructuralFeature; +import org.eclipse.wst.common.internal.emf.resource.Translator; + + +public class MapKeyTranslator extends Translator + implements EclipseLinkOrmXmlMapper +{ + private Translator[] children; + + + public MapKeyTranslator(String domNameAndPath, EStructuralFeature aFeature) { + super(domNameAndPath, aFeature, END_TAG_NO_INDENT); + } + + @Override + public Translator[] getChildren(Object target, int versionID) { + if (this.children == null) { + this.children = createChildren(); + } + return this.children; + } + + protected Translator[] createChildren() { + return new Translator[] { + createNameTranslator() + }; + } + + protected Translator createNameTranslator() { + return new Translator(NAME, ECLIPSELINK_ORM_PKG.getMapKey_Name(), DOM_ATTRIBUTE); + } +} diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/MappedSuperclassTranslator.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/MappedSuperclassTranslator.java new file mode 100644 index 0000000000..8c3c6a42f6 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/MappedSuperclassTranslator.java @@ -0,0 +1,117 @@ +/******************************************************************************* + * Copyright (c) 2006, 2008 Oracle. All rights reserved. This + * program and the accompanying materials are made available under the terms of + * the Eclipse Public License v1.0 which accompanies this distribution, and is + * available at http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: Oracle. - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.internal.resource.elorm.translators; + +import org.eclipse.emf.ecore.EStructuralFeature; +import org.eclipse.jpt.core.internal.resource.common.translators.EmptyTagBooleanTranslator; +import org.eclipse.wst.common.internal.emf.resource.Translator; + +public class MappedSuperclassTranslator extends Translator + implements EclipseLinkOrmXmlMapper +{ + private Translator[] children; + + + public MappedSuperclassTranslator(String domNameAndPath, EStructuralFeature aFeature) { + super(domNameAndPath, aFeature); + } + + @Override + public Translator[] getChildren(Object target, int versionID) { + if (this.children == null) { + this.children = createChildren(); + } + return this.children; + } + + protected Translator[] createChildren() { + return new Translator[] { + createClassTranslator(), + createAccessTranslator(), + createMetadataCompleteTranslator(), + createDescriptionTranslator(), + createIdClassTranslator(), + createExcludeDefaultListenersTranslator(), + createExcludeSuperclassListenersTranslator(), + createEntityListenersTranslator(), + createPrePersistTranslator(), + createPostPersistTranslator(), + createPreRemoveTranslator(), + createPostRemoveTranslator(), + createPreUpdateTranslator(), + createPostUpdateTranslator(), + createPostLoadTranslator(), + createAttributesTranslator() + }; + } + + private Translator createClassTranslator() { + return new Translator(CLASS, ECLIPSELINK_ORM_PKG.getAbstractXmlTypeMapping_ClassName(), DOM_ATTRIBUTE); + } + + private Translator createAccessTranslator() { + return new Translator(ACCESS, ECLIPSELINK_ORM_PKG.getAbstractXmlTypeMapping_Access(), DOM_ATTRIBUTE); + } + + private Translator createMetadataCompleteTranslator() { + return new Translator(METADATA_COMPLETE, ECLIPSELINK_ORM_PKG.getAbstractXmlTypeMapping_MetadataComplete(), DOM_ATTRIBUTE); + } + + private Translator createDescriptionTranslator() { + return new Translator(DESCRIPTION, ECLIPSELINK_ORM_PKG.getAbstractXmlTypeMapping_Description()); + } + + private Translator createIdClassTranslator() { + return new IdClassTranslator(ID_CLASS, ECLIPSELINK_ORM_PKG.getXmlMappedSuperclass_IdClass()); + } + + private Translator createExcludeDefaultListenersTranslator() { + return new EmptyTagBooleanTranslator(EXCLUDE_DEFAULT_LISTENERS, ECLIPSELINK_ORM_PKG.getXmlMappedSuperclass_ExcludeDefaultListeners()); + } + + private Translator createExcludeSuperclassListenersTranslator() { + return new EmptyTagBooleanTranslator(EXCLUDE_SUPERCLASS_LISTENERS, ECLIPSELINK_ORM_PKG.getXmlMappedSuperclass_ExcludeSuperclassListeners()); + } + + private Translator createEntityListenersTranslator() { + return new EntityListenersTranslator(ENTITY_LISTENERS, ECLIPSELINK_ORM_PKG.getXmlMappedSuperclass_EntityListeners()); + } + + private Translator createPrePersistTranslator() { + return new EventMethodTranslator(PRE_PERSIST, ECLIPSELINK_ORM_PKG.getXmlMappedSuperclass_PrePersist()); + } + + private Translator createPostPersistTranslator() { + return new EventMethodTranslator(POST_PERSIST, ECLIPSELINK_ORM_PKG.getXmlMappedSuperclass_PostPersist()); + } + + private Translator createPreRemoveTranslator() { + return new EventMethodTranslator(PRE_REMOVE, ECLIPSELINK_ORM_PKG.getXmlMappedSuperclass_PreRemove()); + } + + private Translator createPostRemoveTranslator() { + return new EventMethodTranslator(POST_REMOVE, ECLIPSELINK_ORM_PKG.getXmlMappedSuperclass_PostRemove()); + } + + private Translator createPreUpdateTranslator() { + return new EventMethodTranslator(PRE_UPDATE, ECLIPSELINK_ORM_PKG.getXmlMappedSuperclass_PreUpdate()); + } + + private Translator createPostUpdateTranslator() { + return new EventMethodTranslator(POST_UPDATE, ECLIPSELINK_ORM_PKG.getXmlMappedSuperclass_PostUpdate()); + } + + private Translator createPostLoadTranslator() { + return new EventMethodTranslator(POST_LOAD, ECLIPSELINK_ORM_PKG.getXmlMappedSuperclass_PostLoad()); + } + + private Translator createAttributesTranslator() { + return new AttributesTranslator(ATTRIBUTES, ECLIPSELINK_ORM_PKG.getAbstractXmlTypeMapping_Attributes()); + } +} diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/NamedNativeQueryTranslator.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/NamedNativeQueryTranslator.java new file mode 100644 index 0000000000..3e46b8d2c5 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/NamedNativeQueryTranslator.java @@ -0,0 +1,61 @@ +/******************************************************************************* + * Copyright (c) 2007, 2008 Oracle. All rights reserved. This + * program and the accompanying materials are made available under the terms of + * the Eclipse Public License v1.0 which accompanies this distribution, and is + * available at http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: Oracle. - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.internal.resource.elorm.translators; + +import org.eclipse.emf.ecore.EStructuralFeature; +import org.eclipse.wst.common.internal.emf.resource.Translator; + +public class NamedNativeQueryTranslator extends Translator + implements EclipseLinkOrmXmlMapper +{ + private Translator[] children; + + + public NamedNativeQueryTranslator(String domNameAndPath, EStructuralFeature aFeature) { + super(domNameAndPath, aFeature); + } + + @Override + public Translator[] getChildren(Object target, int versionID) { + if (this.children == null) { + this.children = createChildren(); + } + return this.children; + } + + protected Translator[] createChildren() { + return new Translator[] { + createNameTranslator(), + createResultClassTranslator(), + createResultSetMappingTranslator(), + createQueryTranslator(), + createHintTranslator() + }; + } + + private Translator createNameTranslator() { + return new Translator(NAME, ECLIPSELINK_ORM_PKG.getXmlQuery_Name(), DOM_ATTRIBUTE); + } + + private Translator createResultClassTranslator() { + return new Translator(RESULT_CLASS, ECLIPSELINK_ORM_PKG.getXmlNamedNativeQuery_ResultClass(), DOM_ATTRIBUTE); + } + + private Translator createResultSetMappingTranslator() { + return new Translator(RESULT_SET_MAPPING, ECLIPSELINK_ORM_PKG.getXmlNamedNativeQuery_ResultSetMapping(), DOM_ATTRIBUTE); + } + + private Translator createQueryTranslator() { + return new Translator(QUERY, ECLIPSELINK_ORM_PKG.getXmlQuery_Query()); + } + + private Translator createHintTranslator() { + return new QueryHintTranslator(HINT, ECLIPSELINK_ORM_PKG.getXmlQuery_Hints()); + } +} diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/NamedQueryTranslator.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/NamedQueryTranslator.java new file mode 100644 index 0000000000..cd89030f31 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/NamedQueryTranslator.java @@ -0,0 +1,51 @@ +/******************************************************************************* + * Copyright (c) 2007, 2008 Oracle. All rights reserved. This + * program and the accompanying materials are made available under the terms of + * the Eclipse Public License v1.0 which accompanies this distribution, and is + * available at http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: Oracle. - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.internal.resource.elorm.translators; + +import org.eclipse.emf.ecore.EStructuralFeature; +import org.eclipse.wst.common.internal.emf.resource.Translator; + +public class NamedQueryTranslator extends Translator + implements EclipseLinkOrmXmlMapper +{ + private Translator[] children; + + + public NamedQueryTranslator(String domNameAndPath, EStructuralFeature aFeature) { + super(domNameAndPath, aFeature); + } + + @Override + public Translator[] getChildren(Object target, int versionID) { + if (this.children == null) { + this.children = createChildren(); + } + return this.children; + } + + protected Translator[] createChildren() { + return new Translator[] { + createNameTranslator(), + createQueryTranslator(), + createHintTranslator() + }; + } + + private Translator createNameTranslator() { + return new Translator(NAME, ECLIPSELINK_ORM_PKG.getXmlQuery_Name(), DOM_ATTRIBUTE); + } + + private Translator createQueryTranslator() { + return new Translator(QUERY, ECLIPSELINK_ORM_PKG.getXmlQuery_Query()); + } + + private Translator createHintTranslator() { + return new QueryHintTranslator(HINT, ECLIPSELINK_ORM_PKG.getXmlQuery_Hints()); + } +} diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/OneToManyTranslator.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/OneToManyTranslator.java new file mode 100644 index 0000000000..979276185f --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/OneToManyTranslator.java @@ -0,0 +1,88 @@ +/******************************************************************************* + * Copyright (c) 2006, 2008 Oracle. All rights reserved. This + * program and the accompanying materials are made available under the terms of + * the Eclipse Public License v1.0 which accompanies this distribution, and is + * available at http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: Oracle. - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.internal.resource.elorm.translators; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EStructuralFeature; +import org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmFactory; +import org.eclipse.wst.common.internal.emf.resource.Translator; + +public class OneToManyTranslator extends Translator + implements EclipseLinkOrmXmlMapper +{ + private Translator[] children; + + + public OneToManyTranslator(String domNameAndPath, EStructuralFeature aFeature) { + super(domNameAndPath, aFeature); + } + + @Override + public EObject createEMFObject(String nodeName, String readAheadName) { + return EclipseLinkOrmFactory.eINSTANCE.createXmlOneToManyImpl(); + } + + @Override + public Translator[] getChildren(Object target, int versionID) { + if (this.children == null) { + this.children = createChildren(); + } + return this.children; + } + + protected Translator[] createChildren() { + return new Translator[] { + createNameTranslator(), + createTargetEntityTranslator(), + createFetchTranslator(), + createMappedByTranslator(), + createOrderByTranslator(), + createMapKeyTranslator(), + createJoinTableTranslator(), + createJoinColumnTranslator(), + createCascadeTranslator() + }; + } + + private Translator createNameTranslator() { + return new Translator(NAME, ECLIPSELINK_ORM_PKG.getXmlAttributeMapping_Name(), DOM_ATTRIBUTE); + } + + private Translator createTargetEntityTranslator() { + return new Translator(TARGET_ENTITY, ECLIPSELINK_ORM_PKG.getXmlRelationshipMapping_TargetEntity(), DOM_ATTRIBUTE); + } + + private Translator createFetchTranslator() { + return new Translator(FETCH, ECLIPSELINK_ORM_PKG.getXmlRelationshipMapping_Fetch(), DOM_ATTRIBUTE); + } + + private Translator createMappedByTranslator() { + return new Translator(MAPPED_BY, ECLIPSELINK_ORM_PKG.getXmlMultiRelationshipMapping_MappedBy(), DOM_ATTRIBUTE); + } + + private Translator createOrderByTranslator() { + return new Translator(ORDER_BY, ECLIPSELINK_ORM_PKG.getXmlMultiRelationshipMapping_OrderBy()); + } + + private Translator createMapKeyTranslator() { + return new MapKeyTranslator(MAP_KEY, ECLIPSELINK_ORM_PKG.getXmlMultiRelationshipMapping_MapKey()); + } + + private Translator createJoinTableTranslator() { + return new JoinTableTranslator(JOIN_TABLE, ECLIPSELINK_ORM_PKG.getXmlRelationshipMapping_JoinTable()); + } + + private Translator createJoinColumnTranslator() { + return new JoinColumnTranslator(JOIN_COLUMN, ECLIPSELINK_ORM_PKG.getXmlOneToMany_JoinColumns()); + } + + private Translator createCascadeTranslator() { + return new CascadeTypeTranslator(CASCADE, ECLIPSELINK_ORM_PKG.getXmlRelationshipMapping_Cascade()); + } +} diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/OneToOneTranslator.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/OneToOneTranslator.java new file mode 100644 index 0000000000..fd33fcc3f7 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/OneToOneTranslator.java @@ -0,0 +1,90 @@ +/******************************************************************************* + * Copyright (c) 2007, 2008 Oracle. All rights reserved. + * This program and the accompanying materials are made available under the + * terms of the Eclipse Public License v1.0, which accompanies this distribution + * and is available at http://www.eclipse.org/legal/epl-v10.html. + * + * Contributors: + * Oracle - initial API and implementation + ******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.internal.resource.elorm.translators; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EStructuralFeature; +import org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmFactory; +import org.eclipse.wst.common.internal.emf.resource.Translator; + +public class OneToOneTranslator extends Translator + implements EclipseLinkOrmXmlMapper +{ + private Translator[] children; + + + public OneToOneTranslator(String domNameAndPath, EStructuralFeature aFeature) { + super(domNameAndPath, aFeature); + } + + @Override + public EObject createEMFObject(String nodeName, String readAheadName) { + return EclipseLinkOrmFactory.eINSTANCE.createXmlOneToOneImpl(); + } + + @Override + public Translator[] getChildren(Object target, int versionID) { + if (this.children == null) { + this.children = createChildren(); + } + return this.children; + } + + protected Translator[] createChildren() { + return new Translator[] { + createNameTranslator(), + createTargetEntityTranslator(), + createFetchTranslator(), + createOptionalTranslator(), + createMappedByTranslator(), + createPrimaryKeyJoinColumnTranslator(), + createJoinColumnTranslator(), + createJoinTableTranslator(), + createCascadeTranslator() + }; + } + + private Translator createNameTranslator() { + return new Translator(NAME, ECLIPSELINK_ORM_PKG.getXmlAttributeMapping_Name(), DOM_ATTRIBUTE); + } + + private Translator createTargetEntityTranslator() { + return new Translator(TARGET_ENTITY, ECLIPSELINK_ORM_PKG.getXmlRelationshipMapping_TargetEntity(), DOM_ATTRIBUTE); + } + + private Translator createFetchTranslator() { + return new Translator(FETCH, ECLIPSELINK_ORM_PKG.getXmlRelationshipMapping_Fetch(), DOM_ATTRIBUTE); + } + + private Translator createOptionalTranslator() { + return new Translator(OPTIONAL, ECLIPSELINK_ORM_PKG.getXmlSingleRelationshipMapping_Optional(), DOM_ATTRIBUTE); + } + + private Translator createMappedByTranslator() { + return new Translator(MAPPED_BY, ECLIPSELINK_ORM_PKG.getXmlOneToOne_MappedBy(), DOM_ATTRIBUTE); + } + + private Translator createPrimaryKeyJoinColumnTranslator() { + return new PrimaryKeyJoinColumnTranslator(PRIMARY_KEY_JOIN_COLUMN, ECLIPSELINK_ORM_PKG.getXmlOneToOne_PrimaryKeyJoinColumns()); + } + + private Translator createJoinColumnTranslator() { + return new JoinColumnTranslator(JOIN_COLUMN, ECLIPSELINK_ORM_PKG.getXmlSingleRelationshipMapping_JoinColumns()); + } + + private Translator createJoinTableTranslator() { + return new JoinTableTranslator(JOIN_TABLE, ECLIPSELINK_ORM_PKG.getXmlRelationshipMapping_JoinTable()); + } + + private Translator createCascadeTranslator() { + return new CascadeTypeTranslator(CASCADE, ECLIPSELINK_ORM_PKG.getXmlRelationshipMapping_Cascade()); + } + +} diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/PersistenceUnitDefaultsTranslator.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/PersistenceUnitDefaultsTranslator.java new file mode 100644 index 0000000000..eba1381c6c --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/PersistenceUnitDefaultsTranslator.java @@ -0,0 +1,62 @@ +/******************************************************************************* + * Copyright (c) 2006, 2008 Oracle. All rights reserved. This + * program and the accompanying materials are made available under the terms of + * the Eclipse Public License v1.0 which accompanies this distribution, and is + * available at http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: Oracle. - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.internal.resource.elorm.translators; + +import org.eclipse.emf.ecore.EStructuralFeature; +import org.eclipse.jpt.core.internal.resource.common.translators.EmptyTagBooleanTranslator; +import org.eclipse.wst.common.internal.emf.resource.Translator; + +public class PersistenceUnitDefaultsTranslator extends Translator + implements EclipseLinkOrmXmlMapper +{ + private Translator[] children; + + + public PersistenceUnitDefaultsTranslator(String domNameAndPath, EStructuralFeature aFeature) { + super(domNameAndPath, aFeature); + } + + @Override + public Translator[] getChildren(Object target, int versionID) { + if (this.children == null) { + this.children = createChildren(); + } + return this.children; + } + + private Translator[] createChildren() { + return new Translator[] { + createSchemaTranslator(), + createCatalogTranslator(), + createAccessTranslator(), + createCascadePersistTranslator(), + createEntityListenersTranslator() + }; + } + + private Translator createSchemaTranslator() { + return new Translator(SCHEMA, ECLIPSELINK_ORM_PKG.getXmlPersistenceUnitDefaults_Schema()); + } + + private Translator createCatalogTranslator() { + return new Translator(CATALOG, ECLIPSELINK_ORM_PKG.getXmlPersistenceUnitDefaults_Catalog()); + } + + private Translator createAccessTranslator() { + return new Translator(ACCESS, ECLIPSELINK_ORM_PKG.getXmlPersistenceUnitDefaults_Access()); + } + + private Translator createCascadePersistTranslator() { + return new EmptyTagBooleanTranslator(CASCADE_PERSIST, ECLIPSELINK_ORM_PKG.getXmlPersistenceUnitDefaults_CascadePersist()); + } + + private Translator createEntityListenersTranslator() { + return new EntityListenersTranslator(ENTITY_LISTENERS, ECLIPSELINK_ORM_PKG.getXmlPersistenceUnitDefaults_EntityListeners()); + } +} diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/PersistenceUnitMetadataTranslator.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/PersistenceUnitMetadataTranslator.java new file mode 100644 index 0000000000..4273110a8b --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/PersistenceUnitMetadataTranslator.java @@ -0,0 +1,46 @@ +/******************************************************************************* + * Copyright (c) 2006, 2008 Oracle. All rights reserved. This + * program and the accompanying materials are made available under the terms of + * the Eclipse Public License v1.0 which accompanies this distribution, and is + * available at http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: Oracle. - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.internal.resource.elorm.translators; + +import org.eclipse.emf.ecore.EStructuralFeature; +import org.eclipse.jpt.core.internal.resource.common.translators.EmptyTagBooleanTranslator; +import org.eclipse.wst.common.internal.emf.resource.Translator; + +public class PersistenceUnitMetadataTranslator extends Translator implements EclipseLinkOrmXmlMapper +{ + private Translator[] children; + + + public PersistenceUnitMetadataTranslator(String domNameAndPath, EStructuralFeature aFeature) { + super(domNameAndPath, aFeature); + } + + @Override + public Translator[] getChildren(Object target, int versionID) { + if (this.children == null) { + this.children = createChildren(); + } + return this.children; + } + + private Translator[] createChildren() { + return new Translator[] { + createXmlMappingMetadataCompleteTranslator(), + createPersistenceUnitDefaultsTranslator(), + }; + } + + private Translator createXmlMappingMetadataCompleteTranslator() { + return new EmptyTagBooleanTranslator(XML_MAPPING_METADATA_COMPLETE, ECLIPSELINK_ORM_PKG.getXmlPersistenceUnitMetadata_XmlMappingMetadataComplete()); + } + + private Translator createPersistenceUnitDefaultsTranslator() { + return new PersistenceUnitDefaultsTranslator(PERSISTENCE_UNIT_DEFAULTS, ECLIPSELINK_ORM_PKG.getXmlPersistenceUnitMetadata_PersistenceUnitDefaults()); + } +} diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/PrimaryKeyJoinColumnTranslator.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/PrimaryKeyJoinColumnTranslator.java new file mode 100644 index 0000000000..81ea9afcc4 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/PrimaryKeyJoinColumnTranslator.java @@ -0,0 +1,59 @@ +/******************************************************************************* + * Copyright (c) 2007, 2008 Oracle. All rights reserved. + * This program and the accompanying materials are made available under the terms of + * the Eclipse Public License v1.0, which accompanies this distribution and is available at + * http://www.eclipse.org/legal/epl-v10.html. + * + * Contributors: + * Oracle - initial API and implementation + ******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.internal.resource.elorm.translators; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EStructuralFeature; +import org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmFactory; +import org.eclipse.wst.common.internal.emf.resource.Translator; + +public class PrimaryKeyJoinColumnTranslator extends Translator + implements EclipseLinkOrmXmlMapper +{ + private Translator[] children; + + + public PrimaryKeyJoinColumnTranslator(String domNameAndPath, EStructuralFeature aFeature) { + super(domNameAndPath, aFeature, END_TAG_NO_INDENT); + } + + @Override + public EObject createEMFObject(String nodeName, String readAheadName) { + return EclipseLinkOrmFactory.eINSTANCE.createXmlPrimaryKeyJoinColumnImpl(); + } + + @Override + public Translator[] getChildren(Object target, int versionID) { + if (this.children == null) { + this.children = createChildren(); + } + return this.children; + } + + protected Translator[] createChildren() { + return new Translator[] { + createNameTranslator(), + createReferencedColumnNameTranslator(), + createColumnDefinitionTranslator(), + }; + } + + private Translator createNameTranslator() { + return new Translator(NAME, ECLIPSELINK_ORM_PKG.getXmlNamedColumn_Name(), DOM_ATTRIBUTE); + } + + private Translator createReferencedColumnNameTranslator() { + return new Translator(REFERENCED_COLUMN_NAME, ECLIPSELINK_ORM_PKG.getXmlPrimaryKeyJoinColumn_ReferencedColumnName(), DOM_ATTRIBUTE); + } + + private Translator createColumnDefinitionTranslator() { + return new Translator(COLUMN_DEFINITION, ECLIPSELINK_ORM_PKG.getXmlNamedColumn_ColumnDefinition(), DOM_ATTRIBUTE); + } +} diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/QueryHintTranslator.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/QueryHintTranslator.java new file mode 100644 index 0000000000..76d2d02596 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/QueryHintTranslator.java @@ -0,0 +1,46 @@ +/******************************************************************************* + * Copyright (c) 2007, 2008 Oracle. All rights reserved. This + * program and the accompanying materials are made available under the terms of + * the Eclipse Public License v1.0 which accompanies this distribution, and is + * available at http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: Oracle. - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.internal.resource.elorm.translators; + +import org.eclipse.emf.ecore.EStructuralFeature; +import org.eclipse.wst.common.internal.emf.resource.Translator; + +public class QueryHintTranslator extends Translator + implements EclipseLinkOrmXmlMapper +{ + private Translator[] children; + + + public QueryHintTranslator(String domNameAndPath, EStructuralFeature aFeature) { + super(domNameAndPath, aFeature, END_TAG_NO_INDENT); + } + + @Override + public Translator[] getChildren(Object target, int versionID) { + if (this.children == null) { + this.children = createChildren(); + } + return this.children; + } + + protected Translator[] createChildren() { + return new Translator[] { + createNameTranslator(), + createValueTranslator(), + }; + } + + private Translator createNameTranslator() { + return new Translator(NAME, ECLIPSELINK_ORM_PKG.getXmlQueryHint_Name(), DOM_ATTRIBUTE); + } + + private Translator createValueTranslator() { + return new Translator(VALUE, ECLIPSELINK_ORM_PKG.getXmlQueryHint_Value(), DOM_ATTRIBUTE); + } +} diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/SecondaryTableTranslator.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/SecondaryTableTranslator.java new file mode 100644 index 0000000000..5d311abd42 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/SecondaryTableTranslator.java @@ -0,0 +1,69 @@ +/******************************************************************************* + * Copyright (c) 2007, 2008 Oracle. All rights reserved. This + * program and the accompanying materials are made available under the terms of + * the Eclipse Public License v1.0 which accompanies this distribution, and is + * available at http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: Oracle. - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.internal.resource.elorm.translators; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EStructuralFeature; +import org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmFactory; +import org.eclipse.wst.common.internal.emf.resource.Translator; + +public class SecondaryTableTranslator extends Translator + implements EclipseLinkOrmXmlMapper +{ + private Translator[] children; + + + public SecondaryTableTranslator(String domNameAndPath, EStructuralFeature aFeature) { + super(domNameAndPath, aFeature); + } + + @Override + public EObject createEMFObject(String nodeName, String readAheadName) { + return EclipseLinkOrmFactory.eINSTANCE.createXmlSecondaryTableImpl(); + } + + + @Override + public Translator[] getChildren(Object target, int versionID) { + if (this.children == null) { + this.children = createChildren(); + } + return this.children; + } + + protected Translator[] createChildren() { + return new Translator[] { + createNameTranslator(), + createCatalogTranslator(), + createSchemaTranslator(), + createPrimaryKeyJoinColumnsTranslator(), + createUniqueConstraintTranslator() + }; + } + + private Translator createNameTranslator() { + return new Translator(NAME, ECLIPSELINK_ORM_PKG.getXmlBaseTable_Name(), DOM_ATTRIBUTE); + } + + private Translator createCatalogTranslator() { + return new Translator(CATALOG, ECLIPSELINK_ORM_PKG.getXmlBaseTable_Catalog(), DOM_ATTRIBUTE); + } + + private Translator createSchemaTranslator() { + return new Translator(SCHEMA, ECLIPSELINK_ORM_PKG.getXmlBaseTable_Schema(), DOM_ATTRIBUTE); + } + + protected Translator createPrimaryKeyJoinColumnsTranslator() { + return new PrimaryKeyJoinColumnTranslator(PRIMARY_KEY_JOIN_COLUMN, ECLIPSELINK_ORM_PKG.getXmlSecondaryTable_PrimaryKeyJoinColumns()); + } + + private Translator createUniqueConstraintTranslator() { + return new UniqueConstraintTranslator(UNIQUE_CONSTRAINT, ECLIPSELINK_ORM_PKG.getXmlBaseTable_UniqueConstraints()); + } +} diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/SequenceGeneratorTranslator.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/SequenceGeneratorTranslator.java new file mode 100644 index 0000000000..fa2a995580 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/SequenceGeneratorTranslator.java @@ -0,0 +1,63 @@ +/******************************************************************************* + * Copyright (c) 2007, 2008 Oracle. All rights reserved. This + * program and the accompanying materials are made available under the terms of + * the Eclipse Public License v1.0 which accompanies this distribution, and is + * available at http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: Oracle. - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.internal.resource.elorm.translators; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EStructuralFeature; +import org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmFactory; +import org.eclipse.wst.common.internal.emf.resource.Translator; + +public class SequenceGeneratorTranslator extends Translator + implements EclipseLinkOrmXmlMapper +{ + private Translator[] children; + + + public SequenceGeneratorTranslator(String domNameAndPath, EStructuralFeature aFeature) { + super(domNameAndPath, aFeature, END_TAG_NO_INDENT); + } + + @Override + public EObject createEMFObject(String nodeName, String readAheadName) { + return EclipseLinkOrmFactory.eINSTANCE.createXmlSequenceGeneratorImpl(); + } + + @Override + public Translator[] getChildren(Object target, int versionID) { + if (this.children == null) { + this.children = createChildren(); + } + return this.children; + } + + protected Translator[] createChildren() { + return new Translator[] { + createNameTranslator(), + createSequenceNameTranslator(), + createInitialValueTranslator(), + createAllocationSizeTranslator(), + }; + } + + private Translator createNameTranslator() { + return new Translator(NAME, ECLIPSELINK_ORM_PKG.getXmlGenerator_Name(), DOM_ATTRIBUTE); + } + + private Translator createSequenceNameTranslator() { + return new Translator(SEQUENCE_NAME, ECLIPSELINK_ORM_PKG.getXmlSequenceGenerator_SequenceName(), DOM_ATTRIBUTE); + } + + private Translator createInitialValueTranslator() { + return new Translator(INITIAL_VALUE, ECLIPSELINK_ORM_PKG.getXmlGenerator_InitialValue(), DOM_ATTRIBUTE); + } + + private Translator createAllocationSizeTranslator() { + return new Translator(ALLOCATION_SIZE, ECLIPSELINK_ORM_PKG.getXmlGenerator_AllocationSize(), DOM_ATTRIBUTE); + } +} diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/SqlResultSetMappingTranslator.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/SqlResultSetMappingTranslator.java new file mode 100644 index 0000000000..239fd2025a --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/SqlResultSetMappingTranslator.java @@ -0,0 +1,53 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. All rights reserved. + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.internal.resource.elorm.translators; + +import org.eclipse.emf.ecore.EStructuralFeature; +import org.eclipse.wst.common.internal.emf.resource.Translator; + +public class SqlResultSetMappingTranslator extends Translator + implements EclipseLinkOrmXmlMapper +{ + private Translator[] children; + + + public SqlResultSetMappingTranslator(String domNameAndPath, EStructuralFeature aFeature) { + super(domNameAndPath, aFeature); + } + + @Override + public Translator[] getChildren(Object target, int versionID) { + if (this.children == null) { + this.children = createChildren(); + } + return this.children; + } + + protected Translator[] createChildren() { + return new Translator[] { + createNameTranslator(), + createEntityResultTranslator(), + createColumnResultTranslator() + }; + } + + private Translator createNameTranslator() { + return new Translator(NAME, ECLIPSELINK_ORM_PKG.getSqlResultSetMapping_Name(), DOM_ATTRIBUTE); + } + + private Translator createEntityResultTranslator() { + return new EntityResultTranslator(ENTITY_RESULT, ECLIPSELINK_ORM_PKG.getSqlResultSetMapping_EntityResults()); + } + + private Translator createColumnResultTranslator() { + return new ColumnResultTranslator(COLUMN_RESULT, ECLIPSELINK_ORM_PKG.getSqlResultSetMapping_ColumnResults()); + } +} diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/TableGeneratorTranslator.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/TableGeneratorTranslator.java new file mode 100644 index 0000000000..888bb241fc --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/TableGeneratorTranslator.java @@ -0,0 +1,93 @@ +/******************************************************************************* + * Copyright (c) 2007, 2008 Oracle. All rights reserved. This + * program and the accompanying materials are made available under the terms of + * the Eclipse Public License v1.0 which accompanies this distribution, and is + * available at http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: Oracle. - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.internal.resource.elorm.translators; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EStructuralFeature; +import org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmFactory; +import org.eclipse.wst.common.internal.emf.resource.Translator; + +public class TableGeneratorTranslator extends Translator + implements EclipseLinkOrmXmlMapper +{ + private Translator[] children; + + + public TableGeneratorTranslator(String domNameAndPath, EStructuralFeature aFeature) { + super(domNameAndPath, aFeature); + } + + @Override + public EObject createEMFObject(String nodeName, String readAheadName) { + return EclipseLinkOrmFactory.eINSTANCE.createXmlTableGeneratorImpl(); + } + + @Override + public Translator[] getChildren(Object target, int versionID) { + if (this.children == null) { + this.children = createChildren(); + } + return this.children; + } + + protected Translator[] createChildren() { + return new Translator[] { + createNameTranslator(), + createTableTranslator(), + createCatalogTranslator(), + createSchemaTranslator(), + createPkColumnNameTranslator(), + createValueColumnNameTranslator(), + createPkColumnValueTranslator(), + createInitialValueTranslator(), + createAllocationSizeTranslator(), + createUniqueConstraintTranslator(), + }; + } + + private Translator createNameTranslator() { + return new Translator(NAME, ECLIPSELINK_ORM_PKG.getXmlGenerator_Name(), DOM_ATTRIBUTE); + } + + private Translator createTableTranslator() { + return new Translator(TABLE, ECLIPSELINK_ORM_PKG.getXmlTableGenerator_Table(), DOM_ATTRIBUTE); + } + + private Translator createCatalogTranslator() { + return new Translator(CATALOG, ECLIPSELINK_ORM_PKG.getXmlTableGenerator_Catalog(), DOM_ATTRIBUTE); + } + + private Translator createSchemaTranslator() { + return new Translator(SCHEMA, ECLIPSELINK_ORM_PKG.getXmlTableGenerator_Schema(), DOM_ATTRIBUTE); + } + + private Translator createPkColumnNameTranslator() { + return new Translator(PK_COLUMN_NAME, ECLIPSELINK_ORM_PKG.getXmlTableGenerator_PkColumnName(), DOM_ATTRIBUTE); + } + + private Translator createValueColumnNameTranslator() { + return new Translator(VALUE_COLUMN_NAME, ECLIPSELINK_ORM_PKG.getXmlTableGenerator_ValueColumnName(), DOM_ATTRIBUTE); + } + + private Translator createPkColumnValueTranslator() { + return new Translator(PK_COLUMN_VALUE, ECLIPSELINK_ORM_PKG.getXmlTableGenerator_PkColumnValue(), DOM_ATTRIBUTE); + } + + private Translator createInitialValueTranslator() { + return new Translator(INITIAL_VALUE, ECLIPSELINK_ORM_PKG.getXmlGenerator_InitialValue(), DOM_ATTRIBUTE); + } + + private Translator createAllocationSizeTranslator() { + return new Translator(ALLOCATION_SIZE, ECLIPSELINK_ORM_PKG.getXmlGenerator_AllocationSize(), DOM_ATTRIBUTE); + } + + private Translator createUniqueConstraintTranslator() { + return new UniqueConstraintTranslator(UNIQUE_CONSTRAINT, ECLIPSELINK_ORM_PKG.getXmlTableGenerator_UniqueConstraints()); + } +} diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/TableTranslator.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/TableTranslator.java new file mode 100644 index 0000000000..30decdda2a --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/TableTranslator.java @@ -0,0 +1,56 @@ +/******************************************************************************* + * Copyright (c) 2006, 2008 Oracle. All rights reserved. This + * program and the accompanying materials are made available under the terms of + * the Eclipse Public License v1.0 which accompanies this distribution, and is + * available at http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: Oracle. - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.internal.resource.elorm.translators; + +import org.eclipse.emf.ecore.EStructuralFeature; +import org.eclipse.wst.common.internal.emf.resource.Translator; + +public class TableTranslator extends Translator + implements EclipseLinkOrmXmlMapper +{ + private Translator[] children; + + + public TableTranslator(String domNameAndPath, EStructuralFeature aFeature) { + super(domNameAndPath, aFeature); + } + + @Override + public Translator[] getChildren(Object target, int versionID) { + if (this.children == null) { + this.children = createChildren(); + } + return this.children; + } + + protected Translator[] createChildren() { + return new Translator[] { + createNameTranslator(), + createCatalogTranslator(), + createSchemaTranslator(), + createUniqueConstraintTranslator() + }; + } + + private Translator createNameTranslator() { + return new Translator(NAME, ECLIPSELINK_ORM_PKG.getXmlBaseTable_Name(), DOM_ATTRIBUTE); + } + + private Translator createCatalogTranslator() { + return new Translator(CATALOG, ECLIPSELINK_ORM_PKG.getXmlBaseTable_Catalog(), DOM_ATTRIBUTE); + } + + private Translator createSchemaTranslator() { + return new Translator(SCHEMA, ECLIPSELINK_ORM_PKG.getXmlBaseTable_Schema(), DOM_ATTRIBUTE); + } + + private Translator createUniqueConstraintTranslator() { + return new UniqueConstraintTranslator(UNIQUE_CONSTRAINT, ECLIPSELINK_ORM_PKG.getXmlBaseTable_UniqueConstraints()); + } +} diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/TransientTranslator.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/TransientTranslator.java new file mode 100644 index 0000000000..51d6f22e46 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/TransientTranslator.java @@ -0,0 +1,49 @@ +/******************************************************************************* + * Copyright (c) 2007, 2008 Oracle. All rights reserved. + * This program and the accompanying materials are made available under the + * terms of the Eclipse Public License v1.0, which accompanies this distribution + * and is available at http://www.eclipse.org/legal/epl-v10.html. + * + * Contributors: + * Oracle - initial API and implementation + ******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.internal.resource.elorm.translators; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EStructuralFeature; +import org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmFactory; +import org.eclipse.wst.common.internal.emf.resource.Translator; + +public class TransientTranslator extends Translator + implements EclipseLinkOrmXmlMapper +{ + private Translator[] children; + + + public TransientTranslator(String domNameAndPath, EStructuralFeature aFeature) { + super(domNameAndPath, aFeature, END_TAG_NO_INDENT); + } + + @Override + public EObject createEMFObject(String nodeName, String readAheadName) { + return EclipseLinkOrmFactory.eINSTANCE.createXmlTransientImpl(); + } + + @Override + public Translator[] getChildren(Object target, int versionID) { + if (this.children == null) { + this.children = createChildren(); + } + return this.children; + } + + protected Translator[] createChildren() { + return new Translator[] { + createNameTranslator() + }; + } + + private Translator createNameTranslator() { + return new Translator(NAME, ECLIPSELINK_ORM_PKG.getXmlAttributeMapping_Name(), DOM_ATTRIBUTE); + } +} diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/UniqueConstraintTranslator.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/UniqueConstraintTranslator.java new file mode 100644 index 0000000000..fbe31840bb --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/UniqueConstraintTranslator.java @@ -0,0 +1,48 @@ +/******************************************************************************* + * Copyright (c) 2007, 2008 Oracle. All rights reserved. This + * program and the accompanying materials are made available under the terms of + * the Eclipse Public License v1.0 which accompanies this distribution, and is + * available at http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: Oracle. - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.internal.resource.elorm.translators; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EStructuralFeature; +import org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmFactory; +import org.eclipse.wst.common.internal.emf.resource.Translator; + +public class UniqueConstraintTranslator extends Translator + implements EclipseLinkOrmXmlMapper +{ + private Translator[] children; + + + public UniqueConstraintTranslator(String domNameAndPath, EStructuralFeature aFeature) { + super(domNameAndPath, aFeature); + } + + @Override + public EObject createEMFObject(String nodeName, String readAheadName) { + return EclipseLinkOrmFactory.eINSTANCE.createXmlUniqueConstraintImpl(); + } + + @Override + public Translator[] getChildren(Object target, int versionID) { + if (this.children == null) { + this.children = createChildren(); + } + return this.children; + } + + protected Translator[] createChildren() { + return new Translator[] { + createColumnNameTranslator(), + }; + } + + private Translator createColumnNameTranslator() { + return new Translator(COLUMN_NAME, ECLIPSELINK_ORM_PKG.getXmlUniqueConstraint_ColumnNames()); + } +} diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/VersionTranslator.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/VersionTranslator.java new file mode 100644 index 0000000000..15de5b5463 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/resource/elorm/translators/VersionTranslator.java @@ -0,0 +1,59 @@ +/******************************************************************************* + * Copyright (c) 2007, 2008 Oracle. All rights reserved. + * This program and the accompanying materials are made available under the + * terms of the Eclipse Public License v1.0, which accompanies this distribution + * and is available at http://www.eclipse.org/legal/epl-v10.html. + * + * Contributors: + * Oracle - initial API and implementation + ******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.internal.resource.elorm.translators; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EStructuralFeature; +import org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmFactory; +import org.eclipse.wst.common.internal.emf.resource.Translator; + +public class VersionTranslator extends Translator + implements EclipseLinkOrmXmlMapper +{ + private Translator[] children; + + + public VersionTranslator(String domNameAndPath, EStructuralFeature aFeature) { + super(domNameAndPath, aFeature); + } + + @Override + public EObject createEMFObject(String nodeName, String readAheadName) { + return EclipseLinkOrmFactory.eINSTANCE.createXmlVersionImpl(); + } + + @Override + public Translator[] getChildren(Object target, int versionID) { + if (this.children == null) { + this.children = createChildren(); + } + return this.children; + } + + protected Translator[] createChildren() { + return new Translator[] { + createNameTranslator(), + createColumnTranslator(), + createTemporalTranslator(), + }; + } + + private Translator createNameTranslator() { + return new Translator(NAME, ECLIPSELINK_ORM_PKG.getXmlAttributeMapping_Name(), DOM_ATTRIBUTE); + } + + private Translator createColumnTranslator() { + return new ColumnTranslator(COLUMN, ECLIPSELINK_ORM_PKG.getColumnMapping_Column()); + } + + private Translator createTemporalTranslator() { + return new Translator(TEMPORAL, ECLIPSELINK_ORM_PKG.getXmlVersion_Temporal()); + } +} diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/AbstractXmlAbstractColumn.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/AbstractXmlAbstractColumn.java new file mode 100644 index 0000000000..90253a3865 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/AbstractXmlAbstractColumn.java @@ -0,0 +1,504 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Abstract Xml Abstract Column</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getAbstractXmlAbstractColumn() + * @model kind="class" abstract="true" + * @generated + */ +public abstract class AbstractXmlAbstractColumn extends AbstractXmlNamedColumn implements XmlAbstractColumn +{ + /** + * The default value of the '{@link #getInsertable() <em>Insertable</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getInsertable() + * @generated + * @ordered + */ + protected static final Boolean INSERTABLE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getInsertable() <em>Insertable</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getInsertable() + * @generated + * @ordered + */ + protected Boolean insertable = INSERTABLE_EDEFAULT; + + /** + * The default value of the '{@link #getNullable() <em>Nullable</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getNullable() + * @generated + * @ordered + */ + protected static final Boolean NULLABLE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getNullable() <em>Nullable</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getNullable() + * @generated + * @ordered + */ + protected Boolean nullable = NULLABLE_EDEFAULT; + + /** + * The default value of the '{@link #getTable() <em>Table</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTable() + * @generated + * @ordered + */ + protected static final String TABLE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getTable() <em>Table</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTable() + * @generated + * @ordered + */ + protected String table = TABLE_EDEFAULT; + + /** + * The default value of the '{@link #getUnique() <em>Unique</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getUnique() + * @generated + * @ordered + */ + protected static final Boolean UNIQUE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getUnique() <em>Unique</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getUnique() + * @generated + * @ordered + */ + protected Boolean unique = UNIQUE_EDEFAULT; + + /** + * The default value of the '{@link #getUpdatable() <em>Updatable</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getUpdatable() + * @generated + * @ordered + */ + protected static final Boolean UPDATABLE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getUpdatable() <em>Updatable</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getUpdatable() + * @generated + * @ordered + */ + protected Boolean updatable = UPDATABLE_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected AbstractXmlAbstractColumn() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.ABSTRACT_XML_ABSTRACT_COLUMN; + } + + /** + * Returns the value of the '<em><b>Insertable</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Insertable</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Insertable</em>' attribute. + * @see #setInsertable(Boolean) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlAbstractColumn_Insertable() + * @model dataType="org.eclipse.emf.ecore.xml.type.BooleanObject" + * @generated + */ + public Boolean getInsertable() + { + return insertable; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlAbstractColumn#getInsertable <em>Insertable</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Insertable</em>' attribute. + * @see #getInsertable() + * @generated + */ + public void setInsertable(Boolean newInsertable) + { + Boolean oldInsertable = insertable; + insertable = newInsertable; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.ABSTRACT_XML_ABSTRACT_COLUMN__INSERTABLE, oldInsertable, insertable)); + } + + /** + * Returns the value of the '<em><b>Nullable</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Nullable</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Nullable</em>' attribute. + * @see #setNullable(Boolean) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlAbstractColumn_Nullable() + * @model dataType="org.eclipse.emf.ecore.xml.type.BooleanObject" + * @generated + */ + public Boolean getNullable() + { + return nullable; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlAbstractColumn#getNullable <em>Nullable</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Nullable</em>' attribute. + * @see #getNullable() + * @generated + */ + public void setNullable(Boolean newNullable) + { + Boolean oldNullable = nullable; + nullable = newNullable; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.ABSTRACT_XML_ABSTRACT_COLUMN__NULLABLE, oldNullable, nullable)); + } + + /** + * Returns the value of the '<em><b>Table</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Table</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Table</em>' attribute. + * @see #setTable(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlAbstractColumn_Table() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + public String getTable() + { + return table; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlAbstractColumn#getTable <em>Table</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Table</em>' attribute. + * @see #getTable() + * @generated + */ + public void setTable(String newTable) + { + String oldTable = table; + table = newTable; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.ABSTRACT_XML_ABSTRACT_COLUMN__TABLE, oldTable, table)); + } + + /** + * Returns the value of the '<em><b>Unique</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Unique</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Unique</em>' attribute. + * @see #setUnique(Boolean) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlAbstractColumn_Unique() + * @model dataType="org.eclipse.emf.ecore.xml.type.BooleanObject" + * @generated + */ + public Boolean getUnique() + { + return unique; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlAbstractColumn#getUnique <em>Unique</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Unique</em>' attribute. + * @see #getUnique() + * @generated + */ + public void setUnique(Boolean newUnique) + { + Boolean oldUnique = unique; + unique = newUnique; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.ABSTRACT_XML_ABSTRACT_COLUMN__UNIQUE, oldUnique, unique)); + } + + /** + * Returns the value of the '<em><b>Updatable</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Updatable</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Updatable</em>' attribute. + * @see #setUpdatable(Boolean) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlAbstractColumn_Updatable() + * @model dataType="org.eclipse.emf.ecore.xml.type.BooleanObject" + * @generated + */ + public Boolean getUpdatable() + { + return updatable; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlAbstractColumn#getUpdatable <em>Updatable</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Updatable</em>' attribute. + * @see #getUpdatable() + * @generated + */ + public void setUpdatable(Boolean newUpdatable) + { + Boolean oldUpdatable = updatable; + updatable = newUpdatable; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.ABSTRACT_XML_ABSTRACT_COLUMN__UPDATABLE, oldUpdatable, updatable)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case EclipseLinkOrmPackage.ABSTRACT_XML_ABSTRACT_COLUMN__INSERTABLE: + return getInsertable(); + case EclipseLinkOrmPackage.ABSTRACT_XML_ABSTRACT_COLUMN__NULLABLE: + return getNullable(); + case EclipseLinkOrmPackage.ABSTRACT_XML_ABSTRACT_COLUMN__TABLE: + return getTable(); + case EclipseLinkOrmPackage.ABSTRACT_XML_ABSTRACT_COLUMN__UNIQUE: + return getUnique(); + case EclipseLinkOrmPackage.ABSTRACT_XML_ABSTRACT_COLUMN__UPDATABLE: + return getUpdatable(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case EclipseLinkOrmPackage.ABSTRACT_XML_ABSTRACT_COLUMN__INSERTABLE: + setInsertable((Boolean)newValue); + return; + case EclipseLinkOrmPackage.ABSTRACT_XML_ABSTRACT_COLUMN__NULLABLE: + setNullable((Boolean)newValue); + return; + case EclipseLinkOrmPackage.ABSTRACT_XML_ABSTRACT_COLUMN__TABLE: + setTable((String)newValue); + return; + case EclipseLinkOrmPackage.ABSTRACT_XML_ABSTRACT_COLUMN__UNIQUE: + setUnique((Boolean)newValue); + return; + case EclipseLinkOrmPackage.ABSTRACT_XML_ABSTRACT_COLUMN__UPDATABLE: + setUpdatable((Boolean)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.ABSTRACT_XML_ABSTRACT_COLUMN__INSERTABLE: + setInsertable(INSERTABLE_EDEFAULT); + return; + case EclipseLinkOrmPackage.ABSTRACT_XML_ABSTRACT_COLUMN__NULLABLE: + setNullable(NULLABLE_EDEFAULT); + return; + case EclipseLinkOrmPackage.ABSTRACT_XML_ABSTRACT_COLUMN__TABLE: + setTable(TABLE_EDEFAULT); + return; + case EclipseLinkOrmPackage.ABSTRACT_XML_ABSTRACT_COLUMN__UNIQUE: + setUnique(UNIQUE_EDEFAULT); + return; + case EclipseLinkOrmPackage.ABSTRACT_XML_ABSTRACT_COLUMN__UPDATABLE: + setUpdatable(UPDATABLE_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.ABSTRACT_XML_ABSTRACT_COLUMN__INSERTABLE: + return INSERTABLE_EDEFAULT == null ? insertable != null : !INSERTABLE_EDEFAULT.equals(insertable); + case EclipseLinkOrmPackage.ABSTRACT_XML_ABSTRACT_COLUMN__NULLABLE: + return NULLABLE_EDEFAULT == null ? nullable != null : !NULLABLE_EDEFAULT.equals(nullable); + case EclipseLinkOrmPackage.ABSTRACT_XML_ABSTRACT_COLUMN__TABLE: + return TABLE_EDEFAULT == null ? table != null : !TABLE_EDEFAULT.equals(table); + case EclipseLinkOrmPackage.ABSTRACT_XML_ABSTRACT_COLUMN__UNIQUE: + return UNIQUE_EDEFAULT == null ? unique != null : !UNIQUE_EDEFAULT.equals(unique); + case EclipseLinkOrmPackage.ABSTRACT_XML_ABSTRACT_COLUMN__UPDATABLE: + return UPDATABLE_EDEFAULT == null ? updatable != null : !UPDATABLE_EDEFAULT.equals(updatable); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) + { + if (baseClass == XmlAbstractColumn.class) + { + switch (derivedFeatureID) + { + case EclipseLinkOrmPackage.ABSTRACT_XML_ABSTRACT_COLUMN__INSERTABLE: return EclipseLinkOrmPackage.XML_ABSTRACT_COLUMN__INSERTABLE; + case EclipseLinkOrmPackage.ABSTRACT_XML_ABSTRACT_COLUMN__NULLABLE: return EclipseLinkOrmPackage.XML_ABSTRACT_COLUMN__NULLABLE; + case EclipseLinkOrmPackage.ABSTRACT_XML_ABSTRACT_COLUMN__TABLE: return EclipseLinkOrmPackage.XML_ABSTRACT_COLUMN__TABLE; + case EclipseLinkOrmPackage.ABSTRACT_XML_ABSTRACT_COLUMN__UNIQUE: return EclipseLinkOrmPackage.XML_ABSTRACT_COLUMN__UNIQUE; + case EclipseLinkOrmPackage.ABSTRACT_XML_ABSTRACT_COLUMN__UPDATABLE: return EclipseLinkOrmPackage.XML_ABSTRACT_COLUMN__UPDATABLE; + default: return -1; + } + } + return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) + { + if (baseClass == XmlAbstractColumn.class) + { + switch (baseFeatureID) + { + case EclipseLinkOrmPackage.XML_ABSTRACT_COLUMN__INSERTABLE: return EclipseLinkOrmPackage.ABSTRACT_XML_ABSTRACT_COLUMN__INSERTABLE; + case EclipseLinkOrmPackage.XML_ABSTRACT_COLUMN__NULLABLE: return EclipseLinkOrmPackage.ABSTRACT_XML_ABSTRACT_COLUMN__NULLABLE; + case EclipseLinkOrmPackage.XML_ABSTRACT_COLUMN__TABLE: return EclipseLinkOrmPackage.ABSTRACT_XML_ABSTRACT_COLUMN__TABLE; + case EclipseLinkOrmPackage.XML_ABSTRACT_COLUMN__UNIQUE: return EclipseLinkOrmPackage.ABSTRACT_XML_ABSTRACT_COLUMN__UNIQUE; + case EclipseLinkOrmPackage.XML_ABSTRACT_COLUMN__UPDATABLE: return EclipseLinkOrmPackage.ABSTRACT_XML_ABSTRACT_COLUMN__UPDATABLE; + default: return -1; + } + } + return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (insertable: "); + result.append(insertable); + result.append(", nullable: "); + result.append(nullable); + result.append(", table: "); + result.append(table); + result.append(", unique: "); + result.append(unique); + result.append(", updatable: "); + result.append(updatable); + result.append(')'); + return result.toString(); + } + +} // AbstractXmlAbstractColumn diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/AbstractXmlAttributeMapping.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/AbstractXmlAttributeMapping.java new file mode 100644 index 0000000000..9ec90925b0 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/AbstractXmlAttributeMapping.java @@ -0,0 +1,192 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.jpt.core.resource.common.AbstractJpaEObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Abstract Xml Attribute Mapping</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getAbstractXmlAttributeMapping() + * @model kind="class" abstract="true" + * @generated + */ +public abstract class AbstractXmlAttributeMapping extends AbstractJpaEObject implements XmlAttributeMapping +{ + /** + * The default value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected static final String NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected String name = NAME_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected AbstractXmlAttributeMapping() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.ABSTRACT_XML_ATTRIBUTE_MAPPING; + } + + /** + * Returns the value of the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Name</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Name</em>' attribute. + * @see #setName(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlAttributeMapping_Name() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" required="true" + * @generated + */ + public String getName() + { + return name; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlAttributeMapping#getName <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Name</em>' attribute. + * @see #getName() + * @generated + */ + public void setName(String newName) + { + String oldName = name; + name = newName; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.ABSTRACT_XML_ATTRIBUTE_MAPPING__NAME, oldName, name)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case EclipseLinkOrmPackage.ABSTRACT_XML_ATTRIBUTE_MAPPING__NAME: + return getName(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case EclipseLinkOrmPackage.ABSTRACT_XML_ATTRIBUTE_MAPPING__NAME: + setName((String)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.ABSTRACT_XML_ATTRIBUTE_MAPPING__NAME: + setName(NAME_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.ABSTRACT_XML_ATTRIBUTE_MAPPING__NAME: + return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (name: "); + result.append(name); + result.append(')'); + return result.toString(); + } + +} // AbstractXmlAttributeMapping diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/AbstractXmlBaseTable.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/AbstractXmlBaseTable.java new file mode 100644 index 0000000000..e117bd3a90 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/AbstractXmlBaseTable.java @@ -0,0 +1,396 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +import org.eclipse.jpt.core.resource.common.AbstractJpaEObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Abstract Xml Base Table</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getAbstractXmlBaseTable() + * @model kind="class" abstract="true" + * @generated + */ +public abstract class AbstractXmlBaseTable extends AbstractJpaEObject implements XmlBaseTable +{ + /** + * The default value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected static final String NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected String name = NAME_EDEFAULT; + + /** + * The default value of the '{@link #getCatalog() <em>Catalog</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getCatalog() + * @generated + * @ordered + */ + protected static final String CATALOG_EDEFAULT = null; + + /** + * The cached value of the '{@link #getCatalog() <em>Catalog</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getCatalog() + * @generated + * @ordered + */ + protected String catalog = CATALOG_EDEFAULT; + + /** + * The default value of the '{@link #getSchema() <em>Schema</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSchema() + * @generated + * @ordered + */ + protected static final String SCHEMA_EDEFAULT = null; + + /** + * The cached value of the '{@link #getSchema() <em>Schema</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSchema() + * @generated + * @ordered + */ + protected String schema = SCHEMA_EDEFAULT; + + /** + * The cached value of the '{@link #getUniqueConstraints() <em>Unique Constraints</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getUniqueConstraints() + * @generated + * @ordered + */ + protected EList<XmlUniqueConstraint> uniqueConstraints; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected AbstractXmlBaseTable() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.ABSTRACT_XML_BASE_TABLE; + } + + /** + * Returns the value of the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Name</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Name</em>' attribute. + * @see #setName(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlBaseTable_Name() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + public String getName() + { + return name; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlBaseTable#getName <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Name</em>' attribute. + * @see #getName() + * @generated + */ + public void setName(String newName) + { + String oldName = name; + name = newName; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.ABSTRACT_XML_BASE_TABLE__NAME, oldName, name)); + } + + /** + * Returns the value of the '<em><b>Catalog</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Catalog</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Catalog</em>' attribute. + * @see #setCatalog(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlBaseTable_Catalog() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + public String getCatalog() + { + return catalog; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlBaseTable#getCatalog <em>Catalog</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Catalog</em>' attribute. + * @see #getCatalog() + * @generated + */ + public void setCatalog(String newCatalog) + { + String oldCatalog = catalog; + catalog = newCatalog; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.ABSTRACT_XML_BASE_TABLE__CATALOG, oldCatalog, catalog)); + } + + /** + * Returns the value of the '<em><b>Schema</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Schema</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Schema</em>' attribute. + * @see #setSchema(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlBaseTable_Schema() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + public String getSchema() + { + return schema; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlBaseTable#getSchema <em>Schema</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Schema</em>' attribute. + * @see #getSchema() + * @generated + */ + public void setSchema(String newSchema) + { + String oldSchema = schema; + schema = newSchema; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.ABSTRACT_XML_BASE_TABLE__SCHEMA, oldSchema, schema)); + } + + /** + * Returns the value of the '<em><b>Unique Constraints</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlUniqueConstraint}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Unique Constraints</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Unique Constraints</em>' containment reference list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlBaseTable_UniqueConstraints() + * @model containment="true" + * @generated + */ + public EList<XmlUniqueConstraint> getUniqueConstraints() + { + if (uniqueConstraints == null) + { + uniqueConstraints = new EObjectContainmentEList<XmlUniqueConstraint>(XmlUniqueConstraint.class, this, EclipseLinkOrmPackage.ABSTRACT_XML_BASE_TABLE__UNIQUE_CONSTRAINTS); + } + return uniqueConstraints; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case EclipseLinkOrmPackage.ABSTRACT_XML_BASE_TABLE__UNIQUE_CONSTRAINTS: + return ((InternalEList<?>)getUniqueConstraints()).basicRemove(otherEnd, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case EclipseLinkOrmPackage.ABSTRACT_XML_BASE_TABLE__NAME: + return getName(); + case EclipseLinkOrmPackage.ABSTRACT_XML_BASE_TABLE__CATALOG: + return getCatalog(); + case EclipseLinkOrmPackage.ABSTRACT_XML_BASE_TABLE__SCHEMA: + return getSchema(); + case EclipseLinkOrmPackage.ABSTRACT_XML_BASE_TABLE__UNIQUE_CONSTRAINTS: + return getUniqueConstraints(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case EclipseLinkOrmPackage.ABSTRACT_XML_BASE_TABLE__NAME: + setName((String)newValue); + return; + case EclipseLinkOrmPackage.ABSTRACT_XML_BASE_TABLE__CATALOG: + setCatalog((String)newValue); + return; + case EclipseLinkOrmPackage.ABSTRACT_XML_BASE_TABLE__SCHEMA: + setSchema((String)newValue); + return; + case EclipseLinkOrmPackage.ABSTRACT_XML_BASE_TABLE__UNIQUE_CONSTRAINTS: + getUniqueConstraints().clear(); + getUniqueConstraints().addAll((Collection<? extends XmlUniqueConstraint>)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.ABSTRACT_XML_BASE_TABLE__NAME: + setName(NAME_EDEFAULT); + return; + case EclipseLinkOrmPackage.ABSTRACT_XML_BASE_TABLE__CATALOG: + setCatalog(CATALOG_EDEFAULT); + return; + case EclipseLinkOrmPackage.ABSTRACT_XML_BASE_TABLE__SCHEMA: + setSchema(SCHEMA_EDEFAULT); + return; + case EclipseLinkOrmPackage.ABSTRACT_XML_BASE_TABLE__UNIQUE_CONSTRAINTS: + getUniqueConstraints().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.ABSTRACT_XML_BASE_TABLE__NAME: + return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name); + case EclipseLinkOrmPackage.ABSTRACT_XML_BASE_TABLE__CATALOG: + return CATALOG_EDEFAULT == null ? catalog != null : !CATALOG_EDEFAULT.equals(catalog); + case EclipseLinkOrmPackage.ABSTRACT_XML_BASE_TABLE__SCHEMA: + return SCHEMA_EDEFAULT == null ? schema != null : !SCHEMA_EDEFAULT.equals(schema); + case EclipseLinkOrmPackage.ABSTRACT_XML_BASE_TABLE__UNIQUE_CONSTRAINTS: + return uniqueConstraints != null && !uniqueConstraints.isEmpty(); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (name: "); + result.append(name); + result.append(", catalog: "); + result.append(catalog); + result.append(", schema: "); + result.append(schema); + result.append(')'); + return result.toString(); + } + +} // AbstractXmlBaseTable diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/AbstractXmlNamedColumn.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/AbstractXmlNamedColumn.java new file mode 100644 index 0000000000..814986c2a9 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/AbstractXmlNamedColumn.java @@ -0,0 +1,259 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.jpt.core.resource.common.AbstractJpaEObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Abstract Xml Named Column</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getAbstractXmlNamedColumn() + * @model kind="class" abstract="true" + * @generated + */ +public abstract class AbstractXmlNamedColumn extends AbstractJpaEObject implements XmlNamedColumn +{ + /** + * The default value of the '{@link #getColumnDefinition() <em>Column Definition</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getColumnDefinition() + * @generated + * @ordered + */ + protected static final String COLUMN_DEFINITION_EDEFAULT = null; + + /** + * The cached value of the '{@link #getColumnDefinition() <em>Column Definition</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getColumnDefinition() + * @generated + * @ordered + */ + protected String columnDefinition = COLUMN_DEFINITION_EDEFAULT; + + /** + * The default value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected static final String NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected String name = NAME_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected AbstractXmlNamedColumn() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.ABSTRACT_XML_NAMED_COLUMN; + } + + /** + * Returns the value of the '<em><b>Column Definition</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Column Definition</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Column Definition</em>' attribute. + * @see #setColumnDefinition(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlNamedColumn_ColumnDefinition() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + public String getColumnDefinition() + { + return columnDefinition; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlNamedColumn#getColumnDefinition <em>Column Definition</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Column Definition</em>' attribute. + * @see #getColumnDefinition() + * @generated + */ + public void setColumnDefinition(String newColumnDefinition) + { + String oldColumnDefinition = columnDefinition; + columnDefinition = newColumnDefinition; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.ABSTRACT_XML_NAMED_COLUMN__COLUMN_DEFINITION, oldColumnDefinition, columnDefinition)); + } + + /** + * Returns the value of the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Name</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Name</em>' attribute. + * @see #setName(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlNamedColumn_Name() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + public String getName() + { + return name; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlNamedColumn#getName <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Name</em>' attribute. + * @see #getName() + * @generated + */ + public void setName(String newName) + { + String oldName = name; + name = newName; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.ABSTRACT_XML_NAMED_COLUMN__NAME, oldName, name)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case EclipseLinkOrmPackage.ABSTRACT_XML_NAMED_COLUMN__COLUMN_DEFINITION: + return getColumnDefinition(); + case EclipseLinkOrmPackage.ABSTRACT_XML_NAMED_COLUMN__NAME: + return getName(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case EclipseLinkOrmPackage.ABSTRACT_XML_NAMED_COLUMN__COLUMN_DEFINITION: + setColumnDefinition((String)newValue); + return; + case EclipseLinkOrmPackage.ABSTRACT_XML_NAMED_COLUMN__NAME: + setName((String)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.ABSTRACT_XML_NAMED_COLUMN__COLUMN_DEFINITION: + setColumnDefinition(COLUMN_DEFINITION_EDEFAULT); + return; + case EclipseLinkOrmPackage.ABSTRACT_XML_NAMED_COLUMN__NAME: + setName(NAME_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.ABSTRACT_XML_NAMED_COLUMN__COLUMN_DEFINITION: + return COLUMN_DEFINITION_EDEFAULT == null ? columnDefinition != null : !COLUMN_DEFINITION_EDEFAULT.equals(columnDefinition); + case EclipseLinkOrmPackage.ABSTRACT_XML_NAMED_COLUMN__NAME: + return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (columnDefinition: "); + result.append(columnDefinition); + result.append(", name: "); + result.append(name); + result.append(')'); + return result.toString(); + } + +} // AbstractXmlNamedColumn diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/AbstractXmlTypeMapping.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/AbstractXmlTypeMapping.java new file mode 100644 index 0000000000..ffc42ac288 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/AbstractXmlTypeMapping.java @@ -0,0 +1,507 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.jpt.core.resource.common.AbstractJpaEObject; +import org.eclipse.jpt.core.resource.common.JpaEObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Abstract Xml Type Mapping</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlTypeMapping#getClassName <em>Class Name</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlTypeMapping#getAccess <em>Access</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlTypeMapping#getMetadataComplete <em>Metadata Complete</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlTypeMapping#getDescription <em>Description</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlTypeMapping#getAttributes <em>Attributes</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getAbstractXmlTypeMapping() + * @model kind="class" abstract="true" + * @extends JpaEObject + * @generated + */ +public abstract class AbstractXmlTypeMapping extends AbstractJpaEObject implements JpaEObject +{ + /** + * The default value of the '{@link #getClassName() <em>Class Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getClassName() + * @generated + * @ordered + */ + protected static final String CLASS_NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getClassName() <em>Class Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getClassName() + * @generated + * @ordered + */ + protected String className = CLASS_NAME_EDEFAULT; + + /** + * The default value of the '{@link #getAccess() <em>Access</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getAccess() + * @generated + * @ordered + */ + protected static final AccessType ACCESS_EDEFAULT = AccessType.PROPERTY; + + /** + * The cached value of the '{@link #getAccess() <em>Access</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getAccess() + * @generated + * @ordered + */ + protected AccessType access = ACCESS_EDEFAULT; + + /** + * The default value of the '{@link #getMetadataComplete() <em>Metadata Complete</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMetadataComplete() + * @generated + * @ordered + */ + protected static final Boolean METADATA_COMPLETE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getMetadataComplete() <em>Metadata Complete</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMetadataComplete() + * @generated + * @ordered + */ + protected Boolean metadataComplete = METADATA_COMPLETE_EDEFAULT; + + /** + * The default value of the '{@link #getDescription() <em>Description</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDescription() + * @generated + * @ordered + */ + protected static final String DESCRIPTION_EDEFAULT = null; + + /** + * The cached value of the '{@link #getDescription() <em>Description</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDescription() + * @generated + * @ordered + */ + protected String description = DESCRIPTION_EDEFAULT; + + /** + * The cached value of the '{@link #getAttributes() <em>Attributes</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getAttributes() + * @generated + * @ordered + */ + protected Attributes attributes; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected AbstractXmlTypeMapping() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.ABSTRACT_XML_TYPE_MAPPING; + } + + /** + * Returns the value of the '<em><b>Class Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Class Name</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Class Name</em>' attribute. + * @see #setClassName(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getAbstractXmlTypeMapping_ClassName() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" required="true" + * @generated + */ + public String getClassName() + { + return className; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlTypeMapping#getClassName <em>Class Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Class Name</em>' attribute. + * @see #getClassName() + * @generated + */ + public void setClassName(String newClassName) + { + String oldClassName = className; + className = newClassName; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.ABSTRACT_XML_TYPE_MAPPING__CLASS_NAME, oldClassName, className)); + } + + /** + * Returns the value of the '<em><b>Access</b></em>' attribute. + * The default value is <code>"PROPERTY"</code>. + * The literals are from the enumeration {@link org.eclipse.jpt.eclipselink.core.resource.elorm.AccessType}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Access</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Access</em>' attribute. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.AccessType + * @see #setAccess(AccessType) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getAbstractXmlTypeMapping_Access() + * @model default="PROPERTY" + * @generated + */ + public AccessType getAccess() + { + return access; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlTypeMapping#getAccess <em>Access</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Access</em>' attribute. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.AccessType + * @see #getAccess() + * @generated + */ + public void setAccess(AccessType newAccess) + { + AccessType oldAccess = access; + access = newAccess == null ? ACCESS_EDEFAULT : newAccess; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.ABSTRACT_XML_TYPE_MAPPING__ACCESS, oldAccess, access)); + } + + /** + * Returns the value of the '<em><b>Metadata Complete</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Metadata Complete</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Metadata Complete</em>' attribute. + * @see #setMetadataComplete(Boolean) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getAbstractXmlTypeMapping_MetadataComplete() + * @model dataType="org.eclipse.emf.ecore.xml.type.BooleanObject" + * @generated + */ + public Boolean getMetadataComplete() + { + return metadataComplete; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlTypeMapping#getMetadataComplete <em>Metadata Complete</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Metadata Complete</em>' attribute. + * @see #getMetadataComplete() + * @generated + */ + public void setMetadataComplete(Boolean newMetadataComplete) + { + Boolean oldMetadataComplete = metadataComplete; + metadataComplete = newMetadataComplete; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.ABSTRACT_XML_TYPE_MAPPING__METADATA_COMPLETE, oldMetadataComplete, metadataComplete)); + } + + /** + * Returns the value of the '<em><b>Description</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Description</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Description</em>' attribute. + * @see #setDescription(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getAbstractXmlTypeMapping_Description() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + public String getDescription() + { + return description; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlTypeMapping#getDescription <em>Description</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Description</em>' attribute. + * @see #getDescription() + * @generated + */ + public void setDescription(String newDescription) + { + String oldDescription = description; + description = newDescription; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.ABSTRACT_XML_TYPE_MAPPING__DESCRIPTION, oldDescription, description)); + } + + /** + * Returns the value of the '<em><b>Attributes</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Attributes</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Attributes</em>' containment reference. + * @see #setAttributes(Attributes) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getAbstractXmlTypeMapping_Attributes() + * @model containment="true" + * @generated + */ + public Attributes getAttributes() + { + return attributes; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetAttributes(Attributes newAttributes, NotificationChain msgs) + { + Attributes oldAttributes = attributes; + attributes = newAttributes; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.ABSTRACT_XML_TYPE_MAPPING__ATTRIBUTES, oldAttributes, newAttributes); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlTypeMapping#getAttributes <em>Attributes</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Attributes</em>' containment reference. + * @see #getAttributes() + * @generated + */ + public void setAttributes(Attributes newAttributes) + { + if (newAttributes != attributes) + { + NotificationChain msgs = null; + if (attributes != null) + msgs = ((InternalEObject)attributes).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.ABSTRACT_XML_TYPE_MAPPING__ATTRIBUTES, null, msgs); + if (newAttributes != null) + msgs = ((InternalEObject)newAttributes).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.ABSTRACT_XML_TYPE_MAPPING__ATTRIBUTES, null, msgs); + msgs = basicSetAttributes(newAttributes, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.ABSTRACT_XML_TYPE_MAPPING__ATTRIBUTES, newAttributes, newAttributes)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case EclipseLinkOrmPackage.ABSTRACT_XML_TYPE_MAPPING__ATTRIBUTES: + return basicSetAttributes(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case EclipseLinkOrmPackage.ABSTRACT_XML_TYPE_MAPPING__CLASS_NAME: + return getClassName(); + case EclipseLinkOrmPackage.ABSTRACT_XML_TYPE_MAPPING__ACCESS: + return getAccess(); + case EclipseLinkOrmPackage.ABSTRACT_XML_TYPE_MAPPING__METADATA_COMPLETE: + return getMetadataComplete(); + case EclipseLinkOrmPackage.ABSTRACT_XML_TYPE_MAPPING__DESCRIPTION: + return getDescription(); + case EclipseLinkOrmPackage.ABSTRACT_XML_TYPE_MAPPING__ATTRIBUTES: + return getAttributes(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case EclipseLinkOrmPackage.ABSTRACT_XML_TYPE_MAPPING__CLASS_NAME: + setClassName((String)newValue); + return; + case EclipseLinkOrmPackage.ABSTRACT_XML_TYPE_MAPPING__ACCESS: + setAccess((AccessType)newValue); + return; + case EclipseLinkOrmPackage.ABSTRACT_XML_TYPE_MAPPING__METADATA_COMPLETE: + setMetadataComplete((Boolean)newValue); + return; + case EclipseLinkOrmPackage.ABSTRACT_XML_TYPE_MAPPING__DESCRIPTION: + setDescription((String)newValue); + return; + case EclipseLinkOrmPackage.ABSTRACT_XML_TYPE_MAPPING__ATTRIBUTES: + setAttributes((Attributes)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.ABSTRACT_XML_TYPE_MAPPING__CLASS_NAME: + setClassName(CLASS_NAME_EDEFAULT); + return; + case EclipseLinkOrmPackage.ABSTRACT_XML_TYPE_MAPPING__ACCESS: + setAccess(ACCESS_EDEFAULT); + return; + case EclipseLinkOrmPackage.ABSTRACT_XML_TYPE_MAPPING__METADATA_COMPLETE: + setMetadataComplete(METADATA_COMPLETE_EDEFAULT); + return; + case EclipseLinkOrmPackage.ABSTRACT_XML_TYPE_MAPPING__DESCRIPTION: + setDescription(DESCRIPTION_EDEFAULT); + return; + case EclipseLinkOrmPackage.ABSTRACT_XML_TYPE_MAPPING__ATTRIBUTES: + setAttributes((Attributes)null); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.ABSTRACT_XML_TYPE_MAPPING__CLASS_NAME: + return CLASS_NAME_EDEFAULT == null ? className != null : !CLASS_NAME_EDEFAULT.equals(className); + case EclipseLinkOrmPackage.ABSTRACT_XML_TYPE_MAPPING__ACCESS: + return access != ACCESS_EDEFAULT; + case EclipseLinkOrmPackage.ABSTRACT_XML_TYPE_MAPPING__METADATA_COMPLETE: + return METADATA_COMPLETE_EDEFAULT == null ? metadataComplete != null : !METADATA_COMPLETE_EDEFAULT.equals(metadataComplete); + case EclipseLinkOrmPackage.ABSTRACT_XML_TYPE_MAPPING__DESCRIPTION: + return DESCRIPTION_EDEFAULT == null ? description != null : !DESCRIPTION_EDEFAULT.equals(description); + case EclipseLinkOrmPackage.ABSTRACT_XML_TYPE_MAPPING__ATTRIBUTES: + return attributes != null; + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (className: "); + result.append(className); + result.append(", access: "); + result.append(access); + result.append(", metadataComplete: "); + result.append(metadataComplete); + result.append(", description: "); + result.append(description); + result.append(')'); + return result.toString(); + } + +} // AbstractXmlTypeMapping diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/AccessType.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/AccessType.java new file mode 100644 index 0000000000..340a0407fa --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/AccessType.java @@ -0,0 +1,231 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +import org.eclipse.emf.common.util.Enumerator; + +/** + * <!-- begin-user-doc --> + * A representation of the literals of the enumeration '<em><b>Access Type</b></em>', + * and utility methods for working with them. + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getAccessType() + * @model + * @generated + */ +public enum AccessType implements Enumerator +{ + /** + * The '<em><b>PROPERTY</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #PROPERTY_VALUE + * @generated + * @ordered + */ + PROPERTY(0, "PROPERTY", "PROPERTY"), + + /** + * The '<em><b>FIELD</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #FIELD_VALUE + * @generated + * @ordered + */ + FIELD(1, "FIELD", "FIELD"); + + /** + * The '<em><b>PROPERTY</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>PROPERTY</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #PROPERTY + * @model + * @generated + * @ordered + */ + public static final int PROPERTY_VALUE = 0; + + /** + * The '<em><b>FIELD</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>FIELD</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #FIELD + * @model + * @generated + * @ordered + */ + public static final int FIELD_VALUE = 1; + + /** + * An array of all the '<em><b>Access Type</b></em>' enumerators. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private static final AccessType[] VALUES_ARRAY = + new AccessType[] + { + PROPERTY, + FIELD, + }; + + /** + * A public read-only list of all the '<em><b>Access Type</b></em>' enumerators. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final List<AccessType> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); + + /** + * Returns the '<em><b>Access Type</b></em>' literal with the specified literal value. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static AccessType get(String literal) + { + for (int i = 0; i < VALUES_ARRAY.length; ++i) + { + AccessType result = VALUES_ARRAY[i]; + if (result.toString().equals(literal)) + { + return result; + } + } + return null; + } + + /** + * Returns the '<em><b>Access Type</b></em>' literal with the specified name. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static AccessType getByName(String name) + { + for (int i = 0; i < VALUES_ARRAY.length; ++i) + { + AccessType result = VALUES_ARRAY[i]; + if (result.getName().equals(name)) + { + return result; + } + } + return null; + } + + /** + * Returns the '<em><b>Access Type</b></em>' literal with the specified integer value. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static AccessType get(int value) + { + switch (value) + { + case PROPERTY_VALUE: return PROPERTY; + case FIELD_VALUE: return FIELD; + } + return null; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private final int value; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private final String name; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private final String literal; + + /** + * Only this class can construct instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private AccessType(int value, String name, String literal) + { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public int getValue() + { + return value; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getName() + { + return name; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getLiteral() + { + return literal; + } + + /** + * Returns the literal value of the enumerator, which is its string representation. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() + { + return literal; + } + +} //AccessType diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/Attributes.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/Attributes.java new file mode 100644 index 0000000000..99cdaa9181 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/Attributes.java @@ -0,0 +1,608 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +import org.eclipse.jpt.core.resource.common.AbstractJpaEObject; +import org.eclipse.jpt.core.resource.common.JpaEObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Attributes</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.Attributes#getIds <em>Ids</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.Attributes#getEmbeddedIds <em>Embedded Ids</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.Attributes#getBasics <em>Basics</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.Attributes#getVersions <em>Versions</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.Attributes#getManyToOnes <em>Many To Ones</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.Attributes#getOneToManys <em>One To Manys</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.Attributes#getOneToOnes <em>One To Ones</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.Attributes#getManyToManys <em>Many To Manys</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.Attributes#getEmbeddeds <em>Embeddeds</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.Attributes#getTransients <em>Transients</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getAttributes() + * @model kind="class" + * @extends JpaEObject + * @generated + */ +public class Attributes extends AbstractJpaEObject implements JpaEObject +{ + /** + * The cached value of the '{@link #getIds() <em>Ids</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getIds() + * @generated + * @ordered + */ + protected EList<XmlId> ids; + + /** + * The cached value of the '{@link #getEmbeddedIds() <em>Embedded Ids</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getEmbeddedIds() + * @generated + * @ordered + */ + protected EList<XmlEmbeddedId> embeddedIds; + + /** + * The cached value of the '{@link #getBasics() <em>Basics</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getBasics() + * @generated + * @ordered + */ + protected EList<XmlBasic> basics; + + /** + * The cached value of the '{@link #getVersions() <em>Versions</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getVersions() + * @generated + * @ordered + */ + protected EList<XmlVersion> versions; + + /** + * The cached value of the '{@link #getManyToOnes() <em>Many To Ones</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getManyToOnes() + * @generated + * @ordered + */ + protected EList<XmlManyToOne> manyToOnes; + + /** + * The cached value of the '{@link #getOneToManys() <em>One To Manys</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getOneToManys() + * @generated + * @ordered + */ + protected EList<XmlOneToMany> oneToManys; + + /** + * The cached value of the '{@link #getOneToOnes() <em>One To Ones</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getOneToOnes() + * @generated + * @ordered + */ + protected EList<XmlOneToOne> oneToOnes; + + /** + * The cached value of the '{@link #getManyToManys() <em>Many To Manys</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getManyToManys() + * @generated + * @ordered + */ + protected EList<XmlManyToMany> manyToManys; + + /** + * The cached value of the '{@link #getEmbeddeds() <em>Embeddeds</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getEmbeddeds() + * @generated + * @ordered + */ + protected EList<XmlEmbedded> embeddeds; + + /** + * The cached value of the '{@link #getTransients() <em>Transients</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTransients() + * @generated + * @ordered + */ + protected EList<XmlTransient> transients; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected Attributes() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.ATTRIBUTES; + } + + /** + * Returns the value of the '<em><b>Ids</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlId}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Ids</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Ids</em>' containment reference list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getAttributes_Ids() + * @model containment="true" + * @generated + */ + public EList<XmlId> getIds() + { + if (ids == null) + { + ids = new EObjectContainmentEList<XmlId>(XmlId.class, this, EclipseLinkOrmPackage.ATTRIBUTES__IDS); + } + return ids; + } + + /** + * Returns the value of the '<em><b>Embedded Ids</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEmbeddedId}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Embedded Ids</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Embedded Ids</em>' containment reference list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getAttributes_EmbeddedIds() + * @model containment="true" + * @generated + */ + public EList<XmlEmbeddedId> getEmbeddedIds() + { + if (embeddedIds == null) + { + embeddedIds = new EObjectContainmentEList<XmlEmbeddedId>(XmlEmbeddedId.class, this, EclipseLinkOrmPackage.ATTRIBUTES__EMBEDDED_IDS); + } + return embeddedIds; + } + + /** + * Returns the value of the '<em><b>Basics</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBasic}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Basics</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Basics</em>' containment reference list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getAttributes_Basics() + * @model containment="true" + * @generated + */ + public EList<XmlBasic> getBasics() + { + if (basics == null) + { + basics = new EObjectContainmentEList<XmlBasic>(XmlBasic.class, this, EclipseLinkOrmPackage.ATTRIBUTES__BASICS); + } + return basics; + } + + /** + * Returns the value of the '<em><b>Versions</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlVersion}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Versions</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Versions</em>' containment reference list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getAttributes_Versions() + * @model containment="true" + * @generated + */ + public EList<XmlVersion> getVersions() + { + if (versions == null) + { + versions = new EObjectContainmentEList<XmlVersion>(XmlVersion.class, this, EclipseLinkOrmPackage.ATTRIBUTES__VERSIONS); + } + return versions; + } + + /** + * Returns the value of the '<em><b>Many To Ones</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlManyToOne}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Many To Ones</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Many To Ones</em>' containment reference list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getAttributes_ManyToOnes() + * @model containment="true" + * @generated + */ + public EList<XmlManyToOne> getManyToOnes() + { + if (manyToOnes == null) + { + manyToOnes = new EObjectContainmentEList<XmlManyToOne>(XmlManyToOne.class, this, EclipseLinkOrmPackage.ATTRIBUTES__MANY_TO_ONES); + } + return manyToOnes; + } + + /** + * Returns the value of the '<em><b>One To Manys</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlOneToMany}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>One To Manys</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>One To Manys</em>' containment reference list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getAttributes_OneToManys() + * @model containment="true" + * @generated + */ + public EList<XmlOneToMany> getOneToManys() + { + if (oneToManys == null) + { + oneToManys = new EObjectContainmentEList<XmlOneToMany>(XmlOneToMany.class, this, EclipseLinkOrmPackage.ATTRIBUTES__ONE_TO_MANYS); + } + return oneToManys; + } + + /** + * Returns the value of the '<em><b>One To Ones</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlOneToOne}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>One To Ones</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>One To Ones</em>' containment reference list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getAttributes_OneToOnes() + * @model containment="true" + * @generated + */ + public EList<XmlOneToOne> getOneToOnes() + { + if (oneToOnes == null) + { + oneToOnes = new EObjectContainmentEList<XmlOneToOne>(XmlOneToOne.class, this, EclipseLinkOrmPackage.ATTRIBUTES__ONE_TO_ONES); + } + return oneToOnes; + } + + /** + * Returns the value of the '<em><b>Many To Manys</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlManyToMany}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Many To Manys</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Many To Manys</em>' containment reference list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getAttributes_ManyToManys() + * @model containment="true" + * @generated + */ + public EList<XmlManyToMany> getManyToManys() + { + if (manyToManys == null) + { + manyToManys = new EObjectContainmentEList<XmlManyToMany>(XmlManyToMany.class, this, EclipseLinkOrmPackage.ATTRIBUTES__MANY_TO_MANYS); + } + return manyToManys; + } + + /** + * Returns the value of the '<em><b>Embeddeds</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEmbedded}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Embeddeds</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Embeddeds</em>' containment reference list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getAttributes_Embeddeds() + * @model containment="true" + * @generated + */ + public EList<XmlEmbedded> getEmbeddeds() + { + if (embeddeds == null) + { + embeddeds = new EObjectContainmentEList<XmlEmbedded>(XmlEmbedded.class, this, EclipseLinkOrmPackage.ATTRIBUTES__EMBEDDEDS); + } + return embeddeds; + } + + /** + * Returns the value of the '<em><b>Transients</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTransient}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Transients</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Transients</em>' containment reference list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getAttributes_Transients() + * @model containment="true" + * @generated + */ + public EList<XmlTransient> getTransients() + { + if (transients == null) + { + transients = new EObjectContainmentEList<XmlTransient>(XmlTransient.class, this, EclipseLinkOrmPackage.ATTRIBUTES__TRANSIENTS); + } + return transients; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case EclipseLinkOrmPackage.ATTRIBUTES__IDS: + return ((InternalEList<?>)getIds()).basicRemove(otherEnd, msgs); + case EclipseLinkOrmPackage.ATTRIBUTES__EMBEDDED_IDS: + return ((InternalEList<?>)getEmbeddedIds()).basicRemove(otherEnd, msgs); + case EclipseLinkOrmPackage.ATTRIBUTES__BASICS: + return ((InternalEList<?>)getBasics()).basicRemove(otherEnd, msgs); + case EclipseLinkOrmPackage.ATTRIBUTES__VERSIONS: + return ((InternalEList<?>)getVersions()).basicRemove(otherEnd, msgs); + case EclipseLinkOrmPackage.ATTRIBUTES__MANY_TO_ONES: + return ((InternalEList<?>)getManyToOnes()).basicRemove(otherEnd, msgs); + case EclipseLinkOrmPackage.ATTRIBUTES__ONE_TO_MANYS: + return ((InternalEList<?>)getOneToManys()).basicRemove(otherEnd, msgs); + case EclipseLinkOrmPackage.ATTRIBUTES__ONE_TO_ONES: + return ((InternalEList<?>)getOneToOnes()).basicRemove(otherEnd, msgs); + case EclipseLinkOrmPackage.ATTRIBUTES__MANY_TO_MANYS: + return ((InternalEList<?>)getManyToManys()).basicRemove(otherEnd, msgs); + case EclipseLinkOrmPackage.ATTRIBUTES__EMBEDDEDS: + return ((InternalEList<?>)getEmbeddeds()).basicRemove(otherEnd, msgs); + case EclipseLinkOrmPackage.ATTRIBUTES__TRANSIENTS: + return ((InternalEList<?>)getTransients()).basicRemove(otherEnd, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case EclipseLinkOrmPackage.ATTRIBUTES__IDS: + return getIds(); + case EclipseLinkOrmPackage.ATTRIBUTES__EMBEDDED_IDS: + return getEmbeddedIds(); + case EclipseLinkOrmPackage.ATTRIBUTES__BASICS: + return getBasics(); + case EclipseLinkOrmPackage.ATTRIBUTES__VERSIONS: + return getVersions(); + case EclipseLinkOrmPackage.ATTRIBUTES__MANY_TO_ONES: + return getManyToOnes(); + case EclipseLinkOrmPackage.ATTRIBUTES__ONE_TO_MANYS: + return getOneToManys(); + case EclipseLinkOrmPackage.ATTRIBUTES__ONE_TO_ONES: + return getOneToOnes(); + case EclipseLinkOrmPackage.ATTRIBUTES__MANY_TO_MANYS: + return getManyToManys(); + case EclipseLinkOrmPackage.ATTRIBUTES__EMBEDDEDS: + return getEmbeddeds(); + case EclipseLinkOrmPackage.ATTRIBUTES__TRANSIENTS: + return getTransients(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case EclipseLinkOrmPackage.ATTRIBUTES__IDS: + getIds().clear(); + getIds().addAll((Collection<? extends XmlId>)newValue); + return; + case EclipseLinkOrmPackage.ATTRIBUTES__EMBEDDED_IDS: + getEmbeddedIds().clear(); + getEmbeddedIds().addAll((Collection<? extends XmlEmbeddedId>)newValue); + return; + case EclipseLinkOrmPackage.ATTRIBUTES__BASICS: + getBasics().clear(); + getBasics().addAll((Collection<? extends XmlBasic>)newValue); + return; + case EclipseLinkOrmPackage.ATTRIBUTES__VERSIONS: + getVersions().clear(); + getVersions().addAll((Collection<? extends XmlVersion>)newValue); + return; + case EclipseLinkOrmPackage.ATTRIBUTES__MANY_TO_ONES: + getManyToOnes().clear(); + getManyToOnes().addAll((Collection<? extends XmlManyToOne>)newValue); + return; + case EclipseLinkOrmPackage.ATTRIBUTES__ONE_TO_MANYS: + getOneToManys().clear(); + getOneToManys().addAll((Collection<? extends XmlOneToMany>)newValue); + return; + case EclipseLinkOrmPackage.ATTRIBUTES__ONE_TO_ONES: + getOneToOnes().clear(); + getOneToOnes().addAll((Collection<? extends XmlOneToOne>)newValue); + return; + case EclipseLinkOrmPackage.ATTRIBUTES__MANY_TO_MANYS: + getManyToManys().clear(); + getManyToManys().addAll((Collection<? extends XmlManyToMany>)newValue); + return; + case EclipseLinkOrmPackage.ATTRIBUTES__EMBEDDEDS: + getEmbeddeds().clear(); + getEmbeddeds().addAll((Collection<? extends XmlEmbedded>)newValue); + return; + case EclipseLinkOrmPackage.ATTRIBUTES__TRANSIENTS: + getTransients().clear(); + getTransients().addAll((Collection<? extends XmlTransient>)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.ATTRIBUTES__IDS: + getIds().clear(); + return; + case EclipseLinkOrmPackage.ATTRIBUTES__EMBEDDED_IDS: + getEmbeddedIds().clear(); + return; + case EclipseLinkOrmPackage.ATTRIBUTES__BASICS: + getBasics().clear(); + return; + case EclipseLinkOrmPackage.ATTRIBUTES__VERSIONS: + getVersions().clear(); + return; + case EclipseLinkOrmPackage.ATTRIBUTES__MANY_TO_ONES: + getManyToOnes().clear(); + return; + case EclipseLinkOrmPackage.ATTRIBUTES__ONE_TO_MANYS: + getOneToManys().clear(); + return; + case EclipseLinkOrmPackage.ATTRIBUTES__ONE_TO_ONES: + getOneToOnes().clear(); + return; + case EclipseLinkOrmPackage.ATTRIBUTES__MANY_TO_MANYS: + getManyToManys().clear(); + return; + case EclipseLinkOrmPackage.ATTRIBUTES__EMBEDDEDS: + getEmbeddeds().clear(); + return; + case EclipseLinkOrmPackage.ATTRIBUTES__TRANSIENTS: + getTransients().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.ATTRIBUTES__IDS: + return ids != null && !ids.isEmpty(); + case EclipseLinkOrmPackage.ATTRIBUTES__EMBEDDED_IDS: + return embeddedIds != null && !embeddedIds.isEmpty(); + case EclipseLinkOrmPackage.ATTRIBUTES__BASICS: + return basics != null && !basics.isEmpty(); + case EclipseLinkOrmPackage.ATTRIBUTES__VERSIONS: + return versions != null && !versions.isEmpty(); + case EclipseLinkOrmPackage.ATTRIBUTES__MANY_TO_ONES: + return manyToOnes != null && !manyToOnes.isEmpty(); + case EclipseLinkOrmPackage.ATTRIBUTES__ONE_TO_MANYS: + return oneToManys != null && !oneToManys.isEmpty(); + case EclipseLinkOrmPackage.ATTRIBUTES__ONE_TO_ONES: + return oneToOnes != null && !oneToOnes.isEmpty(); + case EclipseLinkOrmPackage.ATTRIBUTES__MANY_TO_MANYS: + return manyToManys != null && !manyToManys.isEmpty(); + case EclipseLinkOrmPackage.ATTRIBUTES__EMBEDDEDS: + return embeddeds != null && !embeddeds.isEmpty(); + case EclipseLinkOrmPackage.ATTRIBUTES__TRANSIENTS: + return transients != null && !transients.isEmpty(); + } + return super.eIsSet(featureID); + } + +} // Attributes diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/BaseXmlEmbedded.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/BaseXmlEmbedded.java new file mode 100644 index 0000000000..3909a7ff05 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/BaseXmlEmbedded.java @@ -0,0 +1,49 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.emf.common.util.EList; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Base Xml Embedded</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.BaseXmlEmbedded#getAttributeOverrides <em>Attribute Overrides</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getBaseXmlEmbedded() + * @model kind="class" interface="true" abstract="true" + * @generated + */ +public interface BaseXmlEmbedded extends XmlAttributeMapping +{ + /** + * Returns the value of the '<em><b>Attribute Overrides</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAttributeOverride}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Attribute Overrides</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Attribute Overrides</em>' containment reference list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getBaseXmlEmbedded_AttributeOverrides() + * @model containment="true" + * @generated + */ + EList<XmlAttributeOverride> getAttributeOverrides(); + +} // BaseXmlEmbedded diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/CascadeType.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/CascadeType.java new file mode 100644 index 0000000000..c5839a7ee4 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/CascadeType.java @@ -0,0 +1,168 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.jpt.core.resource.common.JpaEObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Cascade Type</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.CascadeType#isCascadeAll <em>Cascade All</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.CascadeType#isCascadePersist <em>Cascade Persist</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.CascadeType#isCascadeMerge <em>Cascade Merge</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.CascadeType#isCascadeRemove <em>Cascade Remove</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.CascadeType#isCascadeRefresh <em>Cascade Refresh</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getCascadeType() + * @model kind="class" interface="true" abstract="true" + * @extends JpaEObject + * @generated + */ +public interface CascadeType extends JpaEObject +{ + /** + * Returns the value of the '<em><b>Cascade All</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Cascade All</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Cascade All</em>' attribute. + * @see #setCascadeAll(boolean) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getCascadeType_CascadeAll() + * @model dataType="org.eclipse.emf.ecore.xml.type.Boolean" + * @generated + */ + boolean isCascadeAll(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.CascadeType#isCascadeAll <em>Cascade All</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Cascade All</em>' attribute. + * @see #isCascadeAll() + * @generated + */ + void setCascadeAll(boolean value); + + /** + * Returns the value of the '<em><b>Cascade Persist</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Cascade Persist</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Cascade Persist</em>' attribute. + * @see #setCascadePersist(boolean) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getCascadeType_CascadePersist() + * @model dataType="org.eclipse.emf.ecore.xml.type.Boolean" + * @generated + */ + boolean isCascadePersist(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.CascadeType#isCascadePersist <em>Cascade Persist</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Cascade Persist</em>' attribute. + * @see #isCascadePersist() + * @generated + */ + void setCascadePersist(boolean value); + + /** + * Returns the value of the '<em><b>Cascade Merge</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Cascade Merge</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Cascade Merge</em>' attribute. + * @see #setCascadeMerge(boolean) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getCascadeType_CascadeMerge() + * @model dataType="org.eclipse.emf.ecore.xml.type.Boolean" + * @generated + */ + boolean isCascadeMerge(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.CascadeType#isCascadeMerge <em>Cascade Merge</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Cascade Merge</em>' attribute. + * @see #isCascadeMerge() + * @generated + */ + void setCascadeMerge(boolean value); + + /** + * Returns the value of the '<em><b>Cascade Remove</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Cascade Remove</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Cascade Remove</em>' attribute. + * @see #setCascadeRemove(boolean) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getCascadeType_CascadeRemove() + * @model dataType="org.eclipse.emf.ecore.xml.type.Boolean" + * @generated + */ + boolean isCascadeRemove(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.CascadeType#isCascadeRemove <em>Cascade Remove</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Cascade Remove</em>' attribute. + * @see #isCascadeRemove() + * @generated + */ + void setCascadeRemove(boolean value); + + /** + * Returns the value of the '<em><b>Cascade Refresh</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Cascade Refresh</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Cascade Refresh</em>' attribute. + * @see #setCascadeRefresh(boolean) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getCascadeType_CascadeRefresh() + * @model dataType="org.eclipse.emf.ecore.xml.type.Boolean" + * @generated + */ + boolean isCascadeRefresh(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.CascadeType#isCascadeRefresh <em>Cascade Refresh</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Cascade Refresh</em>' attribute. + * @see #isCascadeRefresh() + * @generated + */ + void setCascadeRefresh(boolean value); + +} // CascadeType diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/CascadeTypeImpl.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/CascadeTypeImpl.java new file mode 100644 index 0000000000..2da801933c --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/CascadeTypeImpl.java @@ -0,0 +1,460 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.jpt.core.resource.common.AbstractJpaEObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Cascade Type Impl</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getCascadeTypeImpl() + * @model kind="class" + * @generated + */ +public class CascadeTypeImpl extends AbstractJpaEObject implements CascadeType +{ + /** + * The default value of the '{@link #isCascadeAll() <em>Cascade All</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isCascadeAll() + * @generated + * @ordered + */ + protected static final boolean CASCADE_ALL_EDEFAULT = false; + + /** + * The cached value of the '{@link #isCascadeAll() <em>Cascade All</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isCascadeAll() + * @generated + * @ordered + */ + protected boolean cascadeAll = CASCADE_ALL_EDEFAULT; + + /** + * The default value of the '{@link #isCascadePersist() <em>Cascade Persist</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isCascadePersist() + * @generated + * @ordered + */ + protected static final boolean CASCADE_PERSIST_EDEFAULT = false; + + /** + * The cached value of the '{@link #isCascadePersist() <em>Cascade Persist</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isCascadePersist() + * @generated + * @ordered + */ + protected boolean cascadePersist = CASCADE_PERSIST_EDEFAULT; + + /** + * The default value of the '{@link #isCascadeMerge() <em>Cascade Merge</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isCascadeMerge() + * @generated + * @ordered + */ + protected static final boolean CASCADE_MERGE_EDEFAULT = false; + + /** + * The cached value of the '{@link #isCascadeMerge() <em>Cascade Merge</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isCascadeMerge() + * @generated + * @ordered + */ + protected boolean cascadeMerge = CASCADE_MERGE_EDEFAULT; + + /** + * The default value of the '{@link #isCascadeRemove() <em>Cascade Remove</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isCascadeRemove() + * @generated + * @ordered + */ + protected static final boolean CASCADE_REMOVE_EDEFAULT = false; + + /** + * The cached value of the '{@link #isCascadeRemove() <em>Cascade Remove</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isCascadeRemove() + * @generated + * @ordered + */ + protected boolean cascadeRemove = CASCADE_REMOVE_EDEFAULT; + + /** + * The default value of the '{@link #isCascadeRefresh() <em>Cascade Refresh</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isCascadeRefresh() + * @generated + * @ordered + */ + protected static final boolean CASCADE_REFRESH_EDEFAULT = false; + + /** + * The cached value of the '{@link #isCascadeRefresh() <em>Cascade Refresh</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isCascadeRefresh() + * @generated + * @ordered + */ + protected boolean cascadeRefresh = CASCADE_REFRESH_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected CascadeTypeImpl() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.CASCADE_TYPE_IMPL; + } + + /** + * Returns the value of the '<em><b>Cascade All</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Cascade All</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Cascade All</em>' attribute. + * @see #setCascadeAll(boolean) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getCascadeType_CascadeAll() + * @model dataType="org.eclipse.emf.ecore.xml.type.Boolean" + * @generated + */ + public boolean isCascadeAll() + { + return cascadeAll; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.CascadeTypeImpl#isCascadeAll <em>Cascade All</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Cascade All</em>' attribute. + * @see #isCascadeAll() + * @generated + */ + public void setCascadeAll(boolean newCascadeAll) + { + boolean oldCascadeAll = cascadeAll; + cascadeAll = newCascadeAll; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.CASCADE_TYPE_IMPL__CASCADE_ALL, oldCascadeAll, cascadeAll)); + } + + /** + * Returns the value of the '<em><b>Cascade Persist</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Cascade Persist</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Cascade Persist</em>' attribute. + * @see #setCascadePersist(boolean) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getCascadeType_CascadePersist() + * @model dataType="org.eclipse.emf.ecore.xml.type.Boolean" + * @generated + */ + public boolean isCascadePersist() + { + return cascadePersist; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.CascadeTypeImpl#isCascadePersist <em>Cascade Persist</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Cascade Persist</em>' attribute. + * @see #isCascadePersist() + * @generated + */ + public void setCascadePersist(boolean newCascadePersist) + { + boolean oldCascadePersist = cascadePersist; + cascadePersist = newCascadePersist; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.CASCADE_TYPE_IMPL__CASCADE_PERSIST, oldCascadePersist, cascadePersist)); + } + + /** + * Returns the value of the '<em><b>Cascade Merge</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Cascade Merge</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Cascade Merge</em>' attribute. + * @see #setCascadeMerge(boolean) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getCascadeType_CascadeMerge() + * @model dataType="org.eclipse.emf.ecore.xml.type.Boolean" + * @generated + */ + public boolean isCascadeMerge() + { + return cascadeMerge; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.CascadeTypeImpl#isCascadeMerge <em>Cascade Merge</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Cascade Merge</em>' attribute. + * @see #isCascadeMerge() + * @generated + */ + public void setCascadeMerge(boolean newCascadeMerge) + { + boolean oldCascadeMerge = cascadeMerge; + cascadeMerge = newCascadeMerge; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.CASCADE_TYPE_IMPL__CASCADE_MERGE, oldCascadeMerge, cascadeMerge)); + } + + /** + * Returns the value of the '<em><b>Cascade Remove</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Cascade Remove</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Cascade Remove</em>' attribute. + * @see #setCascadeRemove(boolean) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getCascadeType_CascadeRemove() + * @model dataType="org.eclipse.emf.ecore.xml.type.Boolean" + * @generated + */ + public boolean isCascadeRemove() + { + return cascadeRemove; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.CascadeTypeImpl#isCascadeRemove <em>Cascade Remove</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Cascade Remove</em>' attribute. + * @see #isCascadeRemove() + * @generated + */ + public void setCascadeRemove(boolean newCascadeRemove) + { + boolean oldCascadeRemove = cascadeRemove; + cascadeRemove = newCascadeRemove; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.CASCADE_TYPE_IMPL__CASCADE_REMOVE, oldCascadeRemove, cascadeRemove)); + } + + /** + * Returns the value of the '<em><b>Cascade Refresh</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Cascade Refresh</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Cascade Refresh</em>' attribute. + * @see #setCascadeRefresh(boolean) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getCascadeType_CascadeRefresh() + * @model dataType="org.eclipse.emf.ecore.xml.type.Boolean" + * @generated + */ + public boolean isCascadeRefresh() + { + return cascadeRefresh; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.CascadeTypeImpl#isCascadeRefresh <em>Cascade Refresh</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Cascade Refresh</em>' attribute. + * @see #isCascadeRefresh() + * @generated + */ + public void setCascadeRefresh(boolean newCascadeRefresh) + { + boolean oldCascadeRefresh = cascadeRefresh; + cascadeRefresh = newCascadeRefresh; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.CASCADE_TYPE_IMPL__CASCADE_REFRESH, oldCascadeRefresh, cascadeRefresh)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case EclipseLinkOrmPackage.CASCADE_TYPE_IMPL__CASCADE_ALL: + return isCascadeAll() ? Boolean.TRUE : Boolean.FALSE; + case EclipseLinkOrmPackage.CASCADE_TYPE_IMPL__CASCADE_PERSIST: + return isCascadePersist() ? Boolean.TRUE : Boolean.FALSE; + case EclipseLinkOrmPackage.CASCADE_TYPE_IMPL__CASCADE_MERGE: + return isCascadeMerge() ? Boolean.TRUE : Boolean.FALSE; + case EclipseLinkOrmPackage.CASCADE_TYPE_IMPL__CASCADE_REMOVE: + return isCascadeRemove() ? Boolean.TRUE : Boolean.FALSE; + case EclipseLinkOrmPackage.CASCADE_TYPE_IMPL__CASCADE_REFRESH: + return isCascadeRefresh() ? Boolean.TRUE : Boolean.FALSE; + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case EclipseLinkOrmPackage.CASCADE_TYPE_IMPL__CASCADE_ALL: + setCascadeAll(((Boolean)newValue).booleanValue()); + return; + case EclipseLinkOrmPackage.CASCADE_TYPE_IMPL__CASCADE_PERSIST: + setCascadePersist(((Boolean)newValue).booleanValue()); + return; + case EclipseLinkOrmPackage.CASCADE_TYPE_IMPL__CASCADE_MERGE: + setCascadeMerge(((Boolean)newValue).booleanValue()); + return; + case EclipseLinkOrmPackage.CASCADE_TYPE_IMPL__CASCADE_REMOVE: + setCascadeRemove(((Boolean)newValue).booleanValue()); + return; + case EclipseLinkOrmPackage.CASCADE_TYPE_IMPL__CASCADE_REFRESH: + setCascadeRefresh(((Boolean)newValue).booleanValue()); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.CASCADE_TYPE_IMPL__CASCADE_ALL: + setCascadeAll(CASCADE_ALL_EDEFAULT); + return; + case EclipseLinkOrmPackage.CASCADE_TYPE_IMPL__CASCADE_PERSIST: + setCascadePersist(CASCADE_PERSIST_EDEFAULT); + return; + case EclipseLinkOrmPackage.CASCADE_TYPE_IMPL__CASCADE_MERGE: + setCascadeMerge(CASCADE_MERGE_EDEFAULT); + return; + case EclipseLinkOrmPackage.CASCADE_TYPE_IMPL__CASCADE_REMOVE: + setCascadeRemove(CASCADE_REMOVE_EDEFAULT); + return; + case EclipseLinkOrmPackage.CASCADE_TYPE_IMPL__CASCADE_REFRESH: + setCascadeRefresh(CASCADE_REFRESH_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.CASCADE_TYPE_IMPL__CASCADE_ALL: + return cascadeAll != CASCADE_ALL_EDEFAULT; + case EclipseLinkOrmPackage.CASCADE_TYPE_IMPL__CASCADE_PERSIST: + return cascadePersist != CASCADE_PERSIST_EDEFAULT; + case EclipseLinkOrmPackage.CASCADE_TYPE_IMPL__CASCADE_MERGE: + return cascadeMerge != CASCADE_MERGE_EDEFAULT; + case EclipseLinkOrmPackage.CASCADE_TYPE_IMPL__CASCADE_REMOVE: + return cascadeRemove != CASCADE_REMOVE_EDEFAULT; + case EclipseLinkOrmPackage.CASCADE_TYPE_IMPL__CASCADE_REFRESH: + return cascadeRefresh != CASCADE_REFRESH_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (cascadeAll: "); + result.append(cascadeAll); + result.append(", cascadePersist: "); + result.append(cascadePersist); + result.append(", cascadeMerge: "); + result.append(cascadeMerge); + result.append(", cascadeRemove: "); + result.append(cascadeRemove); + result.append(", cascadeRefresh: "); + result.append(cascadeRefresh); + result.append(')'); + return result.toString(); + } + +} // CascadeTypeImpl diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/ColumnMapping.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/ColumnMapping.java new file mode 100644 index 0000000000..2261460edb --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/ColumnMapping.java @@ -0,0 +1,60 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.jpt.core.resource.common.JpaEObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Column Mapping</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.ColumnMapping#getColumn <em>Column</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getColumnMapping() + * @model kind="class" interface="true" abstract="true" + * @extends JpaEObject + * @generated + */ +public interface ColumnMapping extends JpaEObject +{ + /** + * Returns the value of the '<em><b>Column</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Column</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Column</em>' containment reference. + * @see #setColumn(XmlColumn) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getColumnMapping_Column() + * @model containment="true" + * @generated + */ + XmlColumn getColumn(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.ColumnMapping#getColumn <em>Column</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Column</em>' containment reference. + * @see #getColumn() + * @generated + */ + void setColumn(XmlColumn value); + +} // ColumnMapping diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/ColumnResult.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/ColumnResult.java new file mode 100644 index 0000000000..947724ca4f --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/ColumnResult.java @@ -0,0 +1,200 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.jpt.core.resource.common.AbstractJpaEObject; +import org.eclipse.jpt.core.resource.common.JpaEObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Column Result</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.ColumnResult#getName <em>Name</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getColumnResult() + * @model kind="class" + * @extends JpaEObject + * @generated + */ +public class ColumnResult extends AbstractJpaEObject implements JpaEObject +{ + /** + * The default value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected static final String NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected String name = NAME_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected ColumnResult() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.COLUMN_RESULT; + } + + /** + * Returns the value of the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Name</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Name</em>' attribute. + * @see #setName(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getColumnResult_Name() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" required="true" + * @generated + */ + public String getName() + { + return name; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.ColumnResult#getName <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Name</em>' attribute. + * @see #getName() + * @generated + */ + public void setName(String newName) + { + String oldName = name; + name = newName; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.COLUMN_RESULT__NAME, oldName, name)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case EclipseLinkOrmPackage.COLUMN_RESULT__NAME: + return getName(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case EclipseLinkOrmPackage.COLUMN_RESULT__NAME: + setName((String)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.COLUMN_RESULT__NAME: + setName(NAME_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.COLUMN_RESULT__NAME: + return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (name: "); + result.append(name); + result.append(')'); + return result.toString(); + } + +} // ColumnResult diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/DiscriminatorType.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/DiscriminatorType.java new file mode 100644 index 0000000000..50da58ac9f --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/DiscriminatorType.java @@ -0,0 +1,258 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +import org.eclipse.emf.common.util.Enumerator; + +/** + * <!-- begin-user-doc --> + * A representation of the literals of the enumeration '<em><b>Discriminator Type</b></em>', + * and utility methods for working with them. + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getDiscriminatorType() + * @model + * @generated + */ +public enum DiscriminatorType implements Enumerator +{ + /** + * The '<em><b>STRING</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #STRING_VALUE + * @generated + * @ordered + */ + STRING(0, "STRING", "STRING"), + + /** + * The '<em><b>CHAR</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #CHAR_VALUE + * @generated + * @ordered + */ + CHAR(1, "CHAR", "CHAR"), + + /** + * The '<em><b>INTEGER</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #INTEGER_VALUE + * @generated + * @ordered + */ + INTEGER(2, "INTEGER", "INTEGER"); + + /** + * The '<em><b>STRING</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>STRING</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #STRING + * @model + * @generated + * @ordered + */ + public static final int STRING_VALUE = 0; + + /** + * The '<em><b>CHAR</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>CHAR</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #CHAR + * @model + * @generated + * @ordered + */ + public static final int CHAR_VALUE = 1; + + /** + * The '<em><b>INTEGER</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>INTEGER</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #INTEGER + * @model + * @generated + * @ordered + */ + public static final int INTEGER_VALUE = 2; + + /** + * An array of all the '<em><b>Discriminator Type</b></em>' enumerators. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private static final DiscriminatorType[] VALUES_ARRAY = + new DiscriminatorType[] + { + STRING, + CHAR, + INTEGER, + }; + + /** + * A public read-only list of all the '<em><b>Discriminator Type</b></em>' enumerators. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final List<DiscriminatorType> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); + + /** + * Returns the '<em><b>Discriminator Type</b></em>' literal with the specified literal value. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static DiscriminatorType get(String literal) + { + for (int i = 0; i < VALUES_ARRAY.length; ++i) + { + DiscriminatorType result = VALUES_ARRAY[i]; + if (result.toString().equals(literal)) + { + return result; + } + } + return null; + } + + /** + * Returns the '<em><b>Discriminator Type</b></em>' literal with the specified name. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static DiscriminatorType getByName(String name) + { + for (int i = 0; i < VALUES_ARRAY.length; ++i) + { + DiscriminatorType result = VALUES_ARRAY[i]; + if (result.getName().equals(name)) + { + return result; + } + } + return null; + } + + /** + * Returns the '<em><b>Discriminator Type</b></em>' literal with the specified integer value. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static DiscriminatorType get(int value) + { + switch (value) + { + case STRING_VALUE: return STRING; + case CHAR_VALUE: return CHAR; + case INTEGER_VALUE: return INTEGER; + } + return null; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private final int value; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private final String name; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private final String literal; + + /** + * Only this class can construct instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private DiscriminatorType(int value, String name, String literal) + { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public int getValue() + { + return value; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getName() + { + return name; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getLiteral() + { + return literal; + } + + /** + * Returns the literal value of the enumerator, which is its string representation. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() + { + return literal; + } + +} //DiscriminatorType diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/EclipseLinkOrmArtifactEdit.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/EclipseLinkOrmArtifactEdit.java new file mode 100644 index 0000000000..e1232af596 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/EclipseLinkOrmArtifactEdit.java @@ -0,0 +1,100 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import java.io.IOException; +import org.eclipse.core.resources.IFile; +import org.eclipse.core.resources.IProject; +import org.eclipse.emf.common.util.URI; +import org.eclipse.jpt.core.resource.common.JpaArtifactEdit; +import org.eclipse.jpt.eclipselink.core.internal.JptEclipseLinkCorePlugin; + +/** + * Provisional API: This interface is part of an interim API that is still + * under development and expected to change significantly before reaching + * stability. It is available at this early stage to solicit feedback from + * pioneering adopters on the understanding that any code that uses this API + * will almost certainly be broken (repeatedly) as the API evolves. + */ +public class EclipseLinkOrmArtifactEdit extends JpaArtifactEdit +{ + /** + * @param aProject + * @return an eclipselink orm artifact for the project aProject. + * Opened only for read access (no write) + */ + public static EclipseLinkOrmArtifactEdit getArtifactEditForRead(IProject aProject) { + EclipseLinkOrmArtifactEdit artifactEdit = null; + try { + artifactEdit = new EclipseLinkOrmArtifactEdit(aProject, true); + } + catch (IllegalArgumentException iae) { + // suppress illegal argument exception + JptEclipseLinkCorePlugin.log(iae); + } + return artifactEdit; + } + + /** + * @param aProject + * @return an eclipselink orm artifact for the project aProject. + * Opened for both write and read access + */ + public static EclipseLinkOrmArtifactEdit getArtifactEditForWrite(IProject aProject) { + EclipseLinkOrmArtifactEdit artifactEdit = null; + try { + artifactEdit = new EclipseLinkOrmArtifactEdit(aProject, false); + } + catch (IllegalArgumentException iae) { + // suppress illegal argument exception + JptEclipseLinkCorePlugin.log(iae); + } + return artifactEdit; + } + + + public EclipseLinkOrmArtifactEdit(IProject aProject, boolean toAccessAsReadOnly) + throws IllegalArgumentException { + super(aProject, toAccessAsReadOnly); + } + + + @Override + public EclipseLinkOrmResource getResource(IFile file) { + // This *seems* to do the same basic thing as below, but circumvents the + // URI munging that ArtifactEditModel does (see bug 209093) + try { + EclipseLinkOrmResource resource = + (EclipseLinkOrmResource) getArtifactEditModel().createResource(URI.createPlatformResourceURI(file.getFullPath().toString())); + if (! resource.isLoaded()) { + resource.load(getArtifactEditModel().getResourceSet().getLoadOptions()); + } + return resource; + } + catch (ClassCastException cce) { + return null; + } + catch (IOException ioe) { + JptEclipseLinkCorePlugin.log(ioe); + return null; + } + } + + @Override + public EclipseLinkOrmResource getResource(String fileURI) { + try { + return (EclipseLinkOrmResource) getArtifactEditModel().getResource(URI.createURI(fileURI)); + } + catch (ClassCastException cce) { + return null; + } + } +} diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/EclipseLinkOrmFactory.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/EclipseLinkOrmFactory.java new file mode 100644 index 0000000000..ff15c194d0 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/EclipseLinkOrmFactory.java @@ -0,0 +1,1041 @@ +/** + * <copyright> + * </copyright> + * + * $Id: EclipseLinkOrmFactory.java,v 1.1 2008/08/11 00:27:47 pfullbright Exp $ + */ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.emf.common.util.Enumerator; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EDataType; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EPackage; + +import org.eclipse.emf.ecore.impl.EFactoryImpl; + +import org.eclipse.emf.ecore.plugin.EcorePlugin; + +/** + * <!-- begin-user-doc --> + * The <b>Factory</b> for the model. + * It provides a create method for each non-abstract class of the model. + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage + * @generated + */ +public class EclipseLinkOrmFactory extends EFactoryImpl +{ + /** + * The singleton instance of the factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EclipseLinkOrmFactory eINSTANCE = init(); + + /** + * Creates the default factory implementation. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static EclipseLinkOrmFactory init() + { + try + { + EclipseLinkOrmFactory theEclipseLinkOrmFactory = (EclipseLinkOrmFactory)EPackage.Registry.INSTANCE.getEFactory("jpt.elorm.xmi"); + if (theEclipseLinkOrmFactory != null) + { + return theEclipseLinkOrmFactory; + } + } + catch (Exception exception) + { + EcorePlugin.INSTANCE.log(exception); + } + return new EclipseLinkOrmFactory(); + } + + /** + * Creates an instance of the factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EclipseLinkOrmFactory() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EObject create(EClass eClass) + { + switch (eClass.getClassifierID()) + { + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS: return (EObject)createXmlEntityMappings(); + case EclipseLinkOrmPackage.XML_PERSISTENCE_UNIT_METADATA: return (EObject)createXmlPersistenceUnitMetadata(); + case EclipseLinkOrmPackage.XML_PERSISTENCE_UNIT_DEFAULTS: return (EObject)createXmlPersistenceUnitDefaults(); + case EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS: return (EObject)createXmlMappedSuperclass(); + case EclipseLinkOrmPackage.XML_ENTITY: return (EObject)createXmlEntity(); + case EclipseLinkOrmPackage.XML_EMBEDDABLE: return (EObject)createXmlEmbeddable(); + case EclipseLinkOrmPackage.ATTRIBUTES: return (EObject)createAttributes(); + case EclipseLinkOrmPackage.XML_ID_IMPL: return (EObject)createXmlIdImpl(); + case EclipseLinkOrmPackage.XML_EMBEDDED_ID_IMPL: return (EObject)createXmlEmbeddedIdImpl(); + case EclipseLinkOrmPackage.XML_EMBEDDED_IMPL: return (EObject)createXmlEmbeddedImpl(); + case EclipseLinkOrmPackage.XML_BASIC_IMPL: return (EObject)createXmlBasicImpl(); + case EclipseLinkOrmPackage.XML_VERSION_IMPL: return (EObject)createXmlVersionImpl(); + case EclipseLinkOrmPackage.XML_MANY_TO_ONE_IMPL: return (EObject)createXmlManyToOneImpl(); + case EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL: return (EObject)createXmlOneToManyImpl(); + case EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL: return (EObject)createXmlOneToOneImpl(); + case EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL: return (EObject)createXmlManyToManyImpl(); + case EclipseLinkOrmPackage.XML_TRANSIENT_IMPL: return (EObject)createXmlTransientImpl(); + case EclipseLinkOrmPackage.XML_ASSOCIATION_OVERRIDE_IMPL: return (EObject)createXmlAssociationOverrideImpl(); + case EclipseLinkOrmPackage.XML_ATTRIBUTE_OVERRIDE_IMPL: return (EObject)createXmlAttributeOverrideImpl(); + case EclipseLinkOrmPackage.CASCADE_TYPE_IMPL: return (EObject)createCascadeTypeImpl(); + case EclipseLinkOrmPackage.XML_COLUMN_IMPL: return (EObject)createXmlColumnImpl(); + case EclipseLinkOrmPackage.COLUMN_RESULT: return (EObject)createColumnResult(); + case EclipseLinkOrmPackage.XML_DISCRIMINATOR_COLUMN: return (EObject)createXmlDiscriminatorColumn(); + case EclipseLinkOrmPackage.ENTITY_LISTENERS: return (EObject)createEntityListeners(); + case EclipseLinkOrmPackage.ENTITY_LISTENER: return (EObject)createEntityListener(); + case EclipseLinkOrmPackage.ENTITY_RESULT: return (EObject)createEntityResult(); + case EclipseLinkOrmPackage.EVENT_METHOD: return (EObject)createEventMethod(); + case EclipseLinkOrmPackage.FIELD_RESULT: return (EObject)createFieldResult(); + case EclipseLinkOrmPackage.XML_GENERATED_VALUE_IMPL: return (EObject)createXmlGeneratedValueImpl(); + case EclipseLinkOrmPackage.XML_ID_CLASS: return (EObject)createXmlIdClass(); + case EclipseLinkOrmPackage.INHERITANCE: return (EObject)createInheritance(); + case EclipseLinkOrmPackage.XML_JOIN_COLUMN_IMPL: return (EObject)createXmlJoinColumnImpl(); + case EclipseLinkOrmPackage.XML_JOIN_TABLE_IMPL: return (EObject)createXmlJoinTableImpl(); + case EclipseLinkOrmPackage.LOB: return (EObject)createLob(); + case EclipseLinkOrmPackage.MAP_KEY_IMPL: return (EObject)createMapKeyImpl(); + case EclipseLinkOrmPackage.XML_NAMED_NATIVE_QUERY: return (EObject)createXmlNamedNativeQuery(); + case EclipseLinkOrmPackage.XML_NAMED_QUERY: return (EObject)createXmlNamedQuery(); + case EclipseLinkOrmPackage.POST_LOAD: return (EObject)createPostLoad(); + case EclipseLinkOrmPackage.POST_PERSIST: return (EObject)createPostPersist(); + case EclipseLinkOrmPackage.POST_REMOVE: return (EObject)createPostRemove(); + case EclipseLinkOrmPackage.POST_UPDATE: return (EObject)createPostUpdate(); + case EclipseLinkOrmPackage.PRE_PERSIST: return (EObject)createPrePersist(); + case EclipseLinkOrmPackage.PRE_REMOVE: return (EObject)createPreRemove(); + case EclipseLinkOrmPackage.PRE_UPDATE: return (EObject)createPreUpdate(); + case EclipseLinkOrmPackage.XML_PRIMARY_KEY_JOIN_COLUMN_IMPL: return (EObject)createXmlPrimaryKeyJoinColumnImpl(); + case EclipseLinkOrmPackage.XML_QUERY_HINT: return (EObject)createXmlQueryHint(); + case EclipseLinkOrmPackage.XML_TABLE: return (EObject)createXmlTable(); + case EclipseLinkOrmPackage.XML_SECONDARY_TABLE_IMPL: return (EObject)createXmlSecondaryTableImpl(); + case EclipseLinkOrmPackage.XML_SEQUENCE_GENERATOR_IMPL: return (EObject)createXmlSequenceGeneratorImpl(); + case EclipseLinkOrmPackage.SQL_RESULT_SET_MAPPING: return (EObject)createSqlResultSetMapping(); + case EclipseLinkOrmPackage.XML_TABLE_GENERATOR_IMPL: return (EObject)createXmlTableGeneratorImpl(); + case EclipseLinkOrmPackage.XML_UNIQUE_CONSTRAINT_IMPL: return (EObject)createXmlUniqueConstraintImpl(); + default: + throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); + } + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object createFromString(EDataType eDataType, String initialValue) + { + switch (eDataType.getClassifierID()) + { + case EclipseLinkOrmPackage.ACCESS_TYPE: + return createAccessTypeFromString(eDataType, initialValue); + case EclipseLinkOrmPackage.DISCRIMINATOR_TYPE: + return createDiscriminatorTypeFromString(eDataType, initialValue); + case EclipseLinkOrmPackage.ENUM_TYPE: + return createEnumTypeFromString(eDataType, initialValue); + case EclipseLinkOrmPackage.FETCH_TYPE: + return createFetchTypeFromString(eDataType, initialValue); + case EclipseLinkOrmPackage.GENERATION_TYPE: + return createGenerationTypeFromString(eDataType, initialValue); + case EclipseLinkOrmPackage.INHERITANCE_TYPE: + return createInheritanceTypeFromString(eDataType, initialValue); + case EclipseLinkOrmPackage.TEMPORAL_TYPE: + return createTemporalTypeFromString(eDataType, initialValue); + case EclipseLinkOrmPackage.DISCRIMINATOR_VALUE: + return createDiscriminatorValueFromString(eDataType, initialValue); + case EclipseLinkOrmPackage.ENUMERATED: + return createEnumeratedFromString(eDataType, initialValue); + case EclipseLinkOrmPackage.ORDER_BY: + return createOrderByFromString(eDataType, initialValue); + case EclipseLinkOrmPackage.VERSION_TYPE: + return createVersionTypeFromString(eDataType, initialValue); + default: + throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier"); + } + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String convertToString(EDataType eDataType, Object instanceValue) + { + switch (eDataType.getClassifierID()) + { + case EclipseLinkOrmPackage.ACCESS_TYPE: + return convertAccessTypeToString(eDataType, instanceValue); + case EclipseLinkOrmPackage.DISCRIMINATOR_TYPE: + return convertDiscriminatorTypeToString(eDataType, instanceValue); + case EclipseLinkOrmPackage.ENUM_TYPE: + return convertEnumTypeToString(eDataType, instanceValue); + case EclipseLinkOrmPackage.FETCH_TYPE: + return convertFetchTypeToString(eDataType, instanceValue); + case EclipseLinkOrmPackage.GENERATION_TYPE: + return convertGenerationTypeToString(eDataType, instanceValue); + case EclipseLinkOrmPackage.INHERITANCE_TYPE: + return convertInheritanceTypeToString(eDataType, instanceValue); + case EclipseLinkOrmPackage.TEMPORAL_TYPE: + return convertTemporalTypeToString(eDataType, instanceValue); + case EclipseLinkOrmPackage.DISCRIMINATOR_VALUE: + return convertDiscriminatorValueToString(eDataType, instanceValue); + case EclipseLinkOrmPackage.ENUMERATED: + return convertEnumeratedToString(eDataType, instanceValue); + case EclipseLinkOrmPackage.ORDER_BY: + return convertOrderByToString(eDataType, instanceValue); + case EclipseLinkOrmPackage.VERSION_TYPE: + return convertVersionTypeToString(eDataType, instanceValue); + default: + throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier"); + } + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public XmlEntityMappings createXmlEntityMappings() + { + XmlEntityMappings xmlEntityMappings = new XmlEntityMappings(); + return xmlEntityMappings; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public XmlPersistenceUnitMetadata createXmlPersistenceUnitMetadata() + { + XmlPersistenceUnitMetadata xmlPersistenceUnitMetadata = new XmlPersistenceUnitMetadata(); + return xmlPersistenceUnitMetadata; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public XmlPersistenceUnitDefaults createXmlPersistenceUnitDefaults() + { + XmlPersistenceUnitDefaults xmlPersistenceUnitDefaults = new XmlPersistenceUnitDefaults(); + return xmlPersistenceUnitDefaults; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public XmlMappedSuperclass createXmlMappedSuperclass() + { + XmlMappedSuperclass xmlMappedSuperclass = new XmlMappedSuperclass(); + return xmlMappedSuperclass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public XmlEntity createXmlEntity() + { + XmlEntity xmlEntity = new XmlEntity(); + return xmlEntity; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public XmlEmbeddable createXmlEmbeddable() + { + XmlEmbeddable xmlEmbeddable = new XmlEmbeddable(); + return xmlEmbeddable; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Attributes createAttributes() + { + Attributes attributes = new Attributes(); + return attributes; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public XmlIdImpl createXmlIdImpl() + { + XmlIdImpl xmlIdImpl = new XmlIdImpl(); + return xmlIdImpl; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public XmlEmbeddedIdImpl createXmlEmbeddedIdImpl() + { + XmlEmbeddedIdImpl xmlEmbeddedIdImpl = new XmlEmbeddedIdImpl(); + return xmlEmbeddedIdImpl; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public XmlEmbeddedImpl createXmlEmbeddedImpl() + { + XmlEmbeddedImpl xmlEmbeddedImpl = new XmlEmbeddedImpl(); + return xmlEmbeddedImpl; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public XmlBasicImpl createXmlBasicImpl() + { + XmlBasicImpl xmlBasicImpl = new XmlBasicImpl(); + return xmlBasicImpl; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public XmlVersionImpl createXmlVersionImpl() + { + XmlVersionImpl xmlVersionImpl = new XmlVersionImpl(); + return xmlVersionImpl; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public XmlManyToOneImpl createXmlManyToOneImpl() + { + XmlManyToOneImpl xmlManyToOneImpl = new XmlManyToOneImpl(); + return xmlManyToOneImpl; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public XmlOneToManyImpl createXmlOneToManyImpl() + { + XmlOneToManyImpl xmlOneToManyImpl = new XmlOneToManyImpl(); + return xmlOneToManyImpl; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public XmlOneToOneImpl createXmlOneToOneImpl() + { + XmlOneToOneImpl xmlOneToOneImpl = new XmlOneToOneImpl(); + return xmlOneToOneImpl; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public XmlManyToManyImpl createXmlManyToManyImpl() + { + XmlManyToManyImpl xmlManyToManyImpl = new XmlManyToManyImpl(); + return xmlManyToManyImpl; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public XmlTransientImpl createXmlTransientImpl() + { + XmlTransientImpl xmlTransientImpl = new XmlTransientImpl(); + return xmlTransientImpl; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public XmlAssociationOverrideImpl createXmlAssociationOverrideImpl() + { + XmlAssociationOverrideImpl xmlAssociationOverrideImpl = new XmlAssociationOverrideImpl(); + return xmlAssociationOverrideImpl; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public XmlAttributeOverrideImpl createXmlAttributeOverrideImpl() + { + XmlAttributeOverrideImpl xmlAttributeOverrideImpl = new XmlAttributeOverrideImpl(); + return xmlAttributeOverrideImpl; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public CascadeTypeImpl createCascadeTypeImpl() + { + CascadeTypeImpl cascadeTypeImpl = new CascadeTypeImpl(); + return cascadeTypeImpl; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public XmlColumnImpl createXmlColumnImpl() + { + XmlColumnImpl xmlColumnImpl = new XmlColumnImpl(); + return xmlColumnImpl; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public ColumnResult createColumnResult() + { + ColumnResult columnResult = new ColumnResult(); + return columnResult; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public XmlDiscriminatorColumn createXmlDiscriminatorColumn() + { + XmlDiscriminatorColumn xmlDiscriminatorColumn = new XmlDiscriminatorColumn(); + return xmlDiscriminatorColumn; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EntityListeners createEntityListeners() + { + EntityListeners entityListeners = new EntityListeners(); + return entityListeners; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EntityListener createEntityListener() + { + EntityListener entityListener = new EntityListener(); + return entityListener; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EntityResult createEntityResult() + { + EntityResult entityResult = new EntityResult(); + return entityResult; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EventMethod createEventMethod() + { + EventMethod eventMethod = new EventMethod(); + return eventMethod; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public FieldResult createFieldResult() + { + FieldResult fieldResult = new FieldResult(); + return fieldResult; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public XmlGeneratedValueImpl createXmlGeneratedValueImpl() + { + XmlGeneratedValueImpl xmlGeneratedValueImpl = new XmlGeneratedValueImpl(); + return xmlGeneratedValueImpl; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public XmlIdClass createXmlIdClass() + { + XmlIdClass xmlIdClass = new XmlIdClass(); + return xmlIdClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Inheritance createInheritance() + { + Inheritance inheritance = new Inheritance(); + return inheritance; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public XmlJoinColumnImpl createXmlJoinColumnImpl() + { + XmlJoinColumnImpl xmlJoinColumnImpl = new XmlJoinColumnImpl(); + return xmlJoinColumnImpl; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public XmlJoinTableImpl createXmlJoinTableImpl() + { + XmlJoinTableImpl xmlJoinTableImpl = new XmlJoinTableImpl(); + return xmlJoinTableImpl; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Lob createLob() + { + Lob lob = new Lob(); + return lob; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public MapKeyImpl createMapKeyImpl() + { + MapKeyImpl mapKeyImpl = new MapKeyImpl(); + return mapKeyImpl; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public XmlNamedNativeQuery createXmlNamedNativeQuery() + { + XmlNamedNativeQuery xmlNamedNativeQuery = new XmlNamedNativeQuery(); + return xmlNamedNativeQuery; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public XmlNamedQuery createXmlNamedQuery() + { + XmlNamedQuery xmlNamedQuery = new XmlNamedQuery(); + return xmlNamedQuery; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public PostLoad createPostLoad() + { + PostLoad postLoad = new PostLoad(); + return postLoad; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public PostPersist createPostPersist() + { + PostPersist postPersist = new PostPersist(); + return postPersist; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public PostRemove createPostRemove() + { + PostRemove postRemove = new PostRemove(); + return postRemove; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public PostUpdate createPostUpdate() + { + PostUpdate postUpdate = new PostUpdate(); + return postUpdate; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public PrePersist createPrePersist() + { + PrePersist prePersist = new PrePersist(); + return prePersist; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public PreRemove createPreRemove() + { + PreRemove preRemove = new PreRemove(); + return preRemove; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public PreUpdate createPreUpdate() + { + PreUpdate preUpdate = new PreUpdate(); + return preUpdate; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public XmlPrimaryKeyJoinColumnImpl createXmlPrimaryKeyJoinColumnImpl() + { + XmlPrimaryKeyJoinColumnImpl xmlPrimaryKeyJoinColumnImpl = new XmlPrimaryKeyJoinColumnImpl(); + return xmlPrimaryKeyJoinColumnImpl; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public XmlQueryHint createXmlQueryHint() + { + XmlQueryHint xmlQueryHint = new XmlQueryHint(); + return xmlQueryHint; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public XmlTable createXmlTable() + { + XmlTable xmlTable = new XmlTable(); + return xmlTable; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public XmlSecondaryTableImpl createXmlSecondaryTableImpl() + { + XmlSecondaryTableImpl xmlSecondaryTableImpl = new XmlSecondaryTableImpl(); + return xmlSecondaryTableImpl; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public XmlSequenceGeneratorImpl createXmlSequenceGeneratorImpl() + { + XmlSequenceGeneratorImpl xmlSequenceGeneratorImpl = new XmlSequenceGeneratorImpl(); + return xmlSequenceGeneratorImpl; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public SqlResultSetMapping createSqlResultSetMapping() + { + SqlResultSetMapping sqlResultSetMapping = new SqlResultSetMapping(); + return sqlResultSetMapping; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public XmlTableGeneratorImpl createXmlTableGeneratorImpl() + { + XmlTableGeneratorImpl xmlTableGeneratorImpl = new XmlTableGeneratorImpl(); + return xmlTableGeneratorImpl; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public XmlUniqueConstraintImpl createXmlUniqueConstraintImpl() + { + XmlUniqueConstraintImpl xmlUniqueConstraintImpl = new XmlUniqueConstraintImpl(); + return xmlUniqueConstraintImpl; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public AccessType createAccessTypeFromString(EDataType eDataType, String initialValue) + { + AccessType result = AccessType.get(initialValue); + if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); + return result; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String convertAccessTypeToString(EDataType eDataType, Object instanceValue) + { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public DiscriminatorType createDiscriminatorTypeFromString(EDataType eDataType, String initialValue) + { + DiscriminatorType result = DiscriminatorType.get(initialValue); + if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); + return result; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String convertDiscriminatorTypeToString(EDataType eDataType, Object instanceValue) + { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EnumType createEnumTypeFromString(EDataType eDataType, String initialValue) + { + EnumType result = EnumType.get(initialValue); + if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); + return result; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String convertEnumTypeToString(EDataType eDataType, Object instanceValue) + { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public FetchType createFetchTypeFromString(EDataType eDataType, String initialValue) + { + FetchType result = FetchType.get(initialValue); + if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); + return result; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String convertFetchTypeToString(EDataType eDataType, Object instanceValue) + { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public GenerationType createGenerationTypeFromString(EDataType eDataType, String initialValue) + { + GenerationType result = GenerationType.get(initialValue); + if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); + return result; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String convertGenerationTypeToString(EDataType eDataType, Object instanceValue) + { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public InheritanceType createInheritanceTypeFromString(EDataType eDataType, String initialValue) + { + InheritanceType result = InheritanceType.get(initialValue); + if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); + return result; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String convertInheritanceTypeToString(EDataType eDataType, Object instanceValue) + { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TemporalType createTemporalTypeFromString(EDataType eDataType, String initialValue) + { + TemporalType result = TemporalType.get(initialValue); + if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); + return result; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String convertTemporalTypeToString(EDataType eDataType, Object instanceValue) + { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String createDiscriminatorValueFromString(EDataType eDataType, String initialValue) + { + return (String)super.createFromString(eDataType, initialValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String convertDiscriminatorValueToString(EDataType eDataType, Object instanceValue) + { + return super.convertToString(eDataType, instanceValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Enumerator createEnumeratedFromString(EDataType eDataType, String initialValue) + { + return (Enumerator)super.createFromString(eDataType, initialValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String convertEnumeratedToString(EDataType eDataType, Object instanceValue) + { + return super.convertToString(eDataType, instanceValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String createOrderByFromString(EDataType eDataType, String initialValue) + { + return (String)super.createFromString(eDataType, initialValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String convertOrderByToString(EDataType eDataType, Object instanceValue) + { + return super.convertToString(eDataType, instanceValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String createVersionTypeFromString(EDataType eDataType, String initialValue) + { + return (String)super.createFromString(eDataType, initialValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String convertVersionTypeToString(EDataType eDataType, Object instanceValue) + { + return super.convertToString(eDataType, instanceValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EclipseLinkOrmPackage getEclipseLinkOrmPackage() + { + return (EclipseLinkOrmPackage)getEPackage(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @deprecated + * @generated + */ + @Deprecated + public static EclipseLinkOrmPackage getPackage() + { + return EclipseLinkOrmPackage.eINSTANCE; + } + +} //EclipseLinkOrmFactory diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/EclipseLinkOrmPackage.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/EclipseLinkOrmPackage.java new file mode 100644 index 0000000000..b52430a580 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/EclipseLinkOrmPackage.java @@ -0,0 +1,13559 @@ +/** + * <copyright> + * </copyright> + * + * $Id: EclipseLinkOrmPackage.java,v 1.1 2008/08/11 00:27:47 pfullbright Exp $ + */ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.emf.common.util.Enumerator; + +import org.eclipse.emf.ecore.EAttribute; +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EDataType; +import org.eclipse.emf.ecore.EEnum; +import org.eclipse.emf.ecore.EPackage; +import org.eclipse.emf.ecore.EReference; +import org.eclipse.emf.ecore.EcorePackage; + +import org.eclipse.emf.ecore.impl.EPackageImpl; + +import org.eclipse.emf.ecore.xml.type.XMLTypePackage; + +/** + * <!-- begin-user-doc --> + * The <b>Package</b> for the model. + * It contains accessors for the meta objects to represent + * <ul> + * <li>each class,</li> + * <li>each feature of each class,</li> + * <li>each enum,</li> + * <li>and each data type</li> + * </ul> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmFactory + * @model kind="package" + * @generated + */ +public class EclipseLinkOrmPackage extends EPackageImpl +{ + /** + * The package name. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final String eNAME = "elorm"; + + /** + * The package namespace URI. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final String eNS_URI = "jpt.elorm.xmi"; + + /** + * The package namespace name. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final String eNS_PREFIX = "org.eclipse.jpt.eclipselink.core.resource.elorm"; + + /** + * The singleton instance of the package. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EclipseLinkOrmPackage eINSTANCE = org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage.init(); + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings <em>Xml Entity Mappings</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEntityMappings() + * @generated + */ + public static final int XML_ENTITY_MAPPINGS = 0; + + /** + * The feature id for the '<em><b>Version</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ENTITY_MAPPINGS__VERSION = 0; + + /** + * The feature id for the '<em><b>Description</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ENTITY_MAPPINGS__DESCRIPTION = 1; + + /** + * The feature id for the '<em><b>Persistence Unit Metadata</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ENTITY_MAPPINGS__PERSISTENCE_UNIT_METADATA = 2; + + /** + * The feature id for the '<em><b>Package</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ENTITY_MAPPINGS__PACKAGE = 3; + + /** + * The feature id for the '<em><b>Schema</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ENTITY_MAPPINGS__SCHEMA = 4; + + /** + * The feature id for the '<em><b>Catalog</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ENTITY_MAPPINGS__CATALOG = 5; + + /** + * The feature id for the '<em><b>Access</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ENTITY_MAPPINGS__ACCESS = 6; + + /** + * The feature id for the '<em><b>Sequence Generators</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ENTITY_MAPPINGS__SEQUENCE_GENERATORS = 7; + + /** + * The feature id for the '<em><b>Table Generators</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ENTITY_MAPPINGS__TABLE_GENERATORS = 8; + + /** + * The feature id for the '<em><b>Named Queries</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ENTITY_MAPPINGS__NAMED_QUERIES = 9; + + /** + * The feature id for the '<em><b>Named Native Queries</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ENTITY_MAPPINGS__NAMED_NATIVE_QUERIES = 10; + + /** + * The feature id for the '<em><b>Sql Result Set Mappings</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ENTITY_MAPPINGS__SQL_RESULT_SET_MAPPINGS = 11; + + /** + * The feature id for the '<em><b>Mapped Superclasses</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ENTITY_MAPPINGS__MAPPED_SUPERCLASSES = 12; + + /** + * The feature id for the '<em><b>Entities</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ENTITY_MAPPINGS__ENTITIES = 13; + + /** + * The feature id for the '<em><b>Embeddables</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ENTITY_MAPPINGS__EMBEDDABLES = 14; + + /** + * The number of structural features of the '<em>Xml Entity Mappings</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ENTITY_MAPPINGS_FEATURE_COUNT = 15; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPersistenceUnitMetadata <em>Xml Persistence Unit Metadata</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPersistenceUnitMetadata + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlPersistenceUnitMetadata() + * @generated + */ + public static final int XML_PERSISTENCE_UNIT_METADATA = 1; + + /** + * The feature id for the '<em><b>Xml Mapping Metadata Complete</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_PERSISTENCE_UNIT_METADATA__XML_MAPPING_METADATA_COMPLETE = 0; + + /** + * The feature id for the '<em><b>Persistence Unit Defaults</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_PERSISTENCE_UNIT_METADATA__PERSISTENCE_UNIT_DEFAULTS = 1; + + /** + * The number of structural features of the '<em>Xml Persistence Unit Metadata</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_PERSISTENCE_UNIT_METADATA_FEATURE_COUNT = 2; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPersistenceUnitDefaults <em>Xml Persistence Unit Defaults</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPersistenceUnitDefaults + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlPersistenceUnitDefaults() + * @generated + */ + public static final int XML_PERSISTENCE_UNIT_DEFAULTS = 2; + + /** + * The feature id for the '<em><b>Schema</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_PERSISTENCE_UNIT_DEFAULTS__SCHEMA = 0; + + /** + * The feature id for the '<em><b>Catalog</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_PERSISTENCE_UNIT_DEFAULTS__CATALOG = 1; + + /** + * The feature id for the '<em><b>Access</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_PERSISTENCE_UNIT_DEFAULTS__ACCESS = 2; + + /** + * The feature id for the '<em><b>Cascade Persist</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_PERSISTENCE_UNIT_DEFAULTS__CASCADE_PERSIST = 3; + + /** + * The feature id for the '<em><b>Entity Listeners</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_PERSISTENCE_UNIT_DEFAULTS__ENTITY_LISTENERS = 4; + + /** + * The number of structural features of the '<em>Xml Persistence Unit Defaults</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_PERSISTENCE_UNIT_DEFAULTS_FEATURE_COUNT = 5; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlTypeMapping <em>Abstract Xml Type Mapping</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlTypeMapping + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getAbstractXmlTypeMapping() + * @generated + */ + public static final int ABSTRACT_XML_TYPE_MAPPING = 3; + + /** + * The feature id for the '<em><b>Class Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int ABSTRACT_XML_TYPE_MAPPING__CLASS_NAME = 0; + + /** + * The feature id for the '<em><b>Access</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int ABSTRACT_XML_TYPE_MAPPING__ACCESS = 1; + + /** + * The feature id for the '<em><b>Metadata Complete</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int ABSTRACT_XML_TYPE_MAPPING__METADATA_COMPLETE = 2; + + /** + * The feature id for the '<em><b>Description</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int ABSTRACT_XML_TYPE_MAPPING__DESCRIPTION = 3; + + /** + * The feature id for the '<em><b>Attributes</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int ABSTRACT_XML_TYPE_MAPPING__ATTRIBUTES = 4; + + /** + * The number of structural features of the '<em>Abstract Xml Type Mapping</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int ABSTRACT_XML_TYPE_MAPPING_FEATURE_COUNT = 5; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMappedSuperclass <em>Xml Mapped Superclass</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMappedSuperclass + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlMappedSuperclass() + * @generated + */ + public static final int XML_MAPPED_SUPERCLASS = 4; + + /** + * The feature id for the '<em><b>Class Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MAPPED_SUPERCLASS__CLASS_NAME = ABSTRACT_XML_TYPE_MAPPING__CLASS_NAME; + + /** + * The feature id for the '<em><b>Access</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MAPPED_SUPERCLASS__ACCESS = ABSTRACT_XML_TYPE_MAPPING__ACCESS; + + /** + * The feature id for the '<em><b>Metadata Complete</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MAPPED_SUPERCLASS__METADATA_COMPLETE = ABSTRACT_XML_TYPE_MAPPING__METADATA_COMPLETE; + + /** + * The feature id for the '<em><b>Description</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MAPPED_SUPERCLASS__DESCRIPTION = ABSTRACT_XML_TYPE_MAPPING__DESCRIPTION; + + /** + * The feature id for the '<em><b>Attributes</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MAPPED_SUPERCLASS__ATTRIBUTES = ABSTRACT_XML_TYPE_MAPPING__ATTRIBUTES; + + /** + * The feature id for the '<em><b>Id Class</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MAPPED_SUPERCLASS__ID_CLASS = ABSTRACT_XML_TYPE_MAPPING_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Exclude Default Listeners</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MAPPED_SUPERCLASS__EXCLUDE_DEFAULT_LISTENERS = ABSTRACT_XML_TYPE_MAPPING_FEATURE_COUNT + 1; + + /** + * The feature id for the '<em><b>Exclude Superclass Listeners</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MAPPED_SUPERCLASS__EXCLUDE_SUPERCLASS_LISTENERS = ABSTRACT_XML_TYPE_MAPPING_FEATURE_COUNT + 2; + + /** + * The feature id for the '<em><b>Entity Listeners</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MAPPED_SUPERCLASS__ENTITY_LISTENERS = ABSTRACT_XML_TYPE_MAPPING_FEATURE_COUNT + 3; + + /** + * The feature id for the '<em><b>Pre Persist</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MAPPED_SUPERCLASS__PRE_PERSIST = ABSTRACT_XML_TYPE_MAPPING_FEATURE_COUNT + 4; + + /** + * The feature id for the '<em><b>Post Persist</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MAPPED_SUPERCLASS__POST_PERSIST = ABSTRACT_XML_TYPE_MAPPING_FEATURE_COUNT + 5; + + /** + * The feature id for the '<em><b>Pre Remove</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MAPPED_SUPERCLASS__PRE_REMOVE = ABSTRACT_XML_TYPE_MAPPING_FEATURE_COUNT + 6; + + /** + * The feature id for the '<em><b>Post Remove</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MAPPED_SUPERCLASS__POST_REMOVE = ABSTRACT_XML_TYPE_MAPPING_FEATURE_COUNT + 7; + + /** + * The feature id for the '<em><b>Pre Update</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MAPPED_SUPERCLASS__PRE_UPDATE = ABSTRACT_XML_TYPE_MAPPING_FEATURE_COUNT + 8; + + /** + * The feature id for the '<em><b>Post Update</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MAPPED_SUPERCLASS__POST_UPDATE = ABSTRACT_XML_TYPE_MAPPING_FEATURE_COUNT + 9; + + /** + * The feature id for the '<em><b>Post Load</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MAPPED_SUPERCLASS__POST_LOAD = ABSTRACT_XML_TYPE_MAPPING_FEATURE_COUNT + 10; + + /** + * The number of structural features of the '<em>Xml Mapped Superclass</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MAPPED_SUPERCLASS_FEATURE_COUNT = ABSTRACT_XML_TYPE_MAPPING_FEATURE_COUNT + 11; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity <em>Xml Entity</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEntity() + * @generated + */ + public static final int XML_ENTITY = 5; + + /** + * The feature id for the '<em><b>Class Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ENTITY__CLASS_NAME = ABSTRACT_XML_TYPE_MAPPING__CLASS_NAME; + + /** + * The feature id for the '<em><b>Access</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ENTITY__ACCESS = ABSTRACT_XML_TYPE_MAPPING__ACCESS; + + /** + * The feature id for the '<em><b>Metadata Complete</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ENTITY__METADATA_COMPLETE = ABSTRACT_XML_TYPE_MAPPING__METADATA_COMPLETE; + + /** + * The feature id for the '<em><b>Description</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ENTITY__DESCRIPTION = ABSTRACT_XML_TYPE_MAPPING__DESCRIPTION; + + /** + * The feature id for the '<em><b>Attributes</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ENTITY__ATTRIBUTES = ABSTRACT_XML_TYPE_MAPPING__ATTRIBUTES; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ENTITY__NAME = ABSTRACT_XML_TYPE_MAPPING_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Table</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ENTITY__TABLE = ABSTRACT_XML_TYPE_MAPPING_FEATURE_COUNT + 1; + + /** + * The feature id for the '<em><b>Secondary Tables</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ENTITY__SECONDARY_TABLES = ABSTRACT_XML_TYPE_MAPPING_FEATURE_COUNT + 2; + + /** + * The feature id for the '<em><b>Primary Key Join Columns</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ENTITY__PRIMARY_KEY_JOIN_COLUMNS = ABSTRACT_XML_TYPE_MAPPING_FEATURE_COUNT + 3; + + /** + * The feature id for the '<em><b>Id Class</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ENTITY__ID_CLASS = ABSTRACT_XML_TYPE_MAPPING_FEATURE_COUNT + 4; + + /** + * The feature id for the '<em><b>Inheritance</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ENTITY__INHERITANCE = ABSTRACT_XML_TYPE_MAPPING_FEATURE_COUNT + 5; + + /** + * The feature id for the '<em><b>Discriminator Value</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ENTITY__DISCRIMINATOR_VALUE = ABSTRACT_XML_TYPE_MAPPING_FEATURE_COUNT + 6; + + /** + * The feature id for the '<em><b>Discriminator Column</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ENTITY__DISCRIMINATOR_COLUMN = ABSTRACT_XML_TYPE_MAPPING_FEATURE_COUNT + 7; + + /** + * The feature id for the '<em><b>Sequence Generator</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ENTITY__SEQUENCE_GENERATOR = ABSTRACT_XML_TYPE_MAPPING_FEATURE_COUNT + 8; + + /** + * The feature id for the '<em><b>Table Generator</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ENTITY__TABLE_GENERATOR = ABSTRACT_XML_TYPE_MAPPING_FEATURE_COUNT + 9; + + /** + * The feature id for the '<em><b>Named Queries</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ENTITY__NAMED_QUERIES = ABSTRACT_XML_TYPE_MAPPING_FEATURE_COUNT + 10; + + /** + * The feature id for the '<em><b>Named Native Queries</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ENTITY__NAMED_NATIVE_QUERIES = ABSTRACT_XML_TYPE_MAPPING_FEATURE_COUNT + 11; + + /** + * The feature id for the '<em><b>Sql Result Set Mappings</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ENTITY__SQL_RESULT_SET_MAPPINGS = ABSTRACT_XML_TYPE_MAPPING_FEATURE_COUNT + 12; + + /** + * The feature id for the '<em><b>Exclude Default Listeners</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ENTITY__EXCLUDE_DEFAULT_LISTENERS = ABSTRACT_XML_TYPE_MAPPING_FEATURE_COUNT + 13; + + /** + * The feature id for the '<em><b>Exclude Superclass Listeners</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ENTITY__EXCLUDE_SUPERCLASS_LISTENERS = ABSTRACT_XML_TYPE_MAPPING_FEATURE_COUNT + 14; + + /** + * The feature id for the '<em><b>Entity Listeners</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ENTITY__ENTITY_LISTENERS = ABSTRACT_XML_TYPE_MAPPING_FEATURE_COUNT + 15; + + /** + * The feature id for the '<em><b>Pre Persist</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ENTITY__PRE_PERSIST = ABSTRACT_XML_TYPE_MAPPING_FEATURE_COUNT + 16; + + /** + * The feature id for the '<em><b>Post Persist</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ENTITY__POST_PERSIST = ABSTRACT_XML_TYPE_MAPPING_FEATURE_COUNT + 17; + + /** + * The feature id for the '<em><b>Pre Remove</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ENTITY__PRE_REMOVE = ABSTRACT_XML_TYPE_MAPPING_FEATURE_COUNT + 18; + + /** + * The feature id for the '<em><b>Post Remove</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ENTITY__POST_REMOVE = ABSTRACT_XML_TYPE_MAPPING_FEATURE_COUNT + 19; + + /** + * The feature id for the '<em><b>Pre Update</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ENTITY__PRE_UPDATE = ABSTRACT_XML_TYPE_MAPPING_FEATURE_COUNT + 20; + + /** + * The feature id for the '<em><b>Post Update</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ENTITY__POST_UPDATE = ABSTRACT_XML_TYPE_MAPPING_FEATURE_COUNT + 21; + + /** + * The feature id for the '<em><b>Post Load</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ENTITY__POST_LOAD = ABSTRACT_XML_TYPE_MAPPING_FEATURE_COUNT + 22; + + /** + * The feature id for the '<em><b>Attribute Overrides</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ENTITY__ATTRIBUTE_OVERRIDES = ABSTRACT_XML_TYPE_MAPPING_FEATURE_COUNT + 23; + + /** + * The feature id for the '<em><b>Association Overrides</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ENTITY__ASSOCIATION_OVERRIDES = ABSTRACT_XML_TYPE_MAPPING_FEATURE_COUNT + 24; + + /** + * The number of structural features of the '<em>Xml Entity</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ENTITY_FEATURE_COUNT = ABSTRACT_XML_TYPE_MAPPING_FEATURE_COUNT + 25; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEmbeddable <em>Xml Embeddable</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEmbeddable + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEmbeddable() + * @generated + */ + public static final int XML_EMBEDDABLE = 6; + + /** + * The feature id for the '<em><b>Class Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_EMBEDDABLE__CLASS_NAME = ABSTRACT_XML_TYPE_MAPPING__CLASS_NAME; + + /** + * The feature id for the '<em><b>Access</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_EMBEDDABLE__ACCESS = ABSTRACT_XML_TYPE_MAPPING__ACCESS; + + /** + * The feature id for the '<em><b>Metadata Complete</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_EMBEDDABLE__METADATA_COMPLETE = ABSTRACT_XML_TYPE_MAPPING__METADATA_COMPLETE; + + /** + * The feature id for the '<em><b>Description</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_EMBEDDABLE__DESCRIPTION = ABSTRACT_XML_TYPE_MAPPING__DESCRIPTION; + + /** + * The feature id for the '<em><b>Attributes</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_EMBEDDABLE__ATTRIBUTES = ABSTRACT_XML_TYPE_MAPPING__ATTRIBUTES; + + /** + * The number of structural features of the '<em>Xml Embeddable</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_EMBEDDABLE_FEATURE_COUNT = ABSTRACT_XML_TYPE_MAPPING_FEATURE_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.Attributes <em>Attributes</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.Attributes + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getAttributes() + * @generated + */ + public static final int ATTRIBUTES = 7; + + /** + * The feature id for the '<em><b>Ids</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int ATTRIBUTES__IDS = 0; + + /** + * The feature id for the '<em><b>Embedded Ids</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int ATTRIBUTES__EMBEDDED_IDS = 1; + + /** + * The feature id for the '<em><b>Basics</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int ATTRIBUTES__BASICS = 2; + + /** + * The feature id for the '<em><b>Versions</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int ATTRIBUTES__VERSIONS = 3; + + /** + * The feature id for the '<em><b>Many To Ones</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int ATTRIBUTES__MANY_TO_ONES = 4; + + /** + * The feature id for the '<em><b>One To Manys</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int ATTRIBUTES__ONE_TO_MANYS = 5; + + /** + * The feature id for the '<em><b>One To Ones</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int ATTRIBUTES__ONE_TO_ONES = 6; + + /** + * The feature id for the '<em><b>Many To Manys</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int ATTRIBUTES__MANY_TO_MANYS = 7; + + /** + * The feature id for the '<em><b>Embeddeds</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int ATTRIBUTES__EMBEDDEDS = 8; + + /** + * The feature id for the '<em><b>Transients</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int ATTRIBUTES__TRANSIENTS = 9; + + /** + * The number of structural features of the '<em>Attributes</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int ATTRIBUTES_FEATURE_COUNT = 10; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAttributeMapping <em>Xml Attribute Mapping</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAttributeMapping + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlAttributeMapping() + * @generated + */ + public static final int XML_ATTRIBUTE_MAPPING = 8; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ATTRIBUTE_MAPPING__NAME = 0; + + /** + * The number of structural features of the '<em>Xml Attribute Mapping</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ATTRIBUTE_MAPPING_FEATURE_COUNT = 1; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlAttributeMapping <em>Abstract Xml Attribute Mapping</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlAttributeMapping + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getAbstractXmlAttributeMapping() + * @generated + */ + public static final int ABSTRACT_XML_ATTRIBUTE_MAPPING = 9; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int ABSTRACT_XML_ATTRIBUTE_MAPPING__NAME = XML_ATTRIBUTE_MAPPING__NAME; + + /** + * The number of structural features of the '<em>Abstract Xml Attribute Mapping</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT = XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlNullAttributeMapping <em>Xml Null Attribute Mapping</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlNullAttributeMapping + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlNullAttributeMapping() + * @generated + */ + public static final int XML_NULL_ATTRIBUTE_MAPPING = 10; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_NULL_ATTRIBUTE_MAPPING__NAME = XML_ATTRIBUTE_MAPPING__NAME; + + /** + * The number of structural features of the '<em>Xml Null Attribute Mapping</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_NULL_ATTRIBUTE_MAPPING_FEATURE_COUNT = XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.ColumnMapping <em>Column Mapping</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.ColumnMapping + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getColumnMapping() + * @generated + */ + public static final int COLUMN_MAPPING = 11; + + /** + * The feature id for the '<em><b>Column</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int COLUMN_MAPPING__COLUMN = 0; + + /** + * The number of structural features of the '<em>Column Mapping</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int COLUMN_MAPPING_FEATURE_COUNT = 1; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlRelationshipMapping <em>Xml Relationship Mapping</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlRelationshipMapping + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlRelationshipMapping() + * @generated + */ + public static final int XML_RELATIONSHIP_MAPPING = 12; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_RELATIONSHIP_MAPPING__NAME = XML_ATTRIBUTE_MAPPING__NAME; + + /** + * The feature id for the '<em><b>Target Entity</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_RELATIONSHIP_MAPPING__TARGET_ENTITY = XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Fetch</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_RELATIONSHIP_MAPPING__FETCH = XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 1; + + /** + * The feature id for the '<em><b>Join Table</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_RELATIONSHIP_MAPPING__JOIN_TABLE = XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 2; + + /** + * The feature id for the '<em><b>Cascade</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_RELATIONSHIP_MAPPING__CASCADE = XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 3; + + /** + * The number of structural features of the '<em>Xml Relationship Mapping</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_RELATIONSHIP_MAPPING_FEATURE_COUNT = XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 4; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMultiRelationshipMapping <em>Xml Multi Relationship Mapping</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMultiRelationshipMapping + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlMultiRelationshipMapping() + * @generated + */ + public static final int XML_MULTI_RELATIONSHIP_MAPPING = 13; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MULTI_RELATIONSHIP_MAPPING__NAME = XML_RELATIONSHIP_MAPPING__NAME; + + /** + * The feature id for the '<em><b>Target Entity</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MULTI_RELATIONSHIP_MAPPING__TARGET_ENTITY = XML_RELATIONSHIP_MAPPING__TARGET_ENTITY; + + /** + * The feature id for the '<em><b>Fetch</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MULTI_RELATIONSHIP_MAPPING__FETCH = XML_RELATIONSHIP_MAPPING__FETCH; + + /** + * The feature id for the '<em><b>Join Table</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MULTI_RELATIONSHIP_MAPPING__JOIN_TABLE = XML_RELATIONSHIP_MAPPING__JOIN_TABLE; + + /** + * The feature id for the '<em><b>Cascade</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MULTI_RELATIONSHIP_MAPPING__CASCADE = XML_RELATIONSHIP_MAPPING__CASCADE; + + /** + * The feature id for the '<em><b>Mapped By</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MULTI_RELATIONSHIP_MAPPING__MAPPED_BY = XML_RELATIONSHIP_MAPPING_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Order By</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MULTI_RELATIONSHIP_MAPPING__ORDER_BY = XML_RELATIONSHIP_MAPPING_FEATURE_COUNT + 1; + + /** + * The feature id for the '<em><b>Map Key</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MULTI_RELATIONSHIP_MAPPING__MAP_KEY = XML_RELATIONSHIP_MAPPING_FEATURE_COUNT + 2; + + /** + * The number of structural features of the '<em>Xml Multi Relationship Mapping</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MULTI_RELATIONSHIP_MAPPING_FEATURE_COUNT = XML_RELATIONSHIP_MAPPING_FEATURE_COUNT + 3; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlSingleRelationshipMapping <em>Xml Single Relationship Mapping</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlSingleRelationshipMapping + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlSingleRelationshipMapping() + * @generated + */ + public static final int XML_SINGLE_RELATIONSHIP_MAPPING = 14; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_SINGLE_RELATIONSHIP_MAPPING__NAME = XML_RELATIONSHIP_MAPPING__NAME; + + /** + * The feature id for the '<em><b>Target Entity</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_SINGLE_RELATIONSHIP_MAPPING__TARGET_ENTITY = XML_RELATIONSHIP_MAPPING__TARGET_ENTITY; + + /** + * The feature id for the '<em><b>Fetch</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_SINGLE_RELATIONSHIP_MAPPING__FETCH = XML_RELATIONSHIP_MAPPING__FETCH; + + /** + * The feature id for the '<em><b>Join Table</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_SINGLE_RELATIONSHIP_MAPPING__JOIN_TABLE = XML_RELATIONSHIP_MAPPING__JOIN_TABLE; + + /** + * The feature id for the '<em><b>Cascade</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_SINGLE_RELATIONSHIP_MAPPING__CASCADE = XML_RELATIONSHIP_MAPPING__CASCADE; + + /** + * The feature id for the '<em><b>Optional</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_SINGLE_RELATIONSHIP_MAPPING__OPTIONAL = XML_RELATIONSHIP_MAPPING_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Join Columns</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_SINGLE_RELATIONSHIP_MAPPING__JOIN_COLUMNS = XML_RELATIONSHIP_MAPPING_FEATURE_COUNT + 1; + + /** + * The number of structural features of the '<em>Xml Single Relationship Mapping</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_SINGLE_RELATIONSHIP_MAPPING_FEATURE_COUNT = XML_RELATIONSHIP_MAPPING_FEATURE_COUNT + 2; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlId <em>Xml Id</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlId + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlId() + * @generated + */ + public static final int XML_ID = 15; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ID__NAME = XML_ATTRIBUTE_MAPPING__NAME; + + /** + * The feature id for the '<em><b>Column</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ID__COLUMN = XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Generated Value</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ID__GENERATED_VALUE = XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 1; + + /** + * The feature id for the '<em><b>Temporal</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ID__TEMPORAL = XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 2; + + /** + * The feature id for the '<em><b>Table Generator</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ID__TABLE_GENERATOR = XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 3; + + /** + * The feature id for the '<em><b>Sequence Generator</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ID__SEQUENCE_GENERATOR = XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 4; + + /** + * The number of structural features of the '<em>Xml Id</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ID_FEATURE_COUNT = XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 5; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlIdImpl <em>Xml Id Impl</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlIdImpl + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlIdImpl() + * @generated + */ + public static final int XML_ID_IMPL = 16; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ID_IMPL__NAME = ABSTRACT_XML_ATTRIBUTE_MAPPING__NAME; + + /** + * The feature id for the '<em><b>Column</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ID_IMPL__COLUMN = ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Generated Value</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ID_IMPL__GENERATED_VALUE = ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 1; + + /** + * The feature id for the '<em><b>Temporal</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ID_IMPL__TEMPORAL = ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 2; + + /** + * The feature id for the '<em><b>Table Generator</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ID_IMPL__TABLE_GENERATOR = ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 3; + + /** + * The feature id for the '<em><b>Sequence Generator</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ID_IMPL__SEQUENCE_GENERATOR = ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 4; + + /** + * The number of structural features of the '<em>Xml Id Impl</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ID_IMPL_FEATURE_COUNT = ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 5; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.BaseXmlEmbedded <em>Base Xml Embedded</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.BaseXmlEmbedded + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getBaseXmlEmbedded() + * @generated + */ + public static final int BASE_XML_EMBEDDED = 17; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int BASE_XML_EMBEDDED__NAME = XML_ATTRIBUTE_MAPPING__NAME; + + /** + * The feature id for the '<em><b>Attribute Overrides</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int BASE_XML_EMBEDDED__ATTRIBUTE_OVERRIDES = XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 0; + + /** + * The number of structural features of the '<em>Base Xml Embedded</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int BASE_XML_EMBEDDED_FEATURE_COUNT = XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 1; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEmbeddedId <em>Xml Embedded Id</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEmbeddedId + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEmbeddedId() + * @generated + */ + public static final int XML_EMBEDDED_ID = 18; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_EMBEDDED_ID__NAME = XML_ATTRIBUTE_MAPPING__NAME; + + /** + * The feature id for the '<em><b>Attribute Overrides</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_EMBEDDED_ID__ATTRIBUTE_OVERRIDES = XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 0; + + /** + * The number of structural features of the '<em>Xml Embedded Id</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_EMBEDDED_ID_FEATURE_COUNT = XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 1; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEmbeddedIdImpl <em>Xml Embedded Id Impl</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEmbeddedIdImpl + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEmbeddedIdImpl() + * @generated + */ + public static final int XML_EMBEDDED_ID_IMPL = 19; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_EMBEDDED_ID_IMPL__NAME = ABSTRACT_XML_ATTRIBUTE_MAPPING__NAME; + + /** + * The feature id for the '<em><b>Attribute Overrides</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_EMBEDDED_ID_IMPL__ATTRIBUTE_OVERRIDES = ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 0; + + /** + * The number of structural features of the '<em>Xml Embedded Id Impl</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_EMBEDDED_ID_IMPL_FEATURE_COUNT = ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 1; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEmbedded <em>Xml Embedded</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEmbedded + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEmbedded() + * @generated + */ + public static final int XML_EMBEDDED = 20; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_EMBEDDED__NAME = BASE_XML_EMBEDDED__NAME; + + /** + * The feature id for the '<em><b>Attribute Overrides</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_EMBEDDED__ATTRIBUTE_OVERRIDES = BASE_XML_EMBEDDED__ATTRIBUTE_OVERRIDES; + + /** + * The number of structural features of the '<em>Xml Embedded</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_EMBEDDED_FEATURE_COUNT = BASE_XML_EMBEDDED_FEATURE_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEmbeddedImpl <em>Xml Embedded Impl</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEmbeddedImpl + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEmbeddedImpl() + * @generated + */ + public static final int XML_EMBEDDED_IMPL = 21; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_EMBEDDED_IMPL__NAME = ABSTRACT_XML_ATTRIBUTE_MAPPING__NAME; + + /** + * The feature id for the '<em><b>Attribute Overrides</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_EMBEDDED_IMPL__ATTRIBUTE_OVERRIDES = ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 0; + + /** + * The number of structural features of the '<em>Xml Embedded Impl</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_EMBEDDED_IMPL_FEATURE_COUNT = ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 1; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBasic <em>Xml Basic</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBasic + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlBasic() + * @generated + */ + public static final int XML_BASIC = 22; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_BASIC__NAME = XML_ATTRIBUTE_MAPPING__NAME; + + /** + * The feature id for the '<em><b>Column</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_BASIC__COLUMN = XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Fetch</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_BASIC__FETCH = XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 1; + + /** + * The feature id for the '<em><b>Optional</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_BASIC__OPTIONAL = XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 2; + + /** + * The feature id for the '<em><b>Lob</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_BASIC__LOB = XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 3; + + /** + * The feature id for the '<em><b>Temporal</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_BASIC__TEMPORAL = XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 4; + + /** + * The feature id for the '<em><b>Enumerated</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_BASIC__ENUMERATED = XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 5; + + /** + * The number of structural features of the '<em>Xml Basic</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_BASIC_FEATURE_COUNT = XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 6; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBasicImpl <em>Xml Basic Impl</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBasicImpl + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlBasicImpl() + * @generated + */ + public static final int XML_BASIC_IMPL = 23; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_BASIC_IMPL__NAME = ABSTRACT_XML_ATTRIBUTE_MAPPING__NAME; + + /** + * The feature id for the '<em><b>Column</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_BASIC_IMPL__COLUMN = ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Fetch</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_BASIC_IMPL__FETCH = ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 1; + + /** + * The feature id for the '<em><b>Optional</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_BASIC_IMPL__OPTIONAL = ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 2; + + /** + * The feature id for the '<em><b>Lob</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_BASIC_IMPL__LOB = ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 3; + + /** + * The feature id for the '<em><b>Temporal</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_BASIC_IMPL__TEMPORAL = ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 4; + + /** + * The feature id for the '<em><b>Enumerated</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_BASIC_IMPL__ENUMERATED = ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 5; + + /** + * The number of structural features of the '<em>Xml Basic Impl</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_BASIC_IMPL_FEATURE_COUNT = ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 6; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlVersion <em>Xml Version</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlVersion + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlVersion() + * @generated + */ + public static final int XML_VERSION = 24; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_VERSION__NAME = XML_ATTRIBUTE_MAPPING__NAME; + + /** + * The feature id for the '<em><b>Column</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_VERSION__COLUMN = XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Temporal</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_VERSION__TEMPORAL = XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 1; + + /** + * The number of structural features of the '<em>Xml Version</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_VERSION_FEATURE_COUNT = XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 2; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlVersionImpl <em>Xml Version Impl</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlVersionImpl + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlVersionImpl() + * @generated + */ + public static final int XML_VERSION_IMPL = 25; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_VERSION_IMPL__NAME = ABSTRACT_XML_ATTRIBUTE_MAPPING__NAME; + + /** + * The feature id for the '<em><b>Column</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_VERSION_IMPL__COLUMN = ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Temporal</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_VERSION_IMPL__TEMPORAL = ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 1; + + /** + * The number of structural features of the '<em>Xml Version Impl</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_VERSION_IMPL_FEATURE_COUNT = ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 2; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlManyToOne <em>Xml Many To One</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlManyToOne + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlManyToOne() + * @generated + */ + public static final int XML_MANY_TO_ONE = 26; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MANY_TO_ONE__NAME = XML_SINGLE_RELATIONSHIP_MAPPING__NAME; + + /** + * The feature id for the '<em><b>Target Entity</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MANY_TO_ONE__TARGET_ENTITY = XML_SINGLE_RELATIONSHIP_MAPPING__TARGET_ENTITY; + + /** + * The feature id for the '<em><b>Fetch</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MANY_TO_ONE__FETCH = XML_SINGLE_RELATIONSHIP_MAPPING__FETCH; + + /** + * The feature id for the '<em><b>Join Table</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MANY_TO_ONE__JOIN_TABLE = XML_SINGLE_RELATIONSHIP_MAPPING__JOIN_TABLE; + + /** + * The feature id for the '<em><b>Cascade</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MANY_TO_ONE__CASCADE = XML_SINGLE_RELATIONSHIP_MAPPING__CASCADE; + + /** + * The feature id for the '<em><b>Optional</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MANY_TO_ONE__OPTIONAL = XML_SINGLE_RELATIONSHIP_MAPPING__OPTIONAL; + + /** + * The feature id for the '<em><b>Join Columns</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MANY_TO_ONE__JOIN_COLUMNS = XML_SINGLE_RELATIONSHIP_MAPPING__JOIN_COLUMNS; + + /** + * The number of structural features of the '<em>Xml Many To One</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MANY_TO_ONE_FEATURE_COUNT = XML_SINGLE_RELATIONSHIP_MAPPING_FEATURE_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlManyToOneImpl <em>Xml Many To One Impl</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlManyToOneImpl + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlManyToOneImpl() + * @generated + */ + public static final int XML_MANY_TO_ONE_IMPL = 27; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MANY_TO_ONE_IMPL__NAME = ABSTRACT_XML_ATTRIBUTE_MAPPING__NAME; + + /** + * The feature id for the '<em><b>Target Entity</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MANY_TO_ONE_IMPL__TARGET_ENTITY = ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Fetch</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MANY_TO_ONE_IMPL__FETCH = ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 1; + + /** + * The feature id for the '<em><b>Join Table</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MANY_TO_ONE_IMPL__JOIN_TABLE = ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 2; + + /** + * The feature id for the '<em><b>Cascade</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MANY_TO_ONE_IMPL__CASCADE = ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 3; + + /** + * The feature id for the '<em><b>Optional</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MANY_TO_ONE_IMPL__OPTIONAL = ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 4; + + /** + * The feature id for the '<em><b>Join Columns</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MANY_TO_ONE_IMPL__JOIN_COLUMNS = ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 5; + + /** + * The number of structural features of the '<em>Xml Many To One Impl</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MANY_TO_ONE_IMPL_FEATURE_COUNT = ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 6; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlOneToMany <em>Xml One To Many</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlOneToMany + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlOneToMany() + * @generated + */ + public static final int XML_ONE_TO_MANY = 28; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ONE_TO_MANY__NAME = XML_MULTI_RELATIONSHIP_MAPPING__NAME; + + /** + * The feature id for the '<em><b>Target Entity</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ONE_TO_MANY__TARGET_ENTITY = XML_MULTI_RELATIONSHIP_MAPPING__TARGET_ENTITY; + + /** + * The feature id for the '<em><b>Fetch</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ONE_TO_MANY__FETCH = XML_MULTI_RELATIONSHIP_MAPPING__FETCH; + + /** + * The feature id for the '<em><b>Join Table</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ONE_TO_MANY__JOIN_TABLE = XML_MULTI_RELATIONSHIP_MAPPING__JOIN_TABLE; + + /** + * The feature id for the '<em><b>Cascade</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ONE_TO_MANY__CASCADE = XML_MULTI_RELATIONSHIP_MAPPING__CASCADE; + + /** + * The feature id for the '<em><b>Mapped By</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ONE_TO_MANY__MAPPED_BY = XML_MULTI_RELATIONSHIP_MAPPING__MAPPED_BY; + + /** + * The feature id for the '<em><b>Order By</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ONE_TO_MANY__ORDER_BY = XML_MULTI_RELATIONSHIP_MAPPING__ORDER_BY; + + /** + * The feature id for the '<em><b>Map Key</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ONE_TO_MANY__MAP_KEY = XML_MULTI_RELATIONSHIP_MAPPING__MAP_KEY; + + /** + * The feature id for the '<em><b>Join Columns</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ONE_TO_MANY__JOIN_COLUMNS = XML_MULTI_RELATIONSHIP_MAPPING_FEATURE_COUNT + 0; + + /** + * The number of structural features of the '<em>Xml One To Many</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ONE_TO_MANY_FEATURE_COUNT = XML_MULTI_RELATIONSHIP_MAPPING_FEATURE_COUNT + 1; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlOneToManyImpl <em>Xml One To Many Impl</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlOneToManyImpl + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlOneToManyImpl() + * @generated + */ + public static final int XML_ONE_TO_MANY_IMPL = 29; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ONE_TO_MANY_IMPL__NAME = ABSTRACT_XML_ATTRIBUTE_MAPPING__NAME; + + /** + * The feature id for the '<em><b>Target Entity</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ONE_TO_MANY_IMPL__TARGET_ENTITY = ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Fetch</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ONE_TO_MANY_IMPL__FETCH = ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 1; + + /** + * The feature id for the '<em><b>Join Table</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ONE_TO_MANY_IMPL__JOIN_TABLE = ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 2; + + /** + * The feature id for the '<em><b>Cascade</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ONE_TO_MANY_IMPL__CASCADE = ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 3; + + /** + * The feature id for the '<em><b>Mapped By</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ONE_TO_MANY_IMPL__MAPPED_BY = ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 4; + + /** + * The feature id for the '<em><b>Order By</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ONE_TO_MANY_IMPL__ORDER_BY = ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 5; + + /** + * The feature id for the '<em><b>Map Key</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ONE_TO_MANY_IMPL__MAP_KEY = ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 6; + + /** + * The feature id for the '<em><b>Join Columns</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ONE_TO_MANY_IMPL__JOIN_COLUMNS = ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 7; + + /** + * The number of structural features of the '<em>Xml One To Many Impl</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ONE_TO_MANY_IMPL_FEATURE_COUNT = ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 8; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlOneToOne <em>Xml One To One</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlOneToOne + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlOneToOne() + * @generated + */ + public static final int XML_ONE_TO_ONE = 30; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ONE_TO_ONE__NAME = XML_SINGLE_RELATIONSHIP_MAPPING__NAME; + + /** + * The feature id for the '<em><b>Target Entity</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ONE_TO_ONE__TARGET_ENTITY = XML_SINGLE_RELATIONSHIP_MAPPING__TARGET_ENTITY; + + /** + * The feature id for the '<em><b>Fetch</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ONE_TO_ONE__FETCH = XML_SINGLE_RELATIONSHIP_MAPPING__FETCH; + + /** + * The feature id for the '<em><b>Join Table</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ONE_TO_ONE__JOIN_TABLE = XML_SINGLE_RELATIONSHIP_MAPPING__JOIN_TABLE; + + /** + * The feature id for the '<em><b>Cascade</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ONE_TO_ONE__CASCADE = XML_SINGLE_RELATIONSHIP_MAPPING__CASCADE; + + /** + * The feature id for the '<em><b>Optional</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ONE_TO_ONE__OPTIONAL = XML_SINGLE_RELATIONSHIP_MAPPING__OPTIONAL; + + /** + * The feature id for the '<em><b>Join Columns</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ONE_TO_ONE__JOIN_COLUMNS = XML_SINGLE_RELATIONSHIP_MAPPING__JOIN_COLUMNS; + + /** + * The feature id for the '<em><b>Mapped By</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ONE_TO_ONE__MAPPED_BY = XML_SINGLE_RELATIONSHIP_MAPPING_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Primary Key Join Columns</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ONE_TO_ONE__PRIMARY_KEY_JOIN_COLUMNS = XML_SINGLE_RELATIONSHIP_MAPPING_FEATURE_COUNT + 1; + + /** + * The number of structural features of the '<em>Xml One To One</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ONE_TO_ONE_FEATURE_COUNT = XML_SINGLE_RELATIONSHIP_MAPPING_FEATURE_COUNT + 2; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlOneToOneImpl <em>Xml One To One Impl</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlOneToOneImpl + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlOneToOneImpl() + * @generated + */ + public static final int XML_ONE_TO_ONE_IMPL = 31; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ONE_TO_ONE_IMPL__NAME = ABSTRACT_XML_ATTRIBUTE_MAPPING__NAME; + + /** + * The feature id for the '<em><b>Target Entity</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ONE_TO_ONE_IMPL__TARGET_ENTITY = ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Fetch</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ONE_TO_ONE_IMPL__FETCH = ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 1; + + /** + * The feature id for the '<em><b>Join Table</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ONE_TO_ONE_IMPL__JOIN_TABLE = ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 2; + + /** + * The feature id for the '<em><b>Cascade</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ONE_TO_ONE_IMPL__CASCADE = ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 3; + + /** + * The feature id for the '<em><b>Optional</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ONE_TO_ONE_IMPL__OPTIONAL = ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 4; + + /** + * The feature id for the '<em><b>Join Columns</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ONE_TO_ONE_IMPL__JOIN_COLUMNS = ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 5; + + /** + * The feature id for the '<em><b>Mapped By</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ONE_TO_ONE_IMPL__MAPPED_BY = ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 6; + + /** + * The feature id for the '<em><b>Primary Key Join Columns</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ONE_TO_ONE_IMPL__PRIMARY_KEY_JOIN_COLUMNS = ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 7; + + /** + * The number of structural features of the '<em>Xml One To One Impl</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ONE_TO_ONE_IMPL_FEATURE_COUNT = ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 8; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlManyToMany <em>Xml Many To Many</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlManyToMany + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlManyToMany() + * @generated + */ + public static final int XML_MANY_TO_MANY = 32; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MANY_TO_MANY__NAME = XML_MULTI_RELATIONSHIP_MAPPING__NAME; + + /** + * The feature id for the '<em><b>Target Entity</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MANY_TO_MANY__TARGET_ENTITY = XML_MULTI_RELATIONSHIP_MAPPING__TARGET_ENTITY; + + /** + * The feature id for the '<em><b>Fetch</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MANY_TO_MANY__FETCH = XML_MULTI_RELATIONSHIP_MAPPING__FETCH; + + /** + * The feature id for the '<em><b>Join Table</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MANY_TO_MANY__JOIN_TABLE = XML_MULTI_RELATIONSHIP_MAPPING__JOIN_TABLE; + + /** + * The feature id for the '<em><b>Cascade</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MANY_TO_MANY__CASCADE = XML_MULTI_RELATIONSHIP_MAPPING__CASCADE; + + /** + * The feature id for the '<em><b>Mapped By</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MANY_TO_MANY__MAPPED_BY = XML_MULTI_RELATIONSHIP_MAPPING__MAPPED_BY; + + /** + * The feature id for the '<em><b>Order By</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MANY_TO_MANY__ORDER_BY = XML_MULTI_RELATIONSHIP_MAPPING__ORDER_BY; + + /** + * The feature id for the '<em><b>Map Key</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MANY_TO_MANY__MAP_KEY = XML_MULTI_RELATIONSHIP_MAPPING__MAP_KEY; + + /** + * The number of structural features of the '<em>Xml Many To Many</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MANY_TO_MANY_FEATURE_COUNT = XML_MULTI_RELATIONSHIP_MAPPING_FEATURE_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlManyToManyImpl <em>Xml Many To Many Impl</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlManyToManyImpl + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlManyToManyImpl() + * @generated + */ + public static final int XML_MANY_TO_MANY_IMPL = 33; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MANY_TO_MANY_IMPL__NAME = ABSTRACT_XML_ATTRIBUTE_MAPPING__NAME; + + /** + * The feature id for the '<em><b>Target Entity</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MANY_TO_MANY_IMPL__TARGET_ENTITY = ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Fetch</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MANY_TO_MANY_IMPL__FETCH = ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 1; + + /** + * The feature id for the '<em><b>Join Table</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MANY_TO_MANY_IMPL__JOIN_TABLE = ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 2; + + /** + * The feature id for the '<em><b>Cascade</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MANY_TO_MANY_IMPL__CASCADE = ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 3; + + /** + * The feature id for the '<em><b>Mapped By</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MANY_TO_MANY_IMPL__MAPPED_BY = ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 4; + + /** + * The feature id for the '<em><b>Order By</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MANY_TO_MANY_IMPL__ORDER_BY = ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 5; + + /** + * The feature id for the '<em><b>Map Key</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MANY_TO_MANY_IMPL__MAP_KEY = ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 6; + + /** + * The number of structural features of the '<em>Xml Many To Many Impl</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_MANY_TO_MANY_IMPL_FEATURE_COUNT = ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 7; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTransient <em>Xml Transient</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTransient + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlTransient() + * @generated + */ + public static final int XML_TRANSIENT = 34; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_TRANSIENT__NAME = XML_ATTRIBUTE_MAPPING__NAME; + + /** + * The number of structural features of the '<em>Xml Transient</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_TRANSIENT_FEATURE_COUNT = XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTransientImpl <em>Xml Transient Impl</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTransientImpl + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlTransientImpl() + * @generated + */ + public static final int XML_TRANSIENT_IMPL = 35; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_TRANSIENT_IMPL__NAME = ABSTRACT_XML_ATTRIBUTE_MAPPING__NAME; + + /** + * The number of structural features of the '<em>Xml Transient Impl</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_TRANSIENT_IMPL_FEATURE_COUNT = ABSTRACT_XML_ATTRIBUTE_MAPPING_FEATURE_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAssociationOverride <em>Xml Association Override</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAssociationOverride + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlAssociationOverride() + * @generated + */ + public static final int XML_ASSOCIATION_OVERRIDE = 36; + + /** + * The feature id for the '<em><b>Join Columns</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ASSOCIATION_OVERRIDE__JOIN_COLUMNS = 0; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ASSOCIATION_OVERRIDE__NAME = 1; + + /** + * The number of structural features of the '<em>Xml Association Override</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ASSOCIATION_OVERRIDE_FEATURE_COUNT = 2; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAssociationOverrideImpl <em>Xml Association Override Impl</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAssociationOverrideImpl + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlAssociationOverrideImpl() + * @generated + */ + public static final int XML_ASSOCIATION_OVERRIDE_IMPL = 37; + + /** + * The feature id for the '<em><b>Join Columns</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ASSOCIATION_OVERRIDE_IMPL__JOIN_COLUMNS = XML_ASSOCIATION_OVERRIDE__JOIN_COLUMNS; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ASSOCIATION_OVERRIDE_IMPL__NAME = XML_ASSOCIATION_OVERRIDE__NAME; + + /** + * The number of structural features of the '<em>Xml Association Override Impl</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ASSOCIATION_OVERRIDE_IMPL_FEATURE_COUNT = XML_ASSOCIATION_OVERRIDE_FEATURE_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAttributeOverride <em>Xml Attribute Override</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAttributeOverride + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlAttributeOverride() + * @generated + */ + public static final int XML_ATTRIBUTE_OVERRIDE = 38; + + /** + * The feature id for the '<em><b>Column</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ATTRIBUTE_OVERRIDE__COLUMN = 0; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ATTRIBUTE_OVERRIDE__NAME = 1; + + /** + * The number of structural features of the '<em>Xml Attribute Override</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ATTRIBUTE_OVERRIDE_FEATURE_COUNT = 2; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAttributeOverrideImpl <em>Xml Attribute Override Impl</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAttributeOverrideImpl + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlAttributeOverrideImpl() + * @generated + */ + public static final int XML_ATTRIBUTE_OVERRIDE_IMPL = 39; + + /** + * The feature id for the '<em><b>Column</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ATTRIBUTE_OVERRIDE_IMPL__COLUMN = XML_ATTRIBUTE_OVERRIDE__COLUMN; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ATTRIBUTE_OVERRIDE_IMPL__NAME = XML_ATTRIBUTE_OVERRIDE__NAME; + + /** + * The number of structural features of the '<em>Xml Attribute Override Impl</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ATTRIBUTE_OVERRIDE_IMPL_FEATURE_COUNT = XML_ATTRIBUTE_OVERRIDE_FEATURE_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.CascadeType <em>Cascade Type</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.CascadeType + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getCascadeType() + * @generated + */ + public static final int CASCADE_TYPE = 40; + + /** + * The feature id for the '<em><b>Cascade All</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int CASCADE_TYPE__CASCADE_ALL = 0; + + /** + * The feature id for the '<em><b>Cascade Persist</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int CASCADE_TYPE__CASCADE_PERSIST = 1; + + /** + * The feature id for the '<em><b>Cascade Merge</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int CASCADE_TYPE__CASCADE_MERGE = 2; + + /** + * The feature id for the '<em><b>Cascade Remove</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int CASCADE_TYPE__CASCADE_REMOVE = 3; + + /** + * The feature id for the '<em><b>Cascade Refresh</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int CASCADE_TYPE__CASCADE_REFRESH = 4; + + /** + * The number of structural features of the '<em>Cascade Type</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int CASCADE_TYPE_FEATURE_COUNT = 5; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.CascadeTypeImpl <em>Cascade Type Impl</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.CascadeTypeImpl + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getCascadeTypeImpl() + * @generated + */ + public static final int CASCADE_TYPE_IMPL = 41; + + /** + * The feature id for the '<em><b>Cascade All</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int CASCADE_TYPE_IMPL__CASCADE_ALL = CASCADE_TYPE__CASCADE_ALL; + + /** + * The feature id for the '<em><b>Cascade Persist</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int CASCADE_TYPE_IMPL__CASCADE_PERSIST = CASCADE_TYPE__CASCADE_PERSIST; + + /** + * The feature id for the '<em><b>Cascade Merge</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int CASCADE_TYPE_IMPL__CASCADE_MERGE = CASCADE_TYPE__CASCADE_MERGE; + + /** + * The feature id for the '<em><b>Cascade Remove</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int CASCADE_TYPE_IMPL__CASCADE_REMOVE = CASCADE_TYPE__CASCADE_REMOVE; + + /** + * The feature id for the '<em><b>Cascade Refresh</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int CASCADE_TYPE_IMPL__CASCADE_REFRESH = CASCADE_TYPE__CASCADE_REFRESH; + + /** + * The number of structural features of the '<em>Cascade Type Impl</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int CASCADE_TYPE_IMPL_FEATURE_COUNT = CASCADE_TYPE_FEATURE_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlNamedColumn <em>Xml Named Column</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlNamedColumn + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlNamedColumn() + * @generated + */ + public static final int XML_NAMED_COLUMN = 42; + + /** + * The feature id for the '<em><b>Column Definition</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_NAMED_COLUMN__COLUMN_DEFINITION = 0; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_NAMED_COLUMN__NAME = 1; + + /** + * The number of structural features of the '<em>Xml Named Column</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_NAMED_COLUMN_FEATURE_COUNT = 2; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlNamedColumn <em>Abstract Xml Named Column</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlNamedColumn + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getAbstractXmlNamedColumn() + * @generated + */ + public static final int ABSTRACT_XML_NAMED_COLUMN = 43; + + /** + * The feature id for the '<em><b>Column Definition</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int ABSTRACT_XML_NAMED_COLUMN__COLUMN_DEFINITION = XML_NAMED_COLUMN__COLUMN_DEFINITION; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int ABSTRACT_XML_NAMED_COLUMN__NAME = XML_NAMED_COLUMN__NAME; + + /** + * The number of structural features of the '<em>Abstract Xml Named Column</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int ABSTRACT_XML_NAMED_COLUMN_FEATURE_COUNT = XML_NAMED_COLUMN_FEATURE_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAbstractColumn <em>Xml Abstract Column</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAbstractColumn + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlAbstractColumn() + * @generated + */ + public static final int XML_ABSTRACT_COLUMN = 44; + + /** + * The feature id for the '<em><b>Column Definition</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ABSTRACT_COLUMN__COLUMN_DEFINITION = XML_NAMED_COLUMN__COLUMN_DEFINITION; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ABSTRACT_COLUMN__NAME = XML_NAMED_COLUMN__NAME; + + /** + * The feature id for the '<em><b>Insertable</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ABSTRACT_COLUMN__INSERTABLE = XML_NAMED_COLUMN_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Nullable</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ABSTRACT_COLUMN__NULLABLE = XML_NAMED_COLUMN_FEATURE_COUNT + 1; + + /** + * The feature id for the '<em><b>Table</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ABSTRACT_COLUMN__TABLE = XML_NAMED_COLUMN_FEATURE_COUNT + 2; + + /** + * The feature id for the '<em><b>Unique</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ABSTRACT_COLUMN__UNIQUE = XML_NAMED_COLUMN_FEATURE_COUNT + 3; + + /** + * The feature id for the '<em><b>Updatable</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ABSTRACT_COLUMN__UPDATABLE = XML_NAMED_COLUMN_FEATURE_COUNT + 4; + + /** + * The number of structural features of the '<em>Xml Abstract Column</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ABSTRACT_COLUMN_FEATURE_COUNT = XML_NAMED_COLUMN_FEATURE_COUNT + 5; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlAbstractColumn <em>Abstract Xml Abstract Column</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlAbstractColumn + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getAbstractXmlAbstractColumn() + * @generated + */ + public static final int ABSTRACT_XML_ABSTRACT_COLUMN = 45; + + /** + * The feature id for the '<em><b>Column Definition</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int ABSTRACT_XML_ABSTRACT_COLUMN__COLUMN_DEFINITION = ABSTRACT_XML_NAMED_COLUMN__COLUMN_DEFINITION; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int ABSTRACT_XML_ABSTRACT_COLUMN__NAME = ABSTRACT_XML_NAMED_COLUMN__NAME; + + /** + * The feature id for the '<em><b>Insertable</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int ABSTRACT_XML_ABSTRACT_COLUMN__INSERTABLE = ABSTRACT_XML_NAMED_COLUMN_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Nullable</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int ABSTRACT_XML_ABSTRACT_COLUMN__NULLABLE = ABSTRACT_XML_NAMED_COLUMN_FEATURE_COUNT + 1; + + /** + * The feature id for the '<em><b>Table</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int ABSTRACT_XML_ABSTRACT_COLUMN__TABLE = ABSTRACT_XML_NAMED_COLUMN_FEATURE_COUNT + 2; + + /** + * The feature id for the '<em><b>Unique</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int ABSTRACT_XML_ABSTRACT_COLUMN__UNIQUE = ABSTRACT_XML_NAMED_COLUMN_FEATURE_COUNT + 3; + + /** + * The feature id for the '<em><b>Updatable</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int ABSTRACT_XML_ABSTRACT_COLUMN__UPDATABLE = ABSTRACT_XML_NAMED_COLUMN_FEATURE_COUNT + 4; + + /** + * The number of structural features of the '<em>Abstract Xml Abstract Column</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int ABSTRACT_XML_ABSTRACT_COLUMN_FEATURE_COUNT = ABSTRACT_XML_NAMED_COLUMN_FEATURE_COUNT + 5; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlColumn <em>Xml Column</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlColumn + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlColumn() + * @generated + */ + public static final int XML_COLUMN = 46; + + /** + * The feature id for the '<em><b>Column Definition</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_COLUMN__COLUMN_DEFINITION = XML_ABSTRACT_COLUMN__COLUMN_DEFINITION; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_COLUMN__NAME = XML_ABSTRACT_COLUMN__NAME; + + /** + * The feature id for the '<em><b>Insertable</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_COLUMN__INSERTABLE = XML_ABSTRACT_COLUMN__INSERTABLE; + + /** + * The feature id for the '<em><b>Nullable</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_COLUMN__NULLABLE = XML_ABSTRACT_COLUMN__NULLABLE; + + /** + * The feature id for the '<em><b>Table</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_COLUMN__TABLE = XML_ABSTRACT_COLUMN__TABLE; + + /** + * The feature id for the '<em><b>Unique</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_COLUMN__UNIQUE = XML_ABSTRACT_COLUMN__UNIQUE; + + /** + * The feature id for the '<em><b>Updatable</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_COLUMN__UPDATABLE = XML_ABSTRACT_COLUMN__UPDATABLE; + + /** + * The feature id for the '<em><b>Length</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_COLUMN__LENGTH = XML_ABSTRACT_COLUMN_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Precision</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_COLUMN__PRECISION = XML_ABSTRACT_COLUMN_FEATURE_COUNT + 1; + + /** + * The feature id for the '<em><b>Scale</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_COLUMN__SCALE = XML_ABSTRACT_COLUMN_FEATURE_COUNT + 2; + + /** + * The number of structural features of the '<em>Xml Column</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_COLUMN_FEATURE_COUNT = XML_ABSTRACT_COLUMN_FEATURE_COUNT + 3; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlColumnImpl <em>Xml Column Impl</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlColumnImpl + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlColumnImpl() + * @generated + */ + public static final int XML_COLUMN_IMPL = 47; + + /** + * The feature id for the '<em><b>Column Definition</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_COLUMN_IMPL__COLUMN_DEFINITION = ABSTRACT_XML_ABSTRACT_COLUMN__COLUMN_DEFINITION; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_COLUMN_IMPL__NAME = ABSTRACT_XML_ABSTRACT_COLUMN__NAME; + + /** + * The feature id for the '<em><b>Insertable</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_COLUMN_IMPL__INSERTABLE = ABSTRACT_XML_ABSTRACT_COLUMN__INSERTABLE; + + /** + * The feature id for the '<em><b>Nullable</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_COLUMN_IMPL__NULLABLE = ABSTRACT_XML_ABSTRACT_COLUMN__NULLABLE; + + /** + * The feature id for the '<em><b>Table</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_COLUMN_IMPL__TABLE = ABSTRACT_XML_ABSTRACT_COLUMN__TABLE; + + /** + * The feature id for the '<em><b>Unique</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_COLUMN_IMPL__UNIQUE = ABSTRACT_XML_ABSTRACT_COLUMN__UNIQUE; + + /** + * The feature id for the '<em><b>Updatable</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_COLUMN_IMPL__UPDATABLE = ABSTRACT_XML_ABSTRACT_COLUMN__UPDATABLE; + + /** + * The feature id for the '<em><b>Length</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_COLUMN_IMPL__LENGTH = ABSTRACT_XML_ABSTRACT_COLUMN_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Precision</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_COLUMN_IMPL__PRECISION = ABSTRACT_XML_ABSTRACT_COLUMN_FEATURE_COUNT + 1; + + /** + * The feature id for the '<em><b>Scale</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_COLUMN_IMPL__SCALE = ABSTRACT_XML_ABSTRACT_COLUMN_FEATURE_COUNT + 2; + + /** + * The number of structural features of the '<em>Xml Column Impl</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_COLUMN_IMPL_FEATURE_COUNT = ABSTRACT_XML_ABSTRACT_COLUMN_FEATURE_COUNT + 3; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.ColumnResult <em>Column Result</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.ColumnResult + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getColumnResult() + * @generated + */ + public static final int COLUMN_RESULT = 48; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int COLUMN_RESULT__NAME = 0; + + /** + * The number of structural features of the '<em>Column Result</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int COLUMN_RESULT_FEATURE_COUNT = 1; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlDiscriminatorColumn <em>Xml Discriminator Column</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlDiscriminatorColumn + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlDiscriminatorColumn() + * @generated + */ + public static final int XML_DISCRIMINATOR_COLUMN = 49; + + /** + * The feature id for the '<em><b>Column Definition</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_DISCRIMINATOR_COLUMN__COLUMN_DEFINITION = ABSTRACT_XML_NAMED_COLUMN__COLUMN_DEFINITION; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_DISCRIMINATOR_COLUMN__NAME = ABSTRACT_XML_NAMED_COLUMN__NAME; + + /** + * The feature id for the '<em><b>Discriminator Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_DISCRIMINATOR_COLUMN__DISCRIMINATOR_TYPE = ABSTRACT_XML_NAMED_COLUMN_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Length</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_DISCRIMINATOR_COLUMN__LENGTH = ABSTRACT_XML_NAMED_COLUMN_FEATURE_COUNT + 1; + + /** + * The number of structural features of the '<em>Xml Discriminator Column</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_DISCRIMINATOR_COLUMN_FEATURE_COUNT = ABSTRACT_XML_NAMED_COLUMN_FEATURE_COUNT + 2; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.EntityListeners <em>Entity Listeners</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EntityListeners + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getEntityListeners() + * @generated + */ + public static final int ENTITY_LISTENERS = 50; + + /** + * The feature id for the '<em><b>Entity Listeners</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int ENTITY_LISTENERS__ENTITY_LISTENERS = 0; + + /** + * The number of structural features of the '<em>Entity Listeners</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int ENTITY_LISTENERS_FEATURE_COUNT = 1; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.EntityListener <em>Entity Listener</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EntityListener + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getEntityListener() + * @generated + */ + public static final int ENTITY_LISTENER = 51; + + /** + * The feature id for the '<em><b>Class Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int ENTITY_LISTENER__CLASS_NAME = 0; + + /** + * The feature id for the '<em><b>Pre Persist</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int ENTITY_LISTENER__PRE_PERSIST = 1; + + /** + * The feature id for the '<em><b>Post Persist</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int ENTITY_LISTENER__POST_PERSIST = 2; + + /** + * The feature id for the '<em><b>Pre Remove</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int ENTITY_LISTENER__PRE_REMOVE = 3; + + /** + * The feature id for the '<em><b>Post Remove</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int ENTITY_LISTENER__POST_REMOVE = 4; + + /** + * The feature id for the '<em><b>Pre Update</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int ENTITY_LISTENER__PRE_UPDATE = 5; + + /** + * The feature id for the '<em><b>Post Update</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int ENTITY_LISTENER__POST_UPDATE = 6; + + /** + * The feature id for the '<em><b>Post Load</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int ENTITY_LISTENER__POST_LOAD = 7; + + /** + * The number of structural features of the '<em>Entity Listener</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int ENTITY_LISTENER_FEATURE_COUNT = 8; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.EntityResult <em>Entity Result</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EntityResult + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getEntityResult() + * @generated + */ + public static final int ENTITY_RESULT = 52; + + /** + * The feature id for the '<em><b>Discriminator Column</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int ENTITY_RESULT__DISCRIMINATOR_COLUMN = 0; + + /** + * The feature id for the '<em><b>Entity Class</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int ENTITY_RESULT__ENTITY_CLASS = 1; + + /** + * The feature id for the '<em><b>Field Results</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int ENTITY_RESULT__FIELD_RESULTS = 2; + + /** + * The number of structural features of the '<em>Entity Result</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int ENTITY_RESULT_FEATURE_COUNT = 3; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.EventMethod <em>Event Method</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EventMethod + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getEventMethod() + * @generated + */ + public static final int EVENT_METHOD = 53; + + /** + * The feature id for the '<em><b>Method Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int EVENT_METHOD__METHOD_NAME = 0; + + /** + * The number of structural features of the '<em>Event Method</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int EVENT_METHOD_FEATURE_COUNT = 1; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.FieldResult <em>Field Result</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.FieldResult + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getFieldResult() + * @generated + */ + public static final int FIELD_RESULT = 54; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int FIELD_RESULT__NAME = 0; + + /** + * The feature id for the '<em><b>Column</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int FIELD_RESULT__COLUMN = 1; + + /** + * The number of structural features of the '<em>Field Result</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int FIELD_RESULT_FEATURE_COUNT = 2; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlGeneratedValue <em>Xml Generated Value</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlGeneratedValue + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlGeneratedValue() + * @generated + */ + public static final int XML_GENERATED_VALUE = 55; + + /** + * The feature id for the '<em><b>Generator</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_GENERATED_VALUE__GENERATOR = 0; + + /** + * The feature id for the '<em><b>Strategy</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_GENERATED_VALUE__STRATEGY = 1; + + /** + * The number of structural features of the '<em>Xml Generated Value</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_GENERATED_VALUE_FEATURE_COUNT = 2; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlGeneratedValueImpl <em>Xml Generated Value Impl</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlGeneratedValueImpl + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlGeneratedValueImpl() + * @generated + */ + public static final int XML_GENERATED_VALUE_IMPL = 56; + + /** + * The feature id for the '<em><b>Generator</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_GENERATED_VALUE_IMPL__GENERATOR = XML_GENERATED_VALUE__GENERATOR; + + /** + * The feature id for the '<em><b>Strategy</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_GENERATED_VALUE_IMPL__STRATEGY = XML_GENERATED_VALUE__STRATEGY; + + /** + * The number of structural features of the '<em>Xml Generated Value Impl</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_GENERATED_VALUE_IMPL_FEATURE_COUNT = XML_GENERATED_VALUE_FEATURE_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlIdClass <em>Xml Id Class</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlIdClass + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlIdClass() + * @generated + */ + public static final int XML_ID_CLASS = 57; + + /** + * The feature id for the '<em><b>Class Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ID_CLASS__CLASS_NAME = 0; + + /** + * The number of structural features of the '<em>Xml Id Class</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_ID_CLASS_FEATURE_COUNT = 1; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.Inheritance <em>Inheritance</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.Inheritance + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getInheritance() + * @generated + */ + public static final int INHERITANCE = 58; + + /** + * The feature id for the '<em><b>Strategy</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int INHERITANCE__STRATEGY = 0; + + /** + * The number of structural features of the '<em>Inheritance</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int INHERITANCE_FEATURE_COUNT = 1; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlJoinColumn <em>Xml Join Column</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlJoinColumn + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlJoinColumn() + * @generated + */ + public static final int XML_JOIN_COLUMN = 59; + + /** + * The feature id for the '<em><b>Column Definition</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_JOIN_COLUMN__COLUMN_DEFINITION = XML_ABSTRACT_COLUMN__COLUMN_DEFINITION; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_JOIN_COLUMN__NAME = XML_ABSTRACT_COLUMN__NAME; + + /** + * The feature id for the '<em><b>Insertable</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_JOIN_COLUMN__INSERTABLE = XML_ABSTRACT_COLUMN__INSERTABLE; + + /** + * The feature id for the '<em><b>Nullable</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_JOIN_COLUMN__NULLABLE = XML_ABSTRACT_COLUMN__NULLABLE; + + /** + * The feature id for the '<em><b>Table</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_JOIN_COLUMN__TABLE = XML_ABSTRACT_COLUMN__TABLE; + + /** + * The feature id for the '<em><b>Unique</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_JOIN_COLUMN__UNIQUE = XML_ABSTRACT_COLUMN__UNIQUE; + + /** + * The feature id for the '<em><b>Updatable</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_JOIN_COLUMN__UPDATABLE = XML_ABSTRACT_COLUMN__UPDATABLE; + + /** + * The feature id for the '<em><b>Referenced Column Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_JOIN_COLUMN__REFERENCED_COLUMN_NAME = XML_ABSTRACT_COLUMN_FEATURE_COUNT + 0; + + /** + * The number of structural features of the '<em>Xml Join Column</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_JOIN_COLUMN_FEATURE_COUNT = XML_ABSTRACT_COLUMN_FEATURE_COUNT + 1; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlJoinColumnImpl <em>Xml Join Column Impl</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlJoinColumnImpl + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlJoinColumnImpl() + * @generated + */ + public static final int XML_JOIN_COLUMN_IMPL = 60; + + /** + * The feature id for the '<em><b>Column Definition</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_JOIN_COLUMN_IMPL__COLUMN_DEFINITION = ABSTRACT_XML_ABSTRACT_COLUMN__COLUMN_DEFINITION; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_JOIN_COLUMN_IMPL__NAME = ABSTRACT_XML_ABSTRACT_COLUMN__NAME; + + /** + * The feature id for the '<em><b>Insertable</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_JOIN_COLUMN_IMPL__INSERTABLE = ABSTRACT_XML_ABSTRACT_COLUMN__INSERTABLE; + + /** + * The feature id for the '<em><b>Nullable</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_JOIN_COLUMN_IMPL__NULLABLE = ABSTRACT_XML_ABSTRACT_COLUMN__NULLABLE; + + /** + * The feature id for the '<em><b>Table</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_JOIN_COLUMN_IMPL__TABLE = ABSTRACT_XML_ABSTRACT_COLUMN__TABLE; + + /** + * The feature id for the '<em><b>Unique</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_JOIN_COLUMN_IMPL__UNIQUE = ABSTRACT_XML_ABSTRACT_COLUMN__UNIQUE; + + /** + * The feature id for the '<em><b>Updatable</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_JOIN_COLUMN_IMPL__UPDATABLE = ABSTRACT_XML_ABSTRACT_COLUMN__UPDATABLE; + + /** + * The feature id for the '<em><b>Referenced Column Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_JOIN_COLUMN_IMPL__REFERENCED_COLUMN_NAME = ABSTRACT_XML_ABSTRACT_COLUMN_FEATURE_COUNT + 0; + + /** + * The number of structural features of the '<em>Xml Join Column Impl</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_JOIN_COLUMN_IMPL_FEATURE_COUNT = ABSTRACT_XML_ABSTRACT_COLUMN_FEATURE_COUNT + 1; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBaseTable <em>Xml Base Table</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBaseTable + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlBaseTable() + * @generated + */ + public static final int XML_BASE_TABLE = 80; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_BASE_TABLE__NAME = 0; + + /** + * The feature id for the '<em><b>Catalog</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_BASE_TABLE__CATALOG = 1; + + /** + * The feature id for the '<em><b>Schema</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_BASE_TABLE__SCHEMA = 2; + + /** + * The feature id for the '<em><b>Unique Constraints</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_BASE_TABLE__UNIQUE_CONSTRAINTS = 3; + + /** + * The number of structural features of the '<em>Xml Base Table</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_BASE_TABLE_FEATURE_COUNT = 4; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlJoinTable <em>Xml Join Table</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlJoinTable + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlJoinTable() + * @generated + */ + public static final int XML_JOIN_TABLE = 61; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_JOIN_TABLE__NAME = XML_BASE_TABLE__NAME; + + /** + * The feature id for the '<em><b>Catalog</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_JOIN_TABLE__CATALOG = XML_BASE_TABLE__CATALOG; + + /** + * The feature id for the '<em><b>Schema</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_JOIN_TABLE__SCHEMA = XML_BASE_TABLE__SCHEMA; + + /** + * The feature id for the '<em><b>Unique Constraints</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_JOIN_TABLE__UNIQUE_CONSTRAINTS = XML_BASE_TABLE__UNIQUE_CONSTRAINTS; + + /** + * The feature id for the '<em><b>Join Columns</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_JOIN_TABLE__JOIN_COLUMNS = XML_BASE_TABLE_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Inverse Join Columns</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_JOIN_TABLE__INVERSE_JOIN_COLUMNS = XML_BASE_TABLE_FEATURE_COUNT + 1; + + /** + * The number of structural features of the '<em>Xml Join Table</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_JOIN_TABLE_FEATURE_COUNT = XML_BASE_TABLE_FEATURE_COUNT + 2; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlBaseTable <em>Abstract Xml Base Table</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlBaseTable + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getAbstractXmlBaseTable() + * @generated + */ + public static final int ABSTRACT_XML_BASE_TABLE = 79; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int ABSTRACT_XML_BASE_TABLE__NAME = XML_BASE_TABLE__NAME; + + /** + * The feature id for the '<em><b>Catalog</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int ABSTRACT_XML_BASE_TABLE__CATALOG = XML_BASE_TABLE__CATALOG; + + /** + * The feature id for the '<em><b>Schema</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int ABSTRACT_XML_BASE_TABLE__SCHEMA = XML_BASE_TABLE__SCHEMA; + + /** + * The feature id for the '<em><b>Unique Constraints</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int ABSTRACT_XML_BASE_TABLE__UNIQUE_CONSTRAINTS = XML_BASE_TABLE__UNIQUE_CONSTRAINTS; + + /** + * The number of structural features of the '<em>Abstract Xml Base Table</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int ABSTRACT_XML_BASE_TABLE_FEATURE_COUNT = XML_BASE_TABLE_FEATURE_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlJoinTableImpl <em>Xml Join Table Impl</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlJoinTableImpl + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlJoinTableImpl() + * @generated + */ + public static final int XML_JOIN_TABLE_IMPL = 62; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_JOIN_TABLE_IMPL__NAME = ABSTRACT_XML_BASE_TABLE__NAME; + + /** + * The feature id for the '<em><b>Catalog</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_JOIN_TABLE_IMPL__CATALOG = ABSTRACT_XML_BASE_TABLE__CATALOG; + + /** + * The feature id for the '<em><b>Schema</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_JOIN_TABLE_IMPL__SCHEMA = ABSTRACT_XML_BASE_TABLE__SCHEMA; + + /** + * The feature id for the '<em><b>Unique Constraints</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_JOIN_TABLE_IMPL__UNIQUE_CONSTRAINTS = ABSTRACT_XML_BASE_TABLE__UNIQUE_CONSTRAINTS; + + /** + * The feature id for the '<em><b>Join Columns</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_JOIN_TABLE_IMPL__JOIN_COLUMNS = ABSTRACT_XML_BASE_TABLE_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Inverse Join Columns</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_JOIN_TABLE_IMPL__INVERSE_JOIN_COLUMNS = ABSTRACT_XML_BASE_TABLE_FEATURE_COUNT + 1; + + /** + * The number of structural features of the '<em>Xml Join Table Impl</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_JOIN_TABLE_IMPL_FEATURE_COUNT = ABSTRACT_XML_BASE_TABLE_FEATURE_COUNT + 2; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.Lob <em>Lob</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.Lob + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getLob() + * @generated + */ + public static final int LOB = 63; + + /** + * The number of structural features of the '<em>Lob</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int LOB_FEATURE_COUNT = 0; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.MapKey <em>Map Key</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.MapKey + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getMapKey() + * @generated + */ + public static final int MAP_KEY = 64; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int MAP_KEY__NAME = 0; + + /** + * The number of structural features of the '<em>Map Key</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int MAP_KEY_FEATURE_COUNT = 1; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.MapKeyImpl <em>Map Key Impl</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.MapKeyImpl + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getMapKeyImpl() + * @generated + */ + public static final int MAP_KEY_IMPL = 65; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int MAP_KEY_IMPL__NAME = MAP_KEY__NAME; + + /** + * The number of structural features of the '<em>Map Key Impl</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int MAP_KEY_IMPL_FEATURE_COUNT = MAP_KEY_FEATURE_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlQuery <em>Xml Query</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlQuery + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlQuery() + * @generated + */ + public static final int XML_QUERY = 66; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_QUERY__NAME = 0; + + /** + * The feature id for the '<em><b>Query</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_QUERY__QUERY = 1; + + /** + * The feature id for the '<em><b>Hints</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_QUERY__HINTS = 2; + + /** + * The number of structural features of the '<em>Xml Query</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_QUERY_FEATURE_COUNT = 3; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlNamedNativeQuery <em>Xml Named Native Query</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlNamedNativeQuery + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlNamedNativeQuery() + * @generated + */ + public static final int XML_NAMED_NATIVE_QUERY = 67; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_NAMED_NATIVE_QUERY__NAME = XML_QUERY__NAME; + + /** + * The feature id for the '<em><b>Query</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_NAMED_NATIVE_QUERY__QUERY = XML_QUERY__QUERY; + + /** + * The feature id for the '<em><b>Hints</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_NAMED_NATIVE_QUERY__HINTS = XML_QUERY__HINTS; + + /** + * The feature id for the '<em><b>Result Class</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_NAMED_NATIVE_QUERY__RESULT_CLASS = XML_QUERY_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Result Set Mapping</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_NAMED_NATIVE_QUERY__RESULT_SET_MAPPING = XML_QUERY_FEATURE_COUNT + 1; + + /** + * The number of structural features of the '<em>Xml Named Native Query</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_NAMED_NATIVE_QUERY_FEATURE_COUNT = XML_QUERY_FEATURE_COUNT + 2; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlNamedQuery <em>Xml Named Query</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlNamedQuery + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlNamedQuery() + * @generated + */ + public static final int XML_NAMED_QUERY = 68; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_NAMED_QUERY__NAME = XML_QUERY__NAME; + + /** + * The feature id for the '<em><b>Query</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_NAMED_QUERY__QUERY = XML_QUERY__QUERY; + + /** + * The feature id for the '<em><b>Hints</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_NAMED_QUERY__HINTS = XML_QUERY__HINTS; + + /** + * The number of structural features of the '<em>Xml Named Query</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_NAMED_QUERY_FEATURE_COUNT = XML_QUERY_FEATURE_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.PostLoad <em>Post Load</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.PostLoad + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getPostLoad() + * @generated + */ + public static final int POST_LOAD = 69; + + /** + * The feature id for the '<em><b>Method Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int POST_LOAD__METHOD_NAME = EVENT_METHOD__METHOD_NAME; + + /** + * The number of structural features of the '<em>Post Load</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int POST_LOAD_FEATURE_COUNT = EVENT_METHOD_FEATURE_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.PostPersist <em>Post Persist</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.PostPersist + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getPostPersist() + * @generated + */ + public static final int POST_PERSIST = 70; + + /** + * The feature id for the '<em><b>Method Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int POST_PERSIST__METHOD_NAME = EVENT_METHOD__METHOD_NAME; + + /** + * The number of structural features of the '<em>Post Persist</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int POST_PERSIST_FEATURE_COUNT = EVENT_METHOD_FEATURE_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.PostRemove <em>Post Remove</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.PostRemove + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getPostRemove() + * @generated + */ + public static final int POST_REMOVE = 71; + + /** + * The feature id for the '<em><b>Method Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int POST_REMOVE__METHOD_NAME = EVENT_METHOD__METHOD_NAME; + + /** + * The number of structural features of the '<em>Post Remove</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int POST_REMOVE_FEATURE_COUNT = EVENT_METHOD_FEATURE_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.PostUpdate <em>Post Update</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.PostUpdate + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getPostUpdate() + * @generated + */ + public static final int POST_UPDATE = 72; + + /** + * The feature id for the '<em><b>Method Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int POST_UPDATE__METHOD_NAME = EVENT_METHOD__METHOD_NAME; + + /** + * The number of structural features of the '<em>Post Update</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int POST_UPDATE_FEATURE_COUNT = EVENT_METHOD_FEATURE_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.PrePersist <em>Pre Persist</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.PrePersist + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getPrePersist() + * @generated + */ + public static final int PRE_PERSIST = 73; + + /** + * The feature id for the '<em><b>Method Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int PRE_PERSIST__METHOD_NAME = EVENT_METHOD__METHOD_NAME; + + /** + * The number of structural features of the '<em>Pre Persist</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int PRE_PERSIST_FEATURE_COUNT = EVENT_METHOD_FEATURE_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.PreRemove <em>Pre Remove</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.PreRemove + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getPreRemove() + * @generated + */ + public static final int PRE_REMOVE = 74; + + /** + * The feature id for the '<em><b>Method Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int PRE_REMOVE__METHOD_NAME = EVENT_METHOD__METHOD_NAME; + + /** + * The number of structural features of the '<em>Pre Remove</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int PRE_REMOVE_FEATURE_COUNT = EVENT_METHOD_FEATURE_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.PreUpdate <em>Pre Update</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.PreUpdate + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getPreUpdate() + * @generated + */ + public static final int PRE_UPDATE = 75; + + /** + * The feature id for the '<em><b>Method Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int PRE_UPDATE__METHOD_NAME = EVENT_METHOD__METHOD_NAME; + + /** + * The number of structural features of the '<em>Pre Update</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int PRE_UPDATE_FEATURE_COUNT = EVENT_METHOD_FEATURE_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPrimaryKeyJoinColumn <em>Xml Primary Key Join Column</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPrimaryKeyJoinColumn + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlPrimaryKeyJoinColumn() + * @generated + */ + public static final int XML_PRIMARY_KEY_JOIN_COLUMN = 76; + + /** + * The feature id for the '<em><b>Column Definition</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_PRIMARY_KEY_JOIN_COLUMN__COLUMN_DEFINITION = XML_NAMED_COLUMN__COLUMN_DEFINITION; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_PRIMARY_KEY_JOIN_COLUMN__NAME = XML_NAMED_COLUMN__NAME; + + /** + * The feature id for the '<em><b>Referenced Column Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_PRIMARY_KEY_JOIN_COLUMN__REFERENCED_COLUMN_NAME = XML_NAMED_COLUMN_FEATURE_COUNT + 0; + + /** + * The number of structural features of the '<em>Xml Primary Key Join Column</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_PRIMARY_KEY_JOIN_COLUMN_FEATURE_COUNT = XML_NAMED_COLUMN_FEATURE_COUNT + 1; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPrimaryKeyJoinColumnImpl <em>Xml Primary Key Join Column Impl</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPrimaryKeyJoinColumnImpl + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlPrimaryKeyJoinColumnImpl() + * @generated + */ + public static final int XML_PRIMARY_KEY_JOIN_COLUMN_IMPL = 77; + + /** + * The feature id for the '<em><b>Column Definition</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_PRIMARY_KEY_JOIN_COLUMN_IMPL__COLUMN_DEFINITION = ABSTRACT_XML_NAMED_COLUMN__COLUMN_DEFINITION; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_PRIMARY_KEY_JOIN_COLUMN_IMPL__NAME = ABSTRACT_XML_NAMED_COLUMN__NAME; + + /** + * The feature id for the '<em><b>Referenced Column Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_PRIMARY_KEY_JOIN_COLUMN_IMPL__REFERENCED_COLUMN_NAME = ABSTRACT_XML_NAMED_COLUMN_FEATURE_COUNT + 0; + + /** + * The number of structural features of the '<em>Xml Primary Key Join Column Impl</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_PRIMARY_KEY_JOIN_COLUMN_IMPL_FEATURE_COUNT = ABSTRACT_XML_NAMED_COLUMN_FEATURE_COUNT + 1; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlQueryHint <em>Xml Query Hint</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlQueryHint + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlQueryHint() + * @generated + */ + public static final int XML_QUERY_HINT = 78; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_QUERY_HINT__NAME = 0; + + /** + * The feature id for the '<em><b>Value</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_QUERY_HINT__VALUE = 1; + + /** + * The number of structural features of the '<em>Xml Query Hint</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_QUERY_HINT_FEATURE_COUNT = 2; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTable <em>Xml Table</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTable + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlTable() + * @generated + */ + public static final int XML_TABLE = 81; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_TABLE__NAME = ABSTRACT_XML_BASE_TABLE__NAME; + + /** + * The feature id for the '<em><b>Catalog</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_TABLE__CATALOG = ABSTRACT_XML_BASE_TABLE__CATALOG; + + /** + * The feature id for the '<em><b>Schema</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_TABLE__SCHEMA = ABSTRACT_XML_BASE_TABLE__SCHEMA; + + /** + * The feature id for the '<em><b>Unique Constraints</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_TABLE__UNIQUE_CONSTRAINTS = ABSTRACT_XML_BASE_TABLE__UNIQUE_CONSTRAINTS; + + /** + * The number of structural features of the '<em>Xml Table</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_TABLE_FEATURE_COUNT = ABSTRACT_XML_BASE_TABLE_FEATURE_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlSecondaryTable <em>Xml Secondary Table</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlSecondaryTable + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlSecondaryTable() + * @generated + */ + public static final int XML_SECONDARY_TABLE = 82; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_SECONDARY_TABLE__NAME = XML_BASE_TABLE__NAME; + + /** + * The feature id for the '<em><b>Catalog</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_SECONDARY_TABLE__CATALOG = XML_BASE_TABLE__CATALOG; + + /** + * The feature id for the '<em><b>Schema</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_SECONDARY_TABLE__SCHEMA = XML_BASE_TABLE__SCHEMA; + + /** + * The feature id for the '<em><b>Unique Constraints</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_SECONDARY_TABLE__UNIQUE_CONSTRAINTS = XML_BASE_TABLE__UNIQUE_CONSTRAINTS; + + /** + * The feature id for the '<em><b>Primary Key Join Columns</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_SECONDARY_TABLE__PRIMARY_KEY_JOIN_COLUMNS = XML_BASE_TABLE_FEATURE_COUNT + 0; + + /** + * The number of structural features of the '<em>Xml Secondary Table</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_SECONDARY_TABLE_FEATURE_COUNT = XML_BASE_TABLE_FEATURE_COUNT + 1; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlSecondaryTableImpl <em>Xml Secondary Table Impl</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlSecondaryTableImpl + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlSecondaryTableImpl() + * @generated + */ + public static final int XML_SECONDARY_TABLE_IMPL = 83; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_SECONDARY_TABLE_IMPL__NAME = ABSTRACT_XML_BASE_TABLE__NAME; + + /** + * The feature id for the '<em><b>Catalog</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_SECONDARY_TABLE_IMPL__CATALOG = ABSTRACT_XML_BASE_TABLE__CATALOG; + + /** + * The feature id for the '<em><b>Schema</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_SECONDARY_TABLE_IMPL__SCHEMA = ABSTRACT_XML_BASE_TABLE__SCHEMA; + + /** + * The feature id for the '<em><b>Unique Constraints</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_SECONDARY_TABLE_IMPL__UNIQUE_CONSTRAINTS = ABSTRACT_XML_BASE_TABLE__UNIQUE_CONSTRAINTS; + + /** + * The feature id for the '<em><b>Primary Key Join Columns</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_SECONDARY_TABLE_IMPL__PRIMARY_KEY_JOIN_COLUMNS = ABSTRACT_XML_BASE_TABLE_FEATURE_COUNT + 0; + + /** + * The number of structural features of the '<em>Xml Secondary Table Impl</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_SECONDARY_TABLE_IMPL_FEATURE_COUNT = ABSTRACT_XML_BASE_TABLE_FEATURE_COUNT + 1; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlGenerator <em>Xml Generator</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlGenerator + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlGenerator() + * @generated + */ + public static final int XML_GENERATOR = 84; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_GENERATOR__NAME = 0; + + /** + * The feature id for the '<em><b>Initial Value</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_GENERATOR__INITIAL_VALUE = 1; + + /** + * The feature id for the '<em><b>Allocation Size</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_GENERATOR__ALLOCATION_SIZE = 2; + + /** + * The number of structural features of the '<em>Xml Generator</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_GENERATOR_FEATURE_COUNT = 3; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlSequenceGenerator <em>Xml Sequence Generator</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlSequenceGenerator + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlSequenceGenerator() + * @generated + */ + public static final int XML_SEQUENCE_GENERATOR = 85; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_SEQUENCE_GENERATOR__NAME = XML_GENERATOR__NAME; + + /** + * The feature id for the '<em><b>Initial Value</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_SEQUENCE_GENERATOR__INITIAL_VALUE = XML_GENERATOR__INITIAL_VALUE; + + /** + * The feature id for the '<em><b>Allocation Size</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_SEQUENCE_GENERATOR__ALLOCATION_SIZE = XML_GENERATOR__ALLOCATION_SIZE; + + /** + * The feature id for the '<em><b>Sequence Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_SEQUENCE_GENERATOR__SEQUENCE_NAME = XML_GENERATOR_FEATURE_COUNT + 0; + + /** + * The number of structural features of the '<em>Xml Sequence Generator</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_SEQUENCE_GENERATOR_FEATURE_COUNT = XML_GENERATOR_FEATURE_COUNT + 1; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlSequenceGeneratorImpl <em>Xml Sequence Generator Impl</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlSequenceGeneratorImpl + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlSequenceGeneratorImpl() + * @generated + */ + public static final int XML_SEQUENCE_GENERATOR_IMPL = 86; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_SEQUENCE_GENERATOR_IMPL__NAME = XML_SEQUENCE_GENERATOR__NAME; + + /** + * The feature id for the '<em><b>Initial Value</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_SEQUENCE_GENERATOR_IMPL__INITIAL_VALUE = XML_SEQUENCE_GENERATOR__INITIAL_VALUE; + + /** + * The feature id for the '<em><b>Allocation Size</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_SEQUENCE_GENERATOR_IMPL__ALLOCATION_SIZE = XML_SEQUENCE_GENERATOR__ALLOCATION_SIZE; + + /** + * The feature id for the '<em><b>Sequence Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_SEQUENCE_GENERATOR_IMPL__SEQUENCE_NAME = XML_SEQUENCE_GENERATOR__SEQUENCE_NAME; + + /** + * The number of structural features of the '<em>Xml Sequence Generator Impl</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_SEQUENCE_GENERATOR_IMPL_FEATURE_COUNT = XML_SEQUENCE_GENERATOR_FEATURE_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.SqlResultSetMapping <em>Sql Result Set Mapping</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.SqlResultSetMapping + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getSqlResultSetMapping() + * @generated + */ + public static final int SQL_RESULT_SET_MAPPING = 87; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int SQL_RESULT_SET_MAPPING__NAME = 0; + + /** + * The feature id for the '<em><b>Entity Results</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int SQL_RESULT_SET_MAPPING__ENTITY_RESULTS = 1; + + /** + * The feature id for the '<em><b>Column Results</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int SQL_RESULT_SET_MAPPING__COLUMN_RESULTS = 2; + + /** + * The number of structural features of the '<em>Sql Result Set Mapping</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int SQL_RESULT_SET_MAPPING_FEATURE_COUNT = 3; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTableGenerator <em>Xml Table Generator</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTableGenerator + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlTableGenerator() + * @generated + */ + public static final int XML_TABLE_GENERATOR = 88; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_TABLE_GENERATOR__NAME = XML_GENERATOR__NAME; + + /** + * The feature id for the '<em><b>Initial Value</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_TABLE_GENERATOR__INITIAL_VALUE = XML_GENERATOR__INITIAL_VALUE; + + /** + * The feature id for the '<em><b>Allocation Size</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_TABLE_GENERATOR__ALLOCATION_SIZE = XML_GENERATOR__ALLOCATION_SIZE; + + /** + * The feature id for the '<em><b>Table</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_TABLE_GENERATOR__TABLE = XML_GENERATOR_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Catalog</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_TABLE_GENERATOR__CATALOG = XML_GENERATOR_FEATURE_COUNT + 1; + + /** + * The feature id for the '<em><b>Schema</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_TABLE_GENERATOR__SCHEMA = XML_GENERATOR_FEATURE_COUNT + 2; + + /** + * The feature id for the '<em><b>Pk Column Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_TABLE_GENERATOR__PK_COLUMN_NAME = XML_GENERATOR_FEATURE_COUNT + 3; + + /** + * The feature id for the '<em><b>Value Column Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_TABLE_GENERATOR__VALUE_COLUMN_NAME = XML_GENERATOR_FEATURE_COUNT + 4; + + /** + * The feature id for the '<em><b>Pk Column Value</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_TABLE_GENERATOR__PK_COLUMN_VALUE = XML_GENERATOR_FEATURE_COUNT + 5; + + /** + * The feature id for the '<em><b>Unique Constraints</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_TABLE_GENERATOR__UNIQUE_CONSTRAINTS = XML_GENERATOR_FEATURE_COUNT + 6; + + /** + * The number of structural features of the '<em>Xml Table Generator</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_TABLE_GENERATOR_FEATURE_COUNT = XML_GENERATOR_FEATURE_COUNT + 7; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTableGeneratorImpl <em>Xml Table Generator Impl</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTableGeneratorImpl + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlTableGeneratorImpl() + * @generated + */ + public static final int XML_TABLE_GENERATOR_IMPL = 89; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_TABLE_GENERATOR_IMPL__NAME = XML_TABLE_GENERATOR__NAME; + + /** + * The feature id for the '<em><b>Initial Value</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_TABLE_GENERATOR_IMPL__INITIAL_VALUE = XML_TABLE_GENERATOR__INITIAL_VALUE; + + /** + * The feature id for the '<em><b>Allocation Size</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_TABLE_GENERATOR_IMPL__ALLOCATION_SIZE = XML_TABLE_GENERATOR__ALLOCATION_SIZE; + + /** + * The feature id for the '<em><b>Table</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_TABLE_GENERATOR_IMPL__TABLE = XML_TABLE_GENERATOR__TABLE; + + /** + * The feature id for the '<em><b>Catalog</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_TABLE_GENERATOR_IMPL__CATALOG = XML_TABLE_GENERATOR__CATALOG; + + /** + * The feature id for the '<em><b>Schema</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_TABLE_GENERATOR_IMPL__SCHEMA = XML_TABLE_GENERATOR__SCHEMA; + + /** + * The feature id for the '<em><b>Pk Column Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_TABLE_GENERATOR_IMPL__PK_COLUMN_NAME = XML_TABLE_GENERATOR__PK_COLUMN_NAME; + + /** + * The feature id for the '<em><b>Value Column Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_TABLE_GENERATOR_IMPL__VALUE_COLUMN_NAME = XML_TABLE_GENERATOR__VALUE_COLUMN_NAME; + + /** + * The feature id for the '<em><b>Pk Column Value</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_TABLE_GENERATOR_IMPL__PK_COLUMN_VALUE = XML_TABLE_GENERATOR__PK_COLUMN_VALUE; + + /** + * The feature id for the '<em><b>Unique Constraints</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_TABLE_GENERATOR_IMPL__UNIQUE_CONSTRAINTS = XML_TABLE_GENERATOR__UNIQUE_CONSTRAINTS; + + /** + * The number of structural features of the '<em>Xml Table Generator Impl</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_TABLE_GENERATOR_IMPL_FEATURE_COUNT = XML_TABLE_GENERATOR_FEATURE_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlUniqueConstraint <em>Xml Unique Constraint</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlUniqueConstraint + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlUniqueConstraint() + * @generated + */ + public static final int XML_UNIQUE_CONSTRAINT = 90; + + /** + * The feature id for the '<em><b>Column Names</b></em>' attribute list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_UNIQUE_CONSTRAINT__COLUMN_NAMES = 0; + + /** + * The number of structural features of the '<em>Xml Unique Constraint</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_UNIQUE_CONSTRAINT_FEATURE_COUNT = 1; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlUniqueConstraintImpl <em>Xml Unique Constraint Impl</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlUniqueConstraintImpl + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlUniqueConstraintImpl() + * @generated + */ + public static final int XML_UNIQUE_CONSTRAINT_IMPL = 91; + + /** + * The feature id for the '<em><b>Column Names</b></em>' attribute list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_UNIQUE_CONSTRAINT_IMPL__COLUMN_NAMES = XML_UNIQUE_CONSTRAINT__COLUMN_NAMES; + + /** + * The number of structural features of the '<em>Xml Unique Constraint Impl</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + public static final int XML_UNIQUE_CONSTRAINT_IMPL_FEATURE_COUNT = XML_UNIQUE_CONSTRAINT_FEATURE_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.AccessType <em>Access Type</em>}' enum. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.AccessType + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getAccessType() + * @generated + */ + public static final int ACCESS_TYPE = 92; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.DiscriminatorType <em>Discriminator Type</em>}' enum. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.DiscriminatorType + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getDiscriminatorType() + * @generated + */ + public static final int DISCRIMINATOR_TYPE = 93; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.EnumType <em>Enum Type</em>}' enum. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EnumType + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getEnumType() + * @generated + */ + public static final int ENUM_TYPE = 94; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.FetchType <em>Fetch Type</em>}' enum. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.FetchType + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getFetchType() + * @generated + */ + public static final int FETCH_TYPE = 95; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.GenerationType <em>Generation Type</em>}' enum. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.GenerationType + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getGenerationType() + * @generated + */ + public static final int GENERATION_TYPE = 96; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.InheritanceType <em>Inheritance Type</em>}' enum. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.InheritanceType + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getInheritanceType() + * @generated + */ + public static final int INHERITANCE_TYPE = 97; + + /** + * The meta object id for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.TemporalType <em>Temporal Type</em>}' enum. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.TemporalType + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getTemporalType() + * @generated + */ + public static final int TEMPORAL_TYPE = 98; + + /** + * The meta object id for the '<em>Discriminator Value</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see java.lang.String + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getDiscriminatorValue() + * @generated + */ + public static final int DISCRIMINATOR_VALUE = 99; + + /** + * The meta object id for the '<em>Enumerated</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.emf.common.util.Enumerator + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getEnumerated() + * @generated + */ + public static final int ENUMERATED = 100; + + /** + * The meta object id for the '<em>Order By</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see java.lang.String + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getOrderBy() + * @generated + */ + public static final int ORDER_BY = 101; + + /** + * The meta object id for the '<em>Version Type</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see java.lang.String + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getVersionType() + * @generated + */ + public static final int VERSION_TYPE = 102; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlEntityMappingsEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlPersistenceUnitMetadataEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlPersistenceUnitDefaultsEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass abstractXmlTypeMappingEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlMappedSuperclassEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlEntityEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlEmbeddableEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass attributesEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlAttributeMappingEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass abstractXmlAttributeMappingEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlNullAttributeMappingEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass columnMappingEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlRelationshipMappingEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlMultiRelationshipMappingEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlSingleRelationshipMappingEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlIdEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlIdImplEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass baseXmlEmbeddedEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlEmbeddedIdEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlEmbeddedIdImplEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlEmbeddedEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlEmbeddedImplEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlBasicEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlBasicImplEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlVersionEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlVersionImplEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlManyToOneEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlManyToOneImplEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlOneToManyEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlOneToManyImplEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlOneToOneEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlOneToOneImplEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlManyToManyEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlManyToManyImplEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlTransientEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlTransientImplEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlAssociationOverrideEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlAssociationOverrideImplEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlAttributeOverrideEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlAttributeOverrideImplEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass cascadeTypeEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass cascadeTypeImplEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlNamedColumnEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass abstractXmlNamedColumnEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlAbstractColumnEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass abstractXmlAbstractColumnEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlColumnEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlColumnImplEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass columnResultEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlDiscriminatorColumnEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass entityListenersEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass entityListenerEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass entityResultEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass eventMethodEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass fieldResultEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlGeneratedValueEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlGeneratedValueImplEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlIdClassEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass inheritanceEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlJoinColumnEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlJoinColumnImplEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlJoinTableEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlJoinTableImplEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass lobEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass mapKeyEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass mapKeyImplEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlQueryEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlNamedNativeQueryEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlNamedQueryEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass postLoadEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass postPersistEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass postRemoveEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass postUpdateEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass prePersistEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass preRemoveEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass preUpdateEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlPrimaryKeyJoinColumnEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlPrimaryKeyJoinColumnImplEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlQueryHintEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass abstractXmlBaseTableEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlBaseTableEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlTableEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlSecondaryTableEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlSecondaryTableImplEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlGeneratorEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlSequenceGeneratorEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlSequenceGeneratorImplEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass sqlResultSetMappingEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlTableGeneratorEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlTableGeneratorImplEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlUniqueConstraintEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass xmlUniqueConstraintImplEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EEnum accessTypeEEnum = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EEnum discriminatorTypeEEnum = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EEnum enumTypeEEnum = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EEnum fetchTypeEEnum = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EEnum generationTypeEEnum = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EEnum inheritanceTypeEEnum = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EEnum temporalTypeEEnum = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EDataType discriminatorValueEDataType = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EDataType enumeratedEDataType = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EDataType orderByEDataType = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EDataType versionTypeEDataType = null; + + /** + * Creates an instance of the model <b>Package</b>, registered with + * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package + * package URI value. + * <p>Note: the correct way to create the package is via the static + * factory method {@link #init init()}, which also performs + * initialization of the package, or returns the registered package, + * if one already exists. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.emf.ecore.EPackage.Registry + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#eNS_URI + * @see #init() + * @generated + */ + private EclipseLinkOrmPackage() + { + super(eNS_URI, EclipseLinkOrmFactory.eINSTANCE); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private static boolean isInited = false; + + /** + * Creates, registers, and initializes the <b>Package</b> for this + * model, and for any others upon which it depends. Simple + * dependencies are satisfied by calling this method on all + * dependent packages before doing anything else. This method drives + * initialization for interdependent packages directly, in parallel + * with this package, itself. + * <p>Of this package and its interdependencies, all packages which + * have not yet been registered by their URI values are first created + * and registered. The packages are then initialized in two steps: + * meta-model objects for all of the packages are created before any + * are initialized, since one package's meta-model objects may refer to + * those of another. + * <p>Invocation of this method will not affect any packages that have + * already been initialized. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #eNS_URI + * @see #createPackageContents() + * @see #initializePackageContents() + * @generated + */ + public static EclipseLinkOrmPackage init() + { + if (isInited) return (EclipseLinkOrmPackage)EPackage.Registry.INSTANCE.getEPackage(EclipseLinkOrmPackage.eNS_URI); + + // Obtain or create and register package + EclipseLinkOrmPackage theEclipseLinkOrmPackage = (EclipseLinkOrmPackage)(EPackage.Registry.INSTANCE.getEPackage(eNS_URI) instanceof EclipseLinkOrmPackage ? EPackage.Registry.INSTANCE.getEPackage(eNS_URI) : new EclipseLinkOrmPackage()); + + isInited = true; + + // Initialize simple dependencies + EcorePackage.eINSTANCE.eClass(); + XMLTypePackage.eINSTANCE.eClass(); + + // Create package meta-data objects + theEclipseLinkOrmPackage.createPackageContents(); + + // Initialize created meta-data + theEclipseLinkOrmPackage.initializePackageContents(); + + // Mark meta-data to indicate it can't be changed + theEclipseLinkOrmPackage.freeze(); + + return theEclipseLinkOrmPackage; + } + + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings <em>Xml Entity Mappings</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Entity Mappings</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings + * @generated + */ + public EClass getXmlEntityMappings() + { + return xmlEntityMappingsEClass; + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings#getVersion <em>Version</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Version</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings#getVersion() + * @see #getXmlEntityMappings() + * @generated + */ + public EAttribute getXmlEntityMappings_Version() + { + return (EAttribute)xmlEntityMappingsEClass.getEStructuralFeatures().get(0); + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings#getDescription <em>Description</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Description</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings#getDescription() + * @see #getXmlEntityMappings() + * @generated + */ + public EAttribute getXmlEntityMappings_Description() + { + return (EAttribute)xmlEntityMappingsEClass.getEStructuralFeatures().get(1); + } + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings#getPersistenceUnitMetadata <em>Persistence Unit Metadata</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Persistence Unit Metadata</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings#getPersistenceUnitMetadata() + * @see #getXmlEntityMappings() + * @generated + */ + public EReference getXmlEntityMappings_PersistenceUnitMetadata() + { + return (EReference)xmlEntityMappingsEClass.getEStructuralFeatures().get(2); + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings#getPackage <em>Package</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Package</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings#getPackage() + * @see #getXmlEntityMappings() + * @generated + */ + public EAttribute getXmlEntityMappings_Package() + { + return (EAttribute)xmlEntityMappingsEClass.getEStructuralFeatures().get(3); + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings#getSchema <em>Schema</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Schema</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings#getSchema() + * @see #getXmlEntityMappings() + * @generated + */ + public EAttribute getXmlEntityMappings_Schema() + { + return (EAttribute)xmlEntityMappingsEClass.getEStructuralFeatures().get(4); + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings#getCatalog <em>Catalog</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Catalog</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings#getCatalog() + * @see #getXmlEntityMappings() + * @generated + */ + public EAttribute getXmlEntityMappings_Catalog() + { + return (EAttribute)xmlEntityMappingsEClass.getEStructuralFeatures().get(5); + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings#getAccess <em>Access</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Access</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings#getAccess() + * @see #getXmlEntityMappings() + * @generated + */ + public EAttribute getXmlEntityMappings_Access() + { + return (EAttribute)xmlEntityMappingsEClass.getEStructuralFeatures().get(6); + } + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings#getSequenceGenerators <em>Sequence Generators</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Sequence Generators</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings#getSequenceGenerators() + * @see #getXmlEntityMappings() + * @generated + */ + public EReference getXmlEntityMappings_SequenceGenerators() + { + return (EReference)xmlEntityMappingsEClass.getEStructuralFeatures().get(7); + } + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings#getTableGenerators <em>Table Generators</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Table Generators</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings#getTableGenerators() + * @see #getXmlEntityMappings() + * @generated + */ + public EReference getXmlEntityMappings_TableGenerators() + { + return (EReference)xmlEntityMappingsEClass.getEStructuralFeatures().get(8); + } + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings#getNamedQueries <em>Named Queries</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Named Queries</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings#getNamedQueries() + * @see #getXmlEntityMappings() + * @generated + */ + public EReference getXmlEntityMappings_NamedQueries() + { + return (EReference)xmlEntityMappingsEClass.getEStructuralFeatures().get(9); + } + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings#getNamedNativeQueries <em>Named Native Queries</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Named Native Queries</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings#getNamedNativeQueries() + * @see #getXmlEntityMappings() + * @generated + */ + public EReference getXmlEntityMappings_NamedNativeQueries() + { + return (EReference)xmlEntityMappingsEClass.getEStructuralFeatures().get(10); + } + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings#getSqlResultSetMappings <em>Sql Result Set Mappings</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Sql Result Set Mappings</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings#getSqlResultSetMappings() + * @see #getXmlEntityMappings() + * @generated + */ + public EReference getXmlEntityMappings_SqlResultSetMappings() + { + return (EReference)xmlEntityMappingsEClass.getEStructuralFeatures().get(11); + } + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings#getMappedSuperclasses <em>Mapped Superclasses</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Mapped Superclasses</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings#getMappedSuperclasses() + * @see #getXmlEntityMappings() + * @generated + */ + public EReference getXmlEntityMappings_MappedSuperclasses() + { + return (EReference)xmlEntityMappingsEClass.getEStructuralFeatures().get(12); + } + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings#getEntities <em>Entities</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Entities</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings#getEntities() + * @see #getXmlEntityMappings() + * @generated + */ + public EReference getXmlEntityMappings_Entities() + { + return (EReference)xmlEntityMappingsEClass.getEStructuralFeatures().get(13); + } + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings#getEmbeddables <em>Embeddables</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Embeddables</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings#getEmbeddables() + * @see #getXmlEntityMappings() + * @generated + */ + public EReference getXmlEntityMappings_Embeddables() + { + return (EReference)xmlEntityMappingsEClass.getEStructuralFeatures().get(14); + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPersistenceUnitMetadata <em>Xml Persistence Unit Metadata</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Persistence Unit Metadata</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPersistenceUnitMetadata + * @generated + */ + public EClass getXmlPersistenceUnitMetadata() + { + return xmlPersistenceUnitMetadataEClass; + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPersistenceUnitMetadata#isXmlMappingMetadataComplete <em>Xml Mapping Metadata Complete</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Xml Mapping Metadata Complete</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPersistenceUnitMetadata#isXmlMappingMetadataComplete() + * @see #getXmlPersistenceUnitMetadata() + * @generated + */ + public EAttribute getXmlPersistenceUnitMetadata_XmlMappingMetadataComplete() + { + return (EAttribute)xmlPersistenceUnitMetadataEClass.getEStructuralFeatures().get(0); + } + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPersistenceUnitMetadata#getPersistenceUnitDefaults <em>Persistence Unit Defaults</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Persistence Unit Defaults</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPersistenceUnitMetadata#getPersistenceUnitDefaults() + * @see #getXmlPersistenceUnitMetadata() + * @generated + */ + public EReference getXmlPersistenceUnitMetadata_PersistenceUnitDefaults() + { + return (EReference)xmlPersistenceUnitMetadataEClass.getEStructuralFeatures().get(1); + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPersistenceUnitDefaults <em>Xml Persistence Unit Defaults</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Persistence Unit Defaults</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPersistenceUnitDefaults + * @generated + */ + public EClass getXmlPersistenceUnitDefaults() + { + return xmlPersistenceUnitDefaultsEClass; + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPersistenceUnitDefaults#getSchema <em>Schema</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Schema</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPersistenceUnitDefaults#getSchema() + * @see #getXmlPersistenceUnitDefaults() + * @generated + */ + public EAttribute getXmlPersistenceUnitDefaults_Schema() + { + return (EAttribute)xmlPersistenceUnitDefaultsEClass.getEStructuralFeatures().get(0); + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPersistenceUnitDefaults#getCatalog <em>Catalog</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Catalog</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPersistenceUnitDefaults#getCatalog() + * @see #getXmlPersistenceUnitDefaults() + * @generated + */ + public EAttribute getXmlPersistenceUnitDefaults_Catalog() + { + return (EAttribute)xmlPersistenceUnitDefaultsEClass.getEStructuralFeatures().get(1); + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPersistenceUnitDefaults#getAccess <em>Access</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Access</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPersistenceUnitDefaults#getAccess() + * @see #getXmlPersistenceUnitDefaults() + * @generated + */ + public EAttribute getXmlPersistenceUnitDefaults_Access() + { + return (EAttribute)xmlPersistenceUnitDefaultsEClass.getEStructuralFeatures().get(2); + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPersistenceUnitDefaults#isCascadePersist <em>Cascade Persist</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Cascade Persist</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPersistenceUnitDefaults#isCascadePersist() + * @see #getXmlPersistenceUnitDefaults() + * @generated + */ + public EAttribute getXmlPersistenceUnitDefaults_CascadePersist() + { + return (EAttribute)xmlPersistenceUnitDefaultsEClass.getEStructuralFeatures().get(3); + } + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPersistenceUnitDefaults#getEntityListeners <em>Entity Listeners</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Entity Listeners</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPersistenceUnitDefaults#getEntityListeners() + * @see #getXmlPersistenceUnitDefaults() + * @generated + */ + public EReference getXmlPersistenceUnitDefaults_EntityListeners() + { + return (EReference)xmlPersistenceUnitDefaultsEClass.getEStructuralFeatures().get(4); + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlTypeMapping <em>Abstract Xml Type Mapping</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Abstract Xml Type Mapping</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlTypeMapping + * @generated + */ + public EClass getAbstractXmlTypeMapping() + { + return abstractXmlTypeMappingEClass; + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlTypeMapping#getClassName <em>Class Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Class Name</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlTypeMapping#getClassName() + * @see #getAbstractXmlTypeMapping() + * @generated + */ + public EAttribute getAbstractXmlTypeMapping_ClassName() + { + return (EAttribute)abstractXmlTypeMappingEClass.getEStructuralFeatures().get(0); + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlTypeMapping#getAccess <em>Access</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Access</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlTypeMapping#getAccess() + * @see #getAbstractXmlTypeMapping() + * @generated + */ + public EAttribute getAbstractXmlTypeMapping_Access() + { + return (EAttribute)abstractXmlTypeMappingEClass.getEStructuralFeatures().get(1); + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlTypeMapping#getMetadataComplete <em>Metadata Complete</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Metadata Complete</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlTypeMapping#getMetadataComplete() + * @see #getAbstractXmlTypeMapping() + * @generated + */ + public EAttribute getAbstractXmlTypeMapping_MetadataComplete() + { + return (EAttribute)abstractXmlTypeMappingEClass.getEStructuralFeatures().get(2); + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlTypeMapping#getDescription <em>Description</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Description</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlTypeMapping#getDescription() + * @see #getAbstractXmlTypeMapping() + * @generated + */ + public EAttribute getAbstractXmlTypeMapping_Description() + { + return (EAttribute)abstractXmlTypeMappingEClass.getEStructuralFeatures().get(3); + } + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlTypeMapping#getAttributes <em>Attributes</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Attributes</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlTypeMapping#getAttributes() + * @see #getAbstractXmlTypeMapping() + * @generated + */ + public EReference getAbstractXmlTypeMapping_Attributes() + { + return (EReference)abstractXmlTypeMappingEClass.getEStructuralFeatures().get(4); + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMappedSuperclass <em>Xml Mapped Superclass</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Mapped Superclass</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMappedSuperclass + * @generated + */ + public EClass getXmlMappedSuperclass() + { + return xmlMappedSuperclassEClass; + } + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMappedSuperclass#getIdClass <em>Id Class</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Id Class</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMappedSuperclass#getIdClass() + * @see #getXmlMappedSuperclass() + * @generated + */ + public EReference getXmlMappedSuperclass_IdClass() + { + return (EReference)xmlMappedSuperclassEClass.getEStructuralFeatures().get(0); + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMappedSuperclass#isExcludeDefaultListeners <em>Exclude Default Listeners</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Exclude Default Listeners</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMappedSuperclass#isExcludeDefaultListeners() + * @see #getXmlMappedSuperclass() + * @generated + */ + public EAttribute getXmlMappedSuperclass_ExcludeDefaultListeners() + { + return (EAttribute)xmlMappedSuperclassEClass.getEStructuralFeatures().get(1); + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMappedSuperclass#isExcludeSuperclassListeners <em>Exclude Superclass Listeners</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Exclude Superclass Listeners</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMappedSuperclass#isExcludeSuperclassListeners() + * @see #getXmlMappedSuperclass() + * @generated + */ + public EAttribute getXmlMappedSuperclass_ExcludeSuperclassListeners() + { + return (EAttribute)xmlMappedSuperclassEClass.getEStructuralFeatures().get(2); + } + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMappedSuperclass#getEntityListeners <em>Entity Listeners</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Entity Listeners</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMappedSuperclass#getEntityListeners() + * @see #getXmlMappedSuperclass() + * @generated + */ + public EReference getXmlMappedSuperclass_EntityListeners() + { + return (EReference)xmlMappedSuperclassEClass.getEStructuralFeatures().get(3); + } + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMappedSuperclass#getPrePersist <em>Pre Persist</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Pre Persist</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMappedSuperclass#getPrePersist() + * @see #getXmlMappedSuperclass() + * @generated + */ + public EReference getXmlMappedSuperclass_PrePersist() + { + return (EReference)xmlMappedSuperclassEClass.getEStructuralFeatures().get(4); + } + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMappedSuperclass#getPostPersist <em>Post Persist</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Post Persist</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMappedSuperclass#getPostPersist() + * @see #getXmlMappedSuperclass() + * @generated + */ + public EReference getXmlMappedSuperclass_PostPersist() + { + return (EReference)xmlMappedSuperclassEClass.getEStructuralFeatures().get(5); + } + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMappedSuperclass#getPreRemove <em>Pre Remove</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Pre Remove</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMappedSuperclass#getPreRemove() + * @see #getXmlMappedSuperclass() + * @generated + */ + public EReference getXmlMappedSuperclass_PreRemove() + { + return (EReference)xmlMappedSuperclassEClass.getEStructuralFeatures().get(6); + } + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMappedSuperclass#getPostRemove <em>Post Remove</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Post Remove</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMappedSuperclass#getPostRemove() + * @see #getXmlMappedSuperclass() + * @generated + */ + public EReference getXmlMappedSuperclass_PostRemove() + { + return (EReference)xmlMappedSuperclassEClass.getEStructuralFeatures().get(7); + } + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMappedSuperclass#getPreUpdate <em>Pre Update</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Pre Update</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMappedSuperclass#getPreUpdate() + * @see #getXmlMappedSuperclass() + * @generated + */ + public EReference getXmlMappedSuperclass_PreUpdate() + { + return (EReference)xmlMappedSuperclassEClass.getEStructuralFeatures().get(8); + } + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMappedSuperclass#getPostUpdate <em>Post Update</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Post Update</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMappedSuperclass#getPostUpdate() + * @see #getXmlMappedSuperclass() + * @generated + */ + public EReference getXmlMappedSuperclass_PostUpdate() + { + return (EReference)xmlMappedSuperclassEClass.getEStructuralFeatures().get(9); + } + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMappedSuperclass#getPostLoad <em>Post Load</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Post Load</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMappedSuperclass#getPostLoad() + * @see #getXmlMappedSuperclass() + * @generated + */ + public EReference getXmlMappedSuperclass_PostLoad() + { + return (EReference)xmlMappedSuperclassEClass.getEStructuralFeatures().get(10); + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity <em>Xml Entity</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Entity</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity + * @generated + */ + public EClass getXmlEntity() + { + return xmlEntityEClass; + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getName <em>Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Name</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getName() + * @see #getXmlEntity() + * @generated + */ + public EAttribute getXmlEntity_Name() + { + return (EAttribute)xmlEntityEClass.getEStructuralFeatures().get(0); + } + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getTable <em>Table</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Table</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getTable() + * @see #getXmlEntity() + * @generated + */ + public EReference getXmlEntity_Table() + { + return (EReference)xmlEntityEClass.getEStructuralFeatures().get(1); + } + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getSecondaryTables <em>Secondary Tables</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Secondary Tables</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getSecondaryTables() + * @see #getXmlEntity() + * @generated + */ + public EReference getXmlEntity_SecondaryTables() + { + return (EReference)xmlEntityEClass.getEStructuralFeatures().get(2); + } + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getPrimaryKeyJoinColumns <em>Primary Key Join Columns</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Primary Key Join Columns</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getPrimaryKeyJoinColumns() + * @see #getXmlEntity() + * @generated + */ + public EReference getXmlEntity_PrimaryKeyJoinColumns() + { + return (EReference)xmlEntityEClass.getEStructuralFeatures().get(3); + } + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getIdClass <em>Id Class</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Id Class</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getIdClass() + * @see #getXmlEntity() + * @generated + */ + public EReference getXmlEntity_IdClass() + { + return (EReference)xmlEntityEClass.getEStructuralFeatures().get(4); + } + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getInheritance <em>Inheritance</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Inheritance</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getInheritance() + * @see #getXmlEntity() + * @generated + */ + public EReference getXmlEntity_Inheritance() + { + return (EReference)xmlEntityEClass.getEStructuralFeatures().get(5); + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getDiscriminatorValue <em>Discriminator Value</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Discriminator Value</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getDiscriminatorValue() + * @see #getXmlEntity() + * @generated + */ + public EAttribute getXmlEntity_DiscriminatorValue() + { + return (EAttribute)xmlEntityEClass.getEStructuralFeatures().get(6); + } + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getDiscriminatorColumn <em>Discriminator Column</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Discriminator Column</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getDiscriminatorColumn() + * @see #getXmlEntity() + * @generated + */ + public EReference getXmlEntity_DiscriminatorColumn() + { + return (EReference)xmlEntityEClass.getEStructuralFeatures().get(7); + } + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getSequenceGenerator <em>Sequence Generator</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Sequence Generator</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getSequenceGenerator() + * @see #getXmlEntity() + * @generated + */ + public EReference getXmlEntity_SequenceGenerator() + { + return (EReference)xmlEntityEClass.getEStructuralFeatures().get(8); + } + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getTableGenerator <em>Table Generator</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Table Generator</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getTableGenerator() + * @see #getXmlEntity() + * @generated + */ + public EReference getXmlEntity_TableGenerator() + { + return (EReference)xmlEntityEClass.getEStructuralFeatures().get(9); + } + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getNamedQueries <em>Named Queries</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Named Queries</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getNamedQueries() + * @see #getXmlEntity() + * @generated + */ + public EReference getXmlEntity_NamedQueries() + { + return (EReference)xmlEntityEClass.getEStructuralFeatures().get(10); + } + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getNamedNativeQueries <em>Named Native Queries</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Named Native Queries</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getNamedNativeQueries() + * @see #getXmlEntity() + * @generated + */ + public EReference getXmlEntity_NamedNativeQueries() + { + return (EReference)xmlEntityEClass.getEStructuralFeatures().get(11); + } + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getSqlResultSetMappings <em>Sql Result Set Mappings</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Sql Result Set Mappings</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getSqlResultSetMappings() + * @see #getXmlEntity() + * @generated + */ + public EReference getXmlEntity_SqlResultSetMappings() + { + return (EReference)xmlEntityEClass.getEStructuralFeatures().get(12); + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#isExcludeDefaultListeners <em>Exclude Default Listeners</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Exclude Default Listeners</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#isExcludeDefaultListeners() + * @see #getXmlEntity() + * @generated + */ + public EAttribute getXmlEntity_ExcludeDefaultListeners() + { + return (EAttribute)xmlEntityEClass.getEStructuralFeatures().get(13); + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#isExcludeSuperclassListeners <em>Exclude Superclass Listeners</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Exclude Superclass Listeners</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#isExcludeSuperclassListeners() + * @see #getXmlEntity() + * @generated + */ + public EAttribute getXmlEntity_ExcludeSuperclassListeners() + { + return (EAttribute)xmlEntityEClass.getEStructuralFeatures().get(14); + } + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getEntityListeners <em>Entity Listeners</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Entity Listeners</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getEntityListeners() + * @see #getXmlEntity() + * @generated + */ + public EReference getXmlEntity_EntityListeners() + { + return (EReference)xmlEntityEClass.getEStructuralFeatures().get(15); + } + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getPrePersist <em>Pre Persist</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Pre Persist</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getPrePersist() + * @see #getXmlEntity() + * @generated + */ + public EReference getXmlEntity_PrePersist() + { + return (EReference)xmlEntityEClass.getEStructuralFeatures().get(16); + } + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getPostPersist <em>Post Persist</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Post Persist</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getPostPersist() + * @see #getXmlEntity() + * @generated + */ + public EReference getXmlEntity_PostPersist() + { + return (EReference)xmlEntityEClass.getEStructuralFeatures().get(17); + } + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getPreRemove <em>Pre Remove</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Pre Remove</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getPreRemove() + * @see #getXmlEntity() + * @generated + */ + public EReference getXmlEntity_PreRemove() + { + return (EReference)xmlEntityEClass.getEStructuralFeatures().get(18); + } + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getPostRemove <em>Post Remove</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Post Remove</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getPostRemove() + * @see #getXmlEntity() + * @generated + */ + public EReference getXmlEntity_PostRemove() + { + return (EReference)xmlEntityEClass.getEStructuralFeatures().get(19); + } + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getPreUpdate <em>Pre Update</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Pre Update</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getPreUpdate() + * @see #getXmlEntity() + * @generated + */ + public EReference getXmlEntity_PreUpdate() + { + return (EReference)xmlEntityEClass.getEStructuralFeatures().get(20); + } + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getPostUpdate <em>Post Update</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Post Update</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getPostUpdate() + * @see #getXmlEntity() + * @generated + */ + public EReference getXmlEntity_PostUpdate() + { + return (EReference)xmlEntityEClass.getEStructuralFeatures().get(21); + } + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getPostLoad <em>Post Load</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Post Load</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getPostLoad() + * @see #getXmlEntity() + * @generated + */ + public EReference getXmlEntity_PostLoad() + { + return (EReference)xmlEntityEClass.getEStructuralFeatures().get(22); + } + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getAttributeOverrides <em>Attribute Overrides</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Attribute Overrides</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getAttributeOverrides() + * @see #getXmlEntity() + * @generated + */ + public EReference getXmlEntity_AttributeOverrides() + { + return (EReference)xmlEntityEClass.getEStructuralFeatures().get(23); + } + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getAssociationOverrides <em>Association Overrides</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Association Overrides</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getAssociationOverrides() + * @see #getXmlEntity() + * @generated + */ + public EReference getXmlEntity_AssociationOverrides() + { + return (EReference)xmlEntityEClass.getEStructuralFeatures().get(24); + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEmbeddable <em>Xml Embeddable</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Embeddable</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEmbeddable + * @generated + */ + public EClass getXmlEmbeddable() + { + return xmlEmbeddableEClass; + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.Attributes <em>Attributes</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Attributes</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.Attributes + * @generated + */ + public EClass getAttributes() + { + return attributesEClass; + } + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.Attributes#getIds <em>Ids</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Ids</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.Attributes#getIds() + * @see #getAttributes() + * @generated + */ + public EReference getAttributes_Ids() + { + return (EReference)attributesEClass.getEStructuralFeatures().get(0); + } + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.Attributes#getEmbeddedIds <em>Embedded Ids</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Embedded Ids</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.Attributes#getEmbeddedIds() + * @see #getAttributes() + * @generated + */ + public EReference getAttributes_EmbeddedIds() + { + return (EReference)attributesEClass.getEStructuralFeatures().get(1); + } + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.Attributes#getBasics <em>Basics</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Basics</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.Attributes#getBasics() + * @see #getAttributes() + * @generated + */ + public EReference getAttributes_Basics() + { + return (EReference)attributesEClass.getEStructuralFeatures().get(2); + } + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.Attributes#getVersions <em>Versions</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Versions</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.Attributes#getVersions() + * @see #getAttributes() + * @generated + */ + public EReference getAttributes_Versions() + { + return (EReference)attributesEClass.getEStructuralFeatures().get(3); + } + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.Attributes#getManyToOnes <em>Many To Ones</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Many To Ones</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.Attributes#getManyToOnes() + * @see #getAttributes() + * @generated + */ + public EReference getAttributes_ManyToOnes() + { + return (EReference)attributesEClass.getEStructuralFeatures().get(4); + } + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.Attributes#getOneToManys <em>One To Manys</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>One To Manys</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.Attributes#getOneToManys() + * @see #getAttributes() + * @generated + */ + public EReference getAttributes_OneToManys() + { + return (EReference)attributesEClass.getEStructuralFeatures().get(5); + } + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.Attributes#getOneToOnes <em>One To Ones</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>One To Ones</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.Attributes#getOneToOnes() + * @see #getAttributes() + * @generated + */ + public EReference getAttributes_OneToOnes() + { + return (EReference)attributesEClass.getEStructuralFeatures().get(6); + } + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.Attributes#getManyToManys <em>Many To Manys</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Many To Manys</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.Attributes#getManyToManys() + * @see #getAttributes() + * @generated + */ + public EReference getAttributes_ManyToManys() + { + return (EReference)attributesEClass.getEStructuralFeatures().get(7); + } + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.Attributes#getEmbeddeds <em>Embeddeds</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Embeddeds</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.Attributes#getEmbeddeds() + * @see #getAttributes() + * @generated + */ + public EReference getAttributes_Embeddeds() + { + return (EReference)attributesEClass.getEStructuralFeatures().get(8); + } + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.Attributes#getTransients <em>Transients</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Transients</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.Attributes#getTransients() + * @see #getAttributes() + * @generated + */ + public EReference getAttributes_Transients() + { + return (EReference)attributesEClass.getEStructuralFeatures().get(9); + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAttributeMapping <em>Xml Attribute Mapping</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Attribute Mapping</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAttributeMapping + * @generated + */ + public EClass getXmlAttributeMapping() + { + return xmlAttributeMappingEClass; + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAttributeMapping#getName <em>Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Name</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAttributeMapping#getName() + * @see #getXmlAttributeMapping() + * @generated + */ + public EAttribute getXmlAttributeMapping_Name() + { + return (EAttribute)xmlAttributeMappingEClass.getEStructuralFeatures().get(0); + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlAttributeMapping <em>Abstract Xml Attribute Mapping</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Abstract Xml Attribute Mapping</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlAttributeMapping + * @generated + */ + public EClass getAbstractXmlAttributeMapping() + { + return abstractXmlAttributeMappingEClass; + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlNullAttributeMapping <em>Xml Null Attribute Mapping</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Null Attribute Mapping</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlNullAttributeMapping + * @generated + */ + public EClass getXmlNullAttributeMapping() + { + return xmlNullAttributeMappingEClass; + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.ColumnMapping <em>Column Mapping</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Column Mapping</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.ColumnMapping + * @generated + */ + public EClass getColumnMapping() + { + return columnMappingEClass; + } + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.ColumnMapping#getColumn <em>Column</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Column</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.ColumnMapping#getColumn() + * @see #getColumnMapping() + * @generated + */ + public EReference getColumnMapping_Column() + { + return (EReference)columnMappingEClass.getEStructuralFeatures().get(0); + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlRelationshipMapping <em>Xml Relationship Mapping</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Relationship Mapping</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlRelationshipMapping + * @generated + */ + public EClass getXmlRelationshipMapping() + { + return xmlRelationshipMappingEClass; + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlRelationshipMapping#getTargetEntity <em>Target Entity</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Target Entity</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlRelationshipMapping#getTargetEntity() + * @see #getXmlRelationshipMapping() + * @generated + */ + public EAttribute getXmlRelationshipMapping_TargetEntity() + { + return (EAttribute)xmlRelationshipMappingEClass.getEStructuralFeatures().get(0); + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlRelationshipMapping#getFetch <em>Fetch</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Fetch</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlRelationshipMapping#getFetch() + * @see #getXmlRelationshipMapping() + * @generated + */ + public EAttribute getXmlRelationshipMapping_Fetch() + { + return (EAttribute)xmlRelationshipMappingEClass.getEStructuralFeatures().get(1); + } + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlRelationshipMapping#getJoinTable <em>Join Table</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Join Table</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlRelationshipMapping#getJoinTable() + * @see #getXmlRelationshipMapping() + * @generated + */ + public EReference getXmlRelationshipMapping_JoinTable() + { + return (EReference)xmlRelationshipMappingEClass.getEStructuralFeatures().get(2); + } + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlRelationshipMapping#getCascade <em>Cascade</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Cascade</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlRelationshipMapping#getCascade() + * @see #getXmlRelationshipMapping() + * @generated + */ + public EReference getXmlRelationshipMapping_Cascade() + { + return (EReference)xmlRelationshipMappingEClass.getEStructuralFeatures().get(3); + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMultiRelationshipMapping <em>Xml Multi Relationship Mapping</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Multi Relationship Mapping</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMultiRelationshipMapping + * @generated + */ + public EClass getXmlMultiRelationshipMapping() + { + return xmlMultiRelationshipMappingEClass; + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMultiRelationshipMapping#getMappedBy <em>Mapped By</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Mapped By</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMultiRelationshipMapping#getMappedBy() + * @see #getXmlMultiRelationshipMapping() + * @generated + */ + public EAttribute getXmlMultiRelationshipMapping_MappedBy() + { + return (EAttribute)xmlMultiRelationshipMappingEClass.getEStructuralFeatures().get(0); + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMultiRelationshipMapping#getOrderBy <em>Order By</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Order By</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMultiRelationshipMapping#getOrderBy() + * @see #getXmlMultiRelationshipMapping() + * @generated + */ + public EAttribute getXmlMultiRelationshipMapping_OrderBy() + { + return (EAttribute)xmlMultiRelationshipMappingEClass.getEStructuralFeatures().get(1); + } + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMultiRelationshipMapping#getMapKey <em>Map Key</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Map Key</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMultiRelationshipMapping#getMapKey() + * @see #getXmlMultiRelationshipMapping() + * @generated + */ + public EReference getXmlMultiRelationshipMapping_MapKey() + { + return (EReference)xmlMultiRelationshipMappingEClass.getEStructuralFeatures().get(2); + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlSingleRelationshipMapping <em>Xml Single Relationship Mapping</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Single Relationship Mapping</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlSingleRelationshipMapping + * @generated + */ + public EClass getXmlSingleRelationshipMapping() + { + return xmlSingleRelationshipMappingEClass; + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlSingleRelationshipMapping#getOptional <em>Optional</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Optional</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlSingleRelationshipMapping#getOptional() + * @see #getXmlSingleRelationshipMapping() + * @generated + */ + public EAttribute getXmlSingleRelationshipMapping_Optional() + { + return (EAttribute)xmlSingleRelationshipMappingEClass.getEStructuralFeatures().get(0); + } + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlSingleRelationshipMapping#getJoinColumns <em>Join Columns</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Join Columns</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlSingleRelationshipMapping#getJoinColumns() + * @see #getXmlSingleRelationshipMapping() + * @generated + */ + public EReference getXmlSingleRelationshipMapping_JoinColumns() + { + return (EReference)xmlSingleRelationshipMappingEClass.getEStructuralFeatures().get(1); + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlId <em>Xml Id</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Id</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlId + * @generated + */ + public EClass getXmlId() + { + return xmlIdEClass; + } + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlId#getGeneratedValue <em>Generated Value</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Generated Value</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlId#getGeneratedValue() + * @see #getXmlId() + * @generated + */ + public EReference getXmlId_GeneratedValue() + { + return (EReference)xmlIdEClass.getEStructuralFeatures().get(0); + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlId#getTemporal <em>Temporal</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Temporal</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlId#getTemporal() + * @see #getXmlId() + * @generated + */ + public EAttribute getXmlId_Temporal() + { + return (EAttribute)xmlIdEClass.getEStructuralFeatures().get(1); + } + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlId#getTableGenerator <em>Table Generator</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Table Generator</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlId#getTableGenerator() + * @see #getXmlId() + * @generated + */ + public EReference getXmlId_TableGenerator() + { + return (EReference)xmlIdEClass.getEStructuralFeatures().get(2); + } + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlId#getSequenceGenerator <em>Sequence Generator</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Sequence Generator</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlId#getSequenceGenerator() + * @see #getXmlId() + * @generated + */ + public EReference getXmlId_SequenceGenerator() + { + return (EReference)xmlIdEClass.getEStructuralFeatures().get(3); + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlIdImpl <em>Xml Id Impl</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Id Impl</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlIdImpl + * @generated + */ + public EClass getXmlIdImpl() + { + return xmlIdImplEClass; + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.BaseXmlEmbedded <em>Base Xml Embedded</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Base Xml Embedded</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.BaseXmlEmbedded + * @generated + */ + public EClass getBaseXmlEmbedded() + { + return baseXmlEmbeddedEClass; + } + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.BaseXmlEmbedded#getAttributeOverrides <em>Attribute Overrides</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Attribute Overrides</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.BaseXmlEmbedded#getAttributeOverrides() + * @see #getBaseXmlEmbedded() + * @generated + */ + public EReference getBaseXmlEmbedded_AttributeOverrides() + { + return (EReference)baseXmlEmbeddedEClass.getEStructuralFeatures().get(0); + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEmbeddedId <em>Xml Embedded Id</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Embedded Id</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEmbeddedId + * @generated + */ + public EClass getXmlEmbeddedId() + { + return xmlEmbeddedIdEClass; + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEmbeddedIdImpl <em>Xml Embedded Id Impl</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Embedded Id Impl</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEmbeddedIdImpl + * @generated + */ + public EClass getXmlEmbeddedIdImpl() + { + return xmlEmbeddedIdImplEClass; + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEmbedded <em>Xml Embedded</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Embedded</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEmbedded + * @generated + */ + public EClass getXmlEmbedded() + { + return xmlEmbeddedEClass; + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEmbeddedImpl <em>Xml Embedded Impl</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Embedded Impl</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEmbeddedImpl + * @generated + */ + public EClass getXmlEmbeddedImpl() + { + return xmlEmbeddedImplEClass; + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBasic <em>Xml Basic</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Basic</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBasic + * @generated + */ + public EClass getXmlBasic() + { + return xmlBasicEClass; + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBasic#getFetch <em>Fetch</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Fetch</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBasic#getFetch() + * @see #getXmlBasic() + * @generated + */ + public EAttribute getXmlBasic_Fetch() + { + return (EAttribute)xmlBasicEClass.getEStructuralFeatures().get(0); + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBasic#getOptional <em>Optional</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Optional</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBasic#getOptional() + * @see #getXmlBasic() + * @generated + */ + public EAttribute getXmlBasic_Optional() + { + return (EAttribute)xmlBasicEClass.getEStructuralFeatures().get(1); + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBasic#isLob <em>Lob</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Lob</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBasic#isLob() + * @see #getXmlBasic() + * @generated + */ + public EAttribute getXmlBasic_Lob() + { + return (EAttribute)xmlBasicEClass.getEStructuralFeatures().get(2); + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBasic#getTemporal <em>Temporal</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Temporal</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBasic#getTemporal() + * @see #getXmlBasic() + * @generated + */ + public EAttribute getXmlBasic_Temporal() + { + return (EAttribute)xmlBasicEClass.getEStructuralFeatures().get(3); + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBasic#getEnumerated <em>Enumerated</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Enumerated</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBasic#getEnumerated() + * @see #getXmlBasic() + * @generated + */ + public EAttribute getXmlBasic_Enumerated() + { + return (EAttribute)xmlBasicEClass.getEStructuralFeatures().get(4); + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBasicImpl <em>Xml Basic Impl</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Basic Impl</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBasicImpl + * @generated + */ + public EClass getXmlBasicImpl() + { + return xmlBasicImplEClass; + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlVersion <em>Xml Version</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Version</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlVersion + * @generated + */ + public EClass getXmlVersion() + { + return xmlVersionEClass; + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlVersion#getTemporal <em>Temporal</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Temporal</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlVersion#getTemporal() + * @see #getXmlVersion() + * @generated + */ + public EAttribute getXmlVersion_Temporal() + { + return (EAttribute)xmlVersionEClass.getEStructuralFeatures().get(0); + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlVersionImpl <em>Xml Version Impl</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Version Impl</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlVersionImpl + * @generated + */ + public EClass getXmlVersionImpl() + { + return xmlVersionImplEClass; + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlManyToOne <em>Xml Many To One</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Many To One</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlManyToOne + * @generated + */ + public EClass getXmlManyToOne() + { + return xmlManyToOneEClass; + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlManyToOneImpl <em>Xml Many To One Impl</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Many To One Impl</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlManyToOneImpl + * @generated + */ + public EClass getXmlManyToOneImpl() + { + return xmlManyToOneImplEClass; + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlOneToMany <em>Xml One To Many</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml One To Many</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlOneToMany + * @generated + */ + public EClass getXmlOneToMany() + { + return xmlOneToManyEClass; + } + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlOneToMany#getJoinColumns <em>Join Columns</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Join Columns</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlOneToMany#getJoinColumns() + * @see #getXmlOneToMany() + * @generated + */ + public EReference getXmlOneToMany_JoinColumns() + { + return (EReference)xmlOneToManyEClass.getEStructuralFeatures().get(0); + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlOneToManyImpl <em>Xml One To Many Impl</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml One To Many Impl</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlOneToManyImpl + * @generated + */ + public EClass getXmlOneToManyImpl() + { + return xmlOneToManyImplEClass; + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlOneToOne <em>Xml One To One</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml One To One</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlOneToOne + * @generated + */ + public EClass getXmlOneToOne() + { + return xmlOneToOneEClass; + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlOneToOne#getMappedBy <em>Mapped By</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Mapped By</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlOneToOne#getMappedBy() + * @see #getXmlOneToOne() + * @generated + */ + public EAttribute getXmlOneToOne_MappedBy() + { + return (EAttribute)xmlOneToOneEClass.getEStructuralFeatures().get(0); + } + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlOneToOne#getPrimaryKeyJoinColumns <em>Primary Key Join Columns</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Primary Key Join Columns</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlOneToOne#getPrimaryKeyJoinColumns() + * @see #getXmlOneToOne() + * @generated + */ + public EReference getXmlOneToOne_PrimaryKeyJoinColumns() + { + return (EReference)xmlOneToOneEClass.getEStructuralFeatures().get(1); + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlOneToOneImpl <em>Xml One To One Impl</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml One To One Impl</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlOneToOneImpl + * @generated + */ + public EClass getXmlOneToOneImpl() + { + return xmlOneToOneImplEClass; + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlManyToMany <em>Xml Many To Many</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Many To Many</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlManyToMany + * @generated + */ + public EClass getXmlManyToMany() + { + return xmlManyToManyEClass; + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlManyToManyImpl <em>Xml Many To Many Impl</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Many To Many Impl</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlManyToManyImpl + * @generated + */ + public EClass getXmlManyToManyImpl() + { + return xmlManyToManyImplEClass; + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTransient <em>Xml Transient</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Transient</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTransient + * @generated + */ + public EClass getXmlTransient() + { + return xmlTransientEClass; + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTransientImpl <em>Xml Transient Impl</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Transient Impl</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTransientImpl + * @generated + */ + public EClass getXmlTransientImpl() + { + return xmlTransientImplEClass; + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAssociationOverride <em>Xml Association Override</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Association Override</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAssociationOverride + * @generated + */ + public EClass getXmlAssociationOverride() + { + return xmlAssociationOverrideEClass; + } + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAssociationOverride#getJoinColumns <em>Join Columns</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Join Columns</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAssociationOverride#getJoinColumns() + * @see #getXmlAssociationOverride() + * @generated + */ + public EReference getXmlAssociationOverride_JoinColumns() + { + return (EReference)xmlAssociationOverrideEClass.getEStructuralFeatures().get(0); + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAssociationOverride#getName <em>Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Name</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAssociationOverride#getName() + * @see #getXmlAssociationOverride() + * @generated + */ + public EAttribute getXmlAssociationOverride_Name() + { + return (EAttribute)xmlAssociationOverrideEClass.getEStructuralFeatures().get(1); + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAssociationOverrideImpl <em>Xml Association Override Impl</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Association Override Impl</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAssociationOverrideImpl + * @generated + */ + public EClass getXmlAssociationOverrideImpl() + { + return xmlAssociationOverrideImplEClass; + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAttributeOverride <em>Xml Attribute Override</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Attribute Override</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAttributeOverride + * @generated + */ + public EClass getXmlAttributeOverride() + { + return xmlAttributeOverrideEClass; + } + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAttributeOverride#getColumn <em>Column</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Column</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAttributeOverride#getColumn() + * @see #getXmlAttributeOverride() + * @generated + */ + public EReference getXmlAttributeOverride_Column() + { + return (EReference)xmlAttributeOverrideEClass.getEStructuralFeatures().get(0); + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAttributeOverride#getName <em>Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Name</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAttributeOverride#getName() + * @see #getXmlAttributeOverride() + * @generated + */ + public EAttribute getXmlAttributeOverride_Name() + { + return (EAttribute)xmlAttributeOverrideEClass.getEStructuralFeatures().get(1); + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAttributeOverrideImpl <em>Xml Attribute Override Impl</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Attribute Override Impl</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAttributeOverrideImpl + * @generated + */ + public EClass getXmlAttributeOverrideImpl() + { + return xmlAttributeOverrideImplEClass; + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.CascadeType <em>Cascade Type</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Cascade Type</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.CascadeType + * @generated + */ + public EClass getCascadeType() + { + return cascadeTypeEClass; + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.CascadeType#isCascadeAll <em>Cascade All</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Cascade All</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.CascadeType#isCascadeAll() + * @see #getCascadeType() + * @generated + */ + public EAttribute getCascadeType_CascadeAll() + { + return (EAttribute)cascadeTypeEClass.getEStructuralFeatures().get(0); + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.CascadeType#isCascadePersist <em>Cascade Persist</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Cascade Persist</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.CascadeType#isCascadePersist() + * @see #getCascadeType() + * @generated + */ + public EAttribute getCascadeType_CascadePersist() + { + return (EAttribute)cascadeTypeEClass.getEStructuralFeatures().get(1); + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.CascadeType#isCascadeMerge <em>Cascade Merge</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Cascade Merge</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.CascadeType#isCascadeMerge() + * @see #getCascadeType() + * @generated + */ + public EAttribute getCascadeType_CascadeMerge() + { + return (EAttribute)cascadeTypeEClass.getEStructuralFeatures().get(2); + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.CascadeType#isCascadeRemove <em>Cascade Remove</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Cascade Remove</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.CascadeType#isCascadeRemove() + * @see #getCascadeType() + * @generated + */ + public EAttribute getCascadeType_CascadeRemove() + { + return (EAttribute)cascadeTypeEClass.getEStructuralFeatures().get(3); + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.CascadeType#isCascadeRefresh <em>Cascade Refresh</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Cascade Refresh</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.CascadeType#isCascadeRefresh() + * @see #getCascadeType() + * @generated + */ + public EAttribute getCascadeType_CascadeRefresh() + { + return (EAttribute)cascadeTypeEClass.getEStructuralFeatures().get(4); + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.CascadeTypeImpl <em>Cascade Type Impl</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Cascade Type Impl</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.CascadeTypeImpl + * @generated + */ + public EClass getCascadeTypeImpl() + { + return cascadeTypeImplEClass; + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlNamedColumn <em>Xml Named Column</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Named Column</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlNamedColumn + * @generated + */ + public EClass getXmlNamedColumn() + { + return xmlNamedColumnEClass; + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlNamedColumn#getColumnDefinition <em>Column Definition</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Column Definition</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlNamedColumn#getColumnDefinition() + * @see #getXmlNamedColumn() + * @generated + */ + public EAttribute getXmlNamedColumn_ColumnDefinition() + { + return (EAttribute)xmlNamedColumnEClass.getEStructuralFeatures().get(0); + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlNamedColumn#getName <em>Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Name</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlNamedColumn#getName() + * @see #getXmlNamedColumn() + * @generated + */ + public EAttribute getXmlNamedColumn_Name() + { + return (EAttribute)xmlNamedColumnEClass.getEStructuralFeatures().get(1); + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlNamedColumn <em>Abstract Xml Named Column</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Abstract Xml Named Column</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlNamedColumn + * @generated + */ + public EClass getAbstractXmlNamedColumn() + { + return abstractXmlNamedColumnEClass; + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAbstractColumn <em>Xml Abstract Column</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Abstract Column</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAbstractColumn + * @generated + */ + public EClass getXmlAbstractColumn() + { + return xmlAbstractColumnEClass; + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAbstractColumn#getInsertable <em>Insertable</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Insertable</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAbstractColumn#getInsertable() + * @see #getXmlAbstractColumn() + * @generated + */ + public EAttribute getXmlAbstractColumn_Insertable() + { + return (EAttribute)xmlAbstractColumnEClass.getEStructuralFeatures().get(0); + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAbstractColumn#getNullable <em>Nullable</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Nullable</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAbstractColumn#getNullable() + * @see #getXmlAbstractColumn() + * @generated + */ + public EAttribute getXmlAbstractColumn_Nullable() + { + return (EAttribute)xmlAbstractColumnEClass.getEStructuralFeatures().get(1); + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAbstractColumn#getTable <em>Table</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Table</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAbstractColumn#getTable() + * @see #getXmlAbstractColumn() + * @generated + */ + public EAttribute getXmlAbstractColumn_Table() + { + return (EAttribute)xmlAbstractColumnEClass.getEStructuralFeatures().get(2); + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAbstractColumn#getUnique <em>Unique</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Unique</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAbstractColumn#getUnique() + * @see #getXmlAbstractColumn() + * @generated + */ + public EAttribute getXmlAbstractColumn_Unique() + { + return (EAttribute)xmlAbstractColumnEClass.getEStructuralFeatures().get(3); + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAbstractColumn#getUpdatable <em>Updatable</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Updatable</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAbstractColumn#getUpdatable() + * @see #getXmlAbstractColumn() + * @generated + */ + public EAttribute getXmlAbstractColumn_Updatable() + { + return (EAttribute)xmlAbstractColumnEClass.getEStructuralFeatures().get(4); + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlAbstractColumn <em>Abstract Xml Abstract Column</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Abstract Xml Abstract Column</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlAbstractColumn + * @generated + */ + public EClass getAbstractXmlAbstractColumn() + { + return abstractXmlAbstractColumnEClass; + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlColumn <em>Xml Column</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Column</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlColumn + * @generated + */ + public EClass getXmlColumn() + { + return xmlColumnEClass; + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlColumn#getLength <em>Length</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Length</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlColumn#getLength() + * @see #getXmlColumn() + * @generated + */ + public EAttribute getXmlColumn_Length() + { + return (EAttribute)xmlColumnEClass.getEStructuralFeatures().get(0); + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlColumn#getPrecision <em>Precision</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Precision</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlColumn#getPrecision() + * @see #getXmlColumn() + * @generated + */ + public EAttribute getXmlColumn_Precision() + { + return (EAttribute)xmlColumnEClass.getEStructuralFeatures().get(1); + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlColumn#getScale <em>Scale</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Scale</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlColumn#getScale() + * @see #getXmlColumn() + * @generated + */ + public EAttribute getXmlColumn_Scale() + { + return (EAttribute)xmlColumnEClass.getEStructuralFeatures().get(2); + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlColumnImpl <em>Xml Column Impl</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Column Impl</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlColumnImpl + * @generated + */ + public EClass getXmlColumnImpl() + { + return xmlColumnImplEClass; + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.ColumnResult <em>Column Result</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Column Result</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.ColumnResult + * @generated + */ + public EClass getColumnResult() + { + return columnResultEClass; + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.ColumnResult#getName <em>Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Name</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.ColumnResult#getName() + * @see #getColumnResult() + * @generated + */ + public EAttribute getColumnResult_Name() + { + return (EAttribute)columnResultEClass.getEStructuralFeatures().get(0); + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlDiscriminatorColumn <em>Xml Discriminator Column</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Discriminator Column</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlDiscriminatorColumn + * @generated + */ + public EClass getXmlDiscriminatorColumn() + { + return xmlDiscriminatorColumnEClass; + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlDiscriminatorColumn#getDiscriminatorType <em>Discriminator Type</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Discriminator Type</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlDiscriminatorColumn#getDiscriminatorType() + * @see #getXmlDiscriminatorColumn() + * @generated + */ + public EAttribute getXmlDiscriminatorColumn_DiscriminatorType() + { + return (EAttribute)xmlDiscriminatorColumnEClass.getEStructuralFeatures().get(0); + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlDiscriminatorColumn#getLength <em>Length</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Length</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlDiscriminatorColumn#getLength() + * @see #getXmlDiscriminatorColumn() + * @generated + */ + public EAttribute getXmlDiscriminatorColumn_Length() + { + return (EAttribute)xmlDiscriminatorColumnEClass.getEStructuralFeatures().get(1); + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.EntityListeners <em>Entity Listeners</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Entity Listeners</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EntityListeners + * @generated + */ + public EClass getEntityListeners() + { + return entityListenersEClass; + } + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.EntityListeners#getEntityListeners <em>Entity Listeners</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Entity Listeners</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EntityListeners#getEntityListeners() + * @see #getEntityListeners() + * @generated + */ + public EReference getEntityListeners_EntityListeners() + { + return (EReference)entityListenersEClass.getEStructuralFeatures().get(0); + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.EntityListener <em>Entity Listener</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Entity Listener</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EntityListener + * @generated + */ + public EClass getEntityListener() + { + return entityListenerEClass; + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.EntityListener#getClassName <em>Class Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Class Name</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EntityListener#getClassName() + * @see #getEntityListener() + * @generated + */ + public EAttribute getEntityListener_ClassName() + { + return (EAttribute)entityListenerEClass.getEStructuralFeatures().get(0); + } + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.EntityListener#getPrePersist <em>Pre Persist</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Pre Persist</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EntityListener#getPrePersist() + * @see #getEntityListener() + * @generated + */ + public EReference getEntityListener_PrePersist() + { + return (EReference)entityListenerEClass.getEStructuralFeatures().get(1); + } + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.EntityListener#getPostPersist <em>Post Persist</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Post Persist</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EntityListener#getPostPersist() + * @see #getEntityListener() + * @generated + */ + public EReference getEntityListener_PostPersist() + { + return (EReference)entityListenerEClass.getEStructuralFeatures().get(2); + } + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.EntityListener#getPreRemove <em>Pre Remove</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Pre Remove</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EntityListener#getPreRemove() + * @see #getEntityListener() + * @generated + */ + public EReference getEntityListener_PreRemove() + { + return (EReference)entityListenerEClass.getEStructuralFeatures().get(3); + } + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.EntityListener#getPostRemove <em>Post Remove</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Post Remove</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EntityListener#getPostRemove() + * @see #getEntityListener() + * @generated + */ + public EReference getEntityListener_PostRemove() + { + return (EReference)entityListenerEClass.getEStructuralFeatures().get(4); + } + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.EntityListener#getPreUpdate <em>Pre Update</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Pre Update</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EntityListener#getPreUpdate() + * @see #getEntityListener() + * @generated + */ + public EReference getEntityListener_PreUpdate() + { + return (EReference)entityListenerEClass.getEStructuralFeatures().get(5); + } + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.EntityListener#getPostUpdate <em>Post Update</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Post Update</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EntityListener#getPostUpdate() + * @see #getEntityListener() + * @generated + */ + public EReference getEntityListener_PostUpdate() + { + return (EReference)entityListenerEClass.getEStructuralFeatures().get(6); + } + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.EntityListener#getPostLoad <em>Post Load</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Post Load</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EntityListener#getPostLoad() + * @see #getEntityListener() + * @generated + */ + public EReference getEntityListener_PostLoad() + { + return (EReference)entityListenerEClass.getEStructuralFeatures().get(7); + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.EntityResult <em>Entity Result</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Entity Result</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EntityResult + * @generated + */ + public EClass getEntityResult() + { + return entityResultEClass; + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.EntityResult#getDiscriminatorColumn <em>Discriminator Column</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Discriminator Column</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EntityResult#getDiscriminatorColumn() + * @see #getEntityResult() + * @generated + */ + public EAttribute getEntityResult_DiscriminatorColumn() + { + return (EAttribute)entityResultEClass.getEStructuralFeatures().get(0); + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.EntityResult#getEntityClass <em>Entity Class</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Entity Class</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EntityResult#getEntityClass() + * @see #getEntityResult() + * @generated + */ + public EAttribute getEntityResult_EntityClass() + { + return (EAttribute)entityResultEClass.getEStructuralFeatures().get(1); + } + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.EntityResult#getFieldResults <em>Field Results</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Field Results</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EntityResult#getFieldResults() + * @see #getEntityResult() + * @generated + */ + public EReference getEntityResult_FieldResults() + { + return (EReference)entityResultEClass.getEStructuralFeatures().get(2); + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.EventMethod <em>Event Method</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Event Method</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EventMethod + * @generated + */ + public EClass getEventMethod() + { + return eventMethodEClass; + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.EventMethod#getMethodName <em>Method Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Method Name</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EventMethod#getMethodName() + * @see #getEventMethod() + * @generated + */ + public EAttribute getEventMethod_MethodName() + { + return (EAttribute)eventMethodEClass.getEStructuralFeatures().get(0); + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.FieldResult <em>Field Result</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Field Result</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.FieldResult + * @generated + */ + public EClass getFieldResult() + { + return fieldResultEClass; + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.FieldResult#getName <em>Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Name</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.FieldResult#getName() + * @see #getFieldResult() + * @generated + */ + public EAttribute getFieldResult_Name() + { + return (EAttribute)fieldResultEClass.getEStructuralFeatures().get(0); + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.FieldResult#getColumn <em>Column</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Column</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.FieldResult#getColumn() + * @see #getFieldResult() + * @generated + */ + public EAttribute getFieldResult_Column() + { + return (EAttribute)fieldResultEClass.getEStructuralFeatures().get(1); + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlGeneratedValue <em>Xml Generated Value</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Generated Value</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlGeneratedValue + * @generated + */ + public EClass getXmlGeneratedValue() + { + return xmlGeneratedValueEClass; + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlGeneratedValue#getGenerator <em>Generator</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Generator</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlGeneratedValue#getGenerator() + * @see #getXmlGeneratedValue() + * @generated + */ + public EAttribute getXmlGeneratedValue_Generator() + { + return (EAttribute)xmlGeneratedValueEClass.getEStructuralFeatures().get(0); + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlGeneratedValue#getStrategy <em>Strategy</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Strategy</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlGeneratedValue#getStrategy() + * @see #getXmlGeneratedValue() + * @generated + */ + public EAttribute getXmlGeneratedValue_Strategy() + { + return (EAttribute)xmlGeneratedValueEClass.getEStructuralFeatures().get(1); + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlGeneratedValueImpl <em>Xml Generated Value Impl</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Generated Value Impl</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlGeneratedValueImpl + * @generated + */ + public EClass getXmlGeneratedValueImpl() + { + return xmlGeneratedValueImplEClass; + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlIdClass <em>Xml Id Class</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Id Class</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlIdClass + * @generated + */ + public EClass getXmlIdClass() + { + return xmlIdClassEClass; + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlIdClass#getClassName <em>Class Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Class Name</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlIdClass#getClassName() + * @see #getXmlIdClass() + * @generated + */ + public EAttribute getXmlIdClass_ClassName() + { + return (EAttribute)xmlIdClassEClass.getEStructuralFeatures().get(0); + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.Inheritance <em>Inheritance</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Inheritance</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.Inheritance + * @generated + */ + public EClass getInheritance() + { + return inheritanceEClass; + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.Inheritance#getStrategy <em>Strategy</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Strategy</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.Inheritance#getStrategy() + * @see #getInheritance() + * @generated + */ + public EAttribute getInheritance_Strategy() + { + return (EAttribute)inheritanceEClass.getEStructuralFeatures().get(0); + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlJoinColumn <em>Xml Join Column</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Join Column</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlJoinColumn + * @generated + */ + public EClass getXmlJoinColumn() + { + return xmlJoinColumnEClass; + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlJoinColumn#getReferencedColumnName <em>Referenced Column Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Referenced Column Name</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlJoinColumn#getReferencedColumnName() + * @see #getXmlJoinColumn() + * @generated + */ + public EAttribute getXmlJoinColumn_ReferencedColumnName() + { + return (EAttribute)xmlJoinColumnEClass.getEStructuralFeatures().get(0); + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlJoinColumnImpl <em>Xml Join Column Impl</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Join Column Impl</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlJoinColumnImpl + * @generated + */ + public EClass getXmlJoinColumnImpl() + { + return xmlJoinColumnImplEClass; + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlJoinTable <em>Xml Join Table</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Join Table</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlJoinTable + * @generated + */ + public EClass getXmlJoinTable() + { + return xmlJoinTableEClass; + } + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlJoinTable#getJoinColumns <em>Join Columns</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Join Columns</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlJoinTable#getJoinColumns() + * @see #getXmlJoinTable() + * @generated + */ + public EReference getXmlJoinTable_JoinColumns() + { + return (EReference)xmlJoinTableEClass.getEStructuralFeatures().get(0); + } + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlJoinTable#getInverseJoinColumns <em>Inverse Join Columns</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Inverse Join Columns</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlJoinTable#getInverseJoinColumns() + * @see #getXmlJoinTable() + * @generated + */ + public EReference getXmlJoinTable_InverseJoinColumns() + { + return (EReference)xmlJoinTableEClass.getEStructuralFeatures().get(1); + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlJoinTableImpl <em>Xml Join Table Impl</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Join Table Impl</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlJoinTableImpl + * @generated + */ + public EClass getXmlJoinTableImpl() + { + return xmlJoinTableImplEClass; + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.Lob <em>Lob</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Lob</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.Lob + * @generated + */ + public EClass getLob() + { + return lobEClass; + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.MapKey <em>Map Key</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Map Key</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.MapKey + * @generated + */ + public EClass getMapKey() + { + return mapKeyEClass; + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.MapKey#getName <em>Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Name</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.MapKey#getName() + * @see #getMapKey() + * @generated + */ + public EAttribute getMapKey_Name() + { + return (EAttribute)mapKeyEClass.getEStructuralFeatures().get(0); + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.MapKeyImpl <em>Map Key Impl</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Map Key Impl</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.MapKeyImpl + * @generated + */ + public EClass getMapKeyImpl() + { + return mapKeyImplEClass; + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlQuery <em>Xml Query</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Query</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlQuery + * @generated + */ + public EClass getXmlQuery() + { + return xmlQueryEClass; + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlQuery#getName <em>Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Name</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlQuery#getName() + * @see #getXmlQuery() + * @generated + */ + public EAttribute getXmlQuery_Name() + { + return (EAttribute)xmlQueryEClass.getEStructuralFeatures().get(0); + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlQuery#getQuery <em>Query</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Query</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlQuery#getQuery() + * @see #getXmlQuery() + * @generated + */ + public EAttribute getXmlQuery_Query() + { + return (EAttribute)xmlQueryEClass.getEStructuralFeatures().get(1); + } + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlQuery#getHints <em>Hints</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Hints</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlQuery#getHints() + * @see #getXmlQuery() + * @generated + */ + public EReference getXmlQuery_Hints() + { + return (EReference)xmlQueryEClass.getEStructuralFeatures().get(2); + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlNamedNativeQuery <em>Xml Named Native Query</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Named Native Query</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlNamedNativeQuery + * @generated + */ + public EClass getXmlNamedNativeQuery() + { + return xmlNamedNativeQueryEClass; + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlNamedNativeQuery#getResultClass <em>Result Class</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Result Class</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlNamedNativeQuery#getResultClass() + * @see #getXmlNamedNativeQuery() + * @generated + */ + public EAttribute getXmlNamedNativeQuery_ResultClass() + { + return (EAttribute)xmlNamedNativeQueryEClass.getEStructuralFeatures().get(0); + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlNamedNativeQuery#getResultSetMapping <em>Result Set Mapping</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Result Set Mapping</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlNamedNativeQuery#getResultSetMapping() + * @see #getXmlNamedNativeQuery() + * @generated + */ + public EAttribute getXmlNamedNativeQuery_ResultSetMapping() + { + return (EAttribute)xmlNamedNativeQueryEClass.getEStructuralFeatures().get(1); + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlNamedQuery <em>Xml Named Query</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Named Query</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlNamedQuery + * @generated + */ + public EClass getXmlNamedQuery() + { + return xmlNamedQueryEClass; + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.PostLoad <em>Post Load</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Post Load</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.PostLoad + * @generated + */ + public EClass getPostLoad() + { + return postLoadEClass; + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.PostPersist <em>Post Persist</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Post Persist</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.PostPersist + * @generated + */ + public EClass getPostPersist() + { + return postPersistEClass; + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.PostRemove <em>Post Remove</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Post Remove</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.PostRemove + * @generated + */ + public EClass getPostRemove() + { + return postRemoveEClass; + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.PostUpdate <em>Post Update</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Post Update</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.PostUpdate + * @generated + */ + public EClass getPostUpdate() + { + return postUpdateEClass; + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.PrePersist <em>Pre Persist</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Pre Persist</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.PrePersist + * @generated + */ + public EClass getPrePersist() + { + return prePersistEClass; + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.PreRemove <em>Pre Remove</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Pre Remove</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.PreRemove + * @generated + */ + public EClass getPreRemove() + { + return preRemoveEClass; + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.PreUpdate <em>Pre Update</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Pre Update</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.PreUpdate + * @generated + */ + public EClass getPreUpdate() + { + return preUpdateEClass; + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPrimaryKeyJoinColumn <em>Xml Primary Key Join Column</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Primary Key Join Column</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPrimaryKeyJoinColumn + * @generated + */ + public EClass getXmlPrimaryKeyJoinColumn() + { + return xmlPrimaryKeyJoinColumnEClass; + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPrimaryKeyJoinColumn#getReferencedColumnName <em>Referenced Column Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Referenced Column Name</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPrimaryKeyJoinColumn#getReferencedColumnName() + * @see #getXmlPrimaryKeyJoinColumn() + * @generated + */ + public EAttribute getXmlPrimaryKeyJoinColumn_ReferencedColumnName() + { + return (EAttribute)xmlPrimaryKeyJoinColumnEClass.getEStructuralFeatures().get(0); + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPrimaryKeyJoinColumnImpl <em>Xml Primary Key Join Column Impl</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Primary Key Join Column Impl</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPrimaryKeyJoinColumnImpl + * @generated + */ + public EClass getXmlPrimaryKeyJoinColumnImpl() + { + return xmlPrimaryKeyJoinColumnImplEClass; + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlQueryHint <em>Xml Query Hint</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Query Hint</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlQueryHint + * @generated + */ + public EClass getXmlQueryHint() + { + return xmlQueryHintEClass; + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlQueryHint#getName <em>Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Name</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlQueryHint#getName() + * @see #getXmlQueryHint() + * @generated + */ + public EAttribute getXmlQueryHint_Name() + { + return (EAttribute)xmlQueryHintEClass.getEStructuralFeatures().get(0); + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlQueryHint#getValue <em>Value</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Value</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlQueryHint#getValue() + * @see #getXmlQueryHint() + * @generated + */ + public EAttribute getXmlQueryHint_Value() + { + return (EAttribute)xmlQueryHintEClass.getEStructuralFeatures().get(1); + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlBaseTable <em>Abstract Xml Base Table</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Abstract Xml Base Table</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlBaseTable + * @generated + */ + public EClass getAbstractXmlBaseTable() + { + return abstractXmlBaseTableEClass; + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBaseTable <em>Xml Base Table</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Base Table</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBaseTable + * @generated + */ + public EClass getXmlBaseTable() + { + return xmlBaseTableEClass; + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBaseTable#getName <em>Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Name</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBaseTable#getName() + * @see #getXmlBaseTable() + * @generated + */ + public EAttribute getXmlBaseTable_Name() + { + return (EAttribute)xmlBaseTableEClass.getEStructuralFeatures().get(0); + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBaseTable#getCatalog <em>Catalog</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Catalog</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBaseTable#getCatalog() + * @see #getXmlBaseTable() + * @generated + */ + public EAttribute getXmlBaseTable_Catalog() + { + return (EAttribute)xmlBaseTableEClass.getEStructuralFeatures().get(1); + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBaseTable#getSchema <em>Schema</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Schema</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBaseTable#getSchema() + * @see #getXmlBaseTable() + * @generated + */ + public EAttribute getXmlBaseTable_Schema() + { + return (EAttribute)xmlBaseTableEClass.getEStructuralFeatures().get(2); + } + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBaseTable#getUniqueConstraints <em>Unique Constraints</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Unique Constraints</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBaseTable#getUniqueConstraints() + * @see #getXmlBaseTable() + * @generated + */ + public EReference getXmlBaseTable_UniqueConstraints() + { + return (EReference)xmlBaseTableEClass.getEStructuralFeatures().get(3); + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTable <em>Xml Table</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Table</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTable + * @generated + */ + public EClass getXmlTable() + { + return xmlTableEClass; + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlSecondaryTable <em>Xml Secondary Table</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Secondary Table</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlSecondaryTable + * @generated + */ + public EClass getXmlSecondaryTable() + { + return xmlSecondaryTableEClass; + } + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlSecondaryTable#getPrimaryKeyJoinColumns <em>Primary Key Join Columns</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Primary Key Join Columns</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlSecondaryTable#getPrimaryKeyJoinColumns() + * @see #getXmlSecondaryTable() + * @generated + */ + public EReference getXmlSecondaryTable_PrimaryKeyJoinColumns() + { + return (EReference)xmlSecondaryTableEClass.getEStructuralFeatures().get(0); + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlSecondaryTableImpl <em>Xml Secondary Table Impl</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Secondary Table Impl</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlSecondaryTableImpl + * @generated + */ + public EClass getXmlSecondaryTableImpl() + { + return xmlSecondaryTableImplEClass; + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlGenerator <em>Xml Generator</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Generator</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlGenerator + * @generated + */ + public EClass getXmlGenerator() + { + return xmlGeneratorEClass; + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlGenerator#getName <em>Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Name</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlGenerator#getName() + * @see #getXmlGenerator() + * @generated + */ + public EAttribute getXmlGenerator_Name() + { + return (EAttribute)xmlGeneratorEClass.getEStructuralFeatures().get(0); + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlGenerator#getInitialValue <em>Initial Value</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Initial Value</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlGenerator#getInitialValue() + * @see #getXmlGenerator() + * @generated + */ + public EAttribute getXmlGenerator_InitialValue() + { + return (EAttribute)xmlGeneratorEClass.getEStructuralFeatures().get(1); + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlGenerator#getAllocationSize <em>Allocation Size</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Allocation Size</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlGenerator#getAllocationSize() + * @see #getXmlGenerator() + * @generated + */ + public EAttribute getXmlGenerator_AllocationSize() + { + return (EAttribute)xmlGeneratorEClass.getEStructuralFeatures().get(2); + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlSequenceGenerator <em>Xml Sequence Generator</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Sequence Generator</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlSequenceGenerator + * @generated + */ + public EClass getXmlSequenceGenerator() + { + return xmlSequenceGeneratorEClass; + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlSequenceGenerator#getSequenceName <em>Sequence Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Sequence Name</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlSequenceGenerator#getSequenceName() + * @see #getXmlSequenceGenerator() + * @generated + */ + public EAttribute getXmlSequenceGenerator_SequenceName() + { + return (EAttribute)xmlSequenceGeneratorEClass.getEStructuralFeatures().get(0); + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlSequenceGeneratorImpl <em>Xml Sequence Generator Impl</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Sequence Generator Impl</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlSequenceGeneratorImpl + * @generated + */ + public EClass getXmlSequenceGeneratorImpl() + { + return xmlSequenceGeneratorImplEClass; + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.SqlResultSetMapping <em>Sql Result Set Mapping</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Sql Result Set Mapping</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.SqlResultSetMapping + * @generated + */ + public EClass getSqlResultSetMapping() + { + return sqlResultSetMappingEClass; + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.SqlResultSetMapping#getName <em>Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Name</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.SqlResultSetMapping#getName() + * @see #getSqlResultSetMapping() + * @generated + */ + public EAttribute getSqlResultSetMapping_Name() + { + return (EAttribute)sqlResultSetMappingEClass.getEStructuralFeatures().get(0); + } + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.SqlResultSetMapping#getEntityResults <em>Entity Results</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Entity Results</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.SqlResultSetMapping#getEntityResults() + * @see #getSqlResultSetMapping() + * @generated + */ + public EReference getSqlResultSetMapping_EntityResults() + { + return (EReference)sqlResultSetMappingEClass.getEStructuralFeatures().get(1); + } + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.SqlResultSetMapping#getColumnResults <em>Column Results</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Column Results</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.SqlResultSetMapping#getColumnResults() + * @see #getSqlResultSetMapping() + * @generated + */ + public EReference getSqlResultSetMapping_ColumnResults() + { + return (EReference)sqlResultSetMappingEClass.getEStructuralFeatures().get(2); + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTableGenerator <em>Xml Table Generator</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Table Generator</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTableGenerator + * @generated + */ + public EClass getXmlTableGenerator() + { + return xmlTableGeneratorEClass; + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTableGenerator#getTable <em>Table</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Table</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTableGenerator#getTable() + * @see #getXmlTableGenerator() + * @generated + */ + public EAttribute getXmlTableGenerator_Table() + { + return (EAttribute)xmlTableGeneratorEClass.getEStructuralFeatures().get(0); + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTableGenerator#getCatalog <em>Catalog</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Catalog</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTableGenerator#getCatalog() + * @see #getXmlTableGenerator() + * @generated + */ + public EAttribute getXmlTableGenerator_Catalog() + { + return (EAttribute)xmlTableGeneratorEClass.getEStructuralFeatures().get(1); + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTableGenerator#getSchema <em>Schema</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Schema</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTableGenerator#getSchema() + * @see #getXmlTableGenerator() + * @generated + */ + public EAttribute getXmlTableGenerator_Schema() + { + return (EAttribute)xmlTableGeneratorEClass.getEStructuralFeatures().get(2); + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTableGenerator#getPkColumnName <em>Pk Column Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Pk Column Name</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTableGenerator#getPkColumnName() + * @see #getXmlTableGenerator() + * @generated + */ + public EAttribute getXmlTableGenerator_PkColumnName() + { + return (EAttribute)xmlTableGeneratorEClass.getEStructuralFeatures().get(3); + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTableGenerator#getValueColumnName <em>Value Column Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Value Column Name</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTableGenerator#getValueColumnName() + * @see #getXmlTableGenerator() + * @generated + */ + public EAttribute getXmlTableGenerator_ValueColumnName() + { + return (EAttribute)xmlTableGeneratorEClass.getEStructuralFeatures().get(4); + } + + /** + * Returns the meta object for the attribute '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTableGenerator#getPkColumnValue <em>Pk Column Value</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Pk Column Value</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTableGenerator#getPkColumnValue() + * @see #getXmlTableGenerator() + * @generated + */ + public EAttribute getXmlTableGenerator_PkColumnValue() + { + return (EAttribute)xmlTableGeneratorEClass.getEStructuralFeatures().get(5); + } + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTableGenerator#getUniqueConstraints <em>Unique Constraints</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Unique Constraints</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTableGenerator#getUniqueConstraints() + * @see #getXmlTableGenerator() + * @generated + */ + public EReference getXmlTableGenerator_UniqueConstraints() + { + return (EReference)xmlTableGeneratorEClass.getEStructuralFeatures().get(6); + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTableGeneratorImpl <em>Xml Table Generator Impl</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Table Generator Impl</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTableGeneratorImpl + * @generated + */ + public EClass getXmlTableGeneratorImpl() + { + return xmlTableGeneratorImplEClass; + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlUniqueConstraint <em>Xml Unique Constraint</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Unique Constraint</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlUniqueConstraint + * @generated + */ + public EClass getXmlUniqueConstraint() + { + return xmlUniqueConstraintEClass; + } + + /** + * Returns the meta object for the attribute list '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlUniqueConstraint#getColumnNames <em>Column Names</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute list '<em>Column Names</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlUniqueConstraint#getColumnNames() + * @see #getXmlUniqueConstraint() + * @generated + */ + public EAttribute getXmlUniqueConstraint_ColumnNames() + { + return (EAttribute)xmlUniqueConstraintEClass.getEStructuralFeatures().get(0); + } + + /** + * Returns the meta object for class '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlUniqueConstraintImpl <em>Xml Unique Constraint Impl</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Xml Unique Constraint Impl</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlUniqueConstraintImpl + * @generated + */ + public EClass getXmlUniqueConstraintImpl() + { + return xmlUniqueConstraintImplEClass; + } + + /** + * Returns the meta object for enum '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.AccessType <em>Access Type</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for enum '<em>Access Type</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.AccessType + * @generated + */ + public EEnum getAccessType() + { + return accessTypeEEnum; + } + + /** + * Returns the meta object for enum '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.DiscriminatorType <em>Discriminator Type</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for enum '<em>Discriminator Type</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.DiscriminatorType + * @generated + */ + public EEnum getDiscriminatorType() + { + return discriminatorTypeEEnum; + } + + /** + * Returns the meta object for enum '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.EnumType <em>Enum Type</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for enum '<em>Enum Type</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EnumType + * @generated + */ + public EEnum getEnumType() + { + return enumTypeEEnum; + } + + /** + * Returns the meta object for enum '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.FetchType <em>Fetch Type</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for enum '<em>Fetch Type</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.FetchType + * @generated + */ + public EEnum getFetchType() + { + return fetchTypeEEnum; + } + + /** + * Returns the meta object for enum '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.GenerationType <em>Generation Type</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for enum '<em>Generation Type</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.GenerationType + * @generated + */ + public EEnum getGenerationType() + { + return generationTypeEEnum; + } + + /** + * Returns the meta object for enum '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.InheritanceType <em>Inheritance Type</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for enum '<em>Inheritance Type</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.InheritanceType + * @generated + */ + public EEnum getInheritanceType() + { + return inheritanceTypeEEnum; + } + + /** + * Returns the meta object for enum '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.TemporalType <em>Temporal Type</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for enum '<em>Temporal Type</em>'. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.TemporalType + * @generated + */ + public EEnum getTemporalType() + { + return temporalTypeEEnum; + } + + /** + * Returns the meta object for data type '{@link java.lang.String <em>Discriminator Value</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for data type '<em>Discriminator Value</em>'. + * @see java.lang.String + * @model instanceClass="java.lang.String" + * @generated + */ + public EDataType getDiscriminatorValue() + { + return discriminatorValueEDataType; + } + + /** + * Returns the meta object for data type '{@link org.eclipse.emf.common.util.Enumerator <em>Enumerated</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for data type '<em>Enumerated</em>'. + * @see org.eclipse.emf.common.util.Enumerator + * @model instanceClass="org.eclipse.emf.common.util.Enumerator" + * @generated + */ + public EDataType getEnumerated() + { + return enumeratedEDataType; + } + + /** + * Returns the meta object for data type '{@link java.lang.String <em>Order By</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for data type '<em>Order By</em>'. + * @see java.lang.String + * @model instanceClass="java.lang.String" + * @generated + */ + public EDataType getOrderBy() + { + return orderByEDataType; + } + + /** + * Returns the meta object for data type '{@link java.lang.String <em>Version Type</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for data type '<em>Version Type</em>'. + * @see java.lang.String + * @model instanceClass="java.lang.String" + * @generated + */ + public EDataType getVersionType() + { + return versionTypeEDataType; + } + + /** + * Returns the factory that creates the instances of the model. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the factory that creates the instances of the model. + * @generated + */ + public EclipseLinkOrmFactory getEclipseLinkOrmFactory() + { + return (EclipseLinkOrmFactory)getEFactoryInstance(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private boolean isCreated = false; + + /** + * Creates the meta-model objects for the package. This method is + * guarded to have no affect on any invocation but its first. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void createPackageContents() + { + if (isCreated) return; + isCreated = true; + + // Create classes and their features + xmlEntityMappingsEClass = createEClass(XML_ENTITY_MAPPINGS); + createEAttribute(xmlEntityMappingsEClass, XML_ENTITY_MAPPINGS__VERSION); + createEAttribute(xmlEntityMappingsEClass, XML_ENTITY_MAPPINGS__DESCRIPTION); + createEReference(xmlEntityMappingsEClass, XML_ENTITY_MAPPINGS__PERSISTENCE_UNIT_METADATA); + createEAttribute(xmlEntityMappingsEClass, XML_ENTITY_MAPPINGS__PACKAGE); + createEAttribute(xmlEntityMappingsEClass, XML_ENTITY_MAPPINGS__SCHEMA); + createEAttribute(xmlEntityMappingsEClass, XML_ENTITY_MAPPINGS__CATALOG); + createEAttribute(xmlEntityMappingsEClass, XML_ENTITY_MAPPINGS__ACCESS); + createEReference(xmlEntityMappingsEClass, XML_ENTITY_MAPPINGS__SEQUENCE_GENERATORS); + createEReference(xmlEntityMappingsEClass, XML_ENTITY_MAPPINGS__TABLE_GENERATORS); + createEReference(xmlEntityMappingsEClass, XML_ENTITY_MAPPINGS__NAMED_QUERIES); + createEReference(xmlEntityMappingsEClass, XML_ENTITY_MAPPINGS__NAMED_NATIVE_QUERIES); + createEReference(xmlEntityMappingsEClass, XML_ENTITY_MAPPINGS__SQL_RESULT_SET_MAPPINGS); + createEReference(xmlEntityMappingsEClass, XML_ENTITY_MAPPINGS__MAPPED_SUPERCLASSES); + createEReference(xmlEntityMappingsEClass, XML_ENTITY_MAPPINGS__ENTITIES); + createEReference(xmlEntityMappingsEClass, XML_ENTITY_MAPPINGS__EMBEDDABLES); + + xmlPersistenceUnitMetadataEClass = createEClass(XML_PERSISTENCE_UNIT_METADATA); + createEAttribute(xmlPersistenceUnitMetadataEClass, XML_PERSISTENCE_UNIT_METADATA__XML_MAPPING_METADATA_COMPLETE); + createEReference(xmlPersistenceUnitMetadataEClass, XML_PERSISTENCE_UNIT_METADATA__PERSISTENCE_UNIT_DEFAULTS); + + xmlPersistenceUnitDefaultsEClass = createEClass(XML_PERSISTENCE_UNIT_DEFAULTS); + createEAttribute(xmlPersistenceUnitDefaultsEClass, XML_PERSISTENCE_UNIT_DEFAULTS__SCHEMA); + createEAttribute(xmlPersistenceUnitDefaultsEClass, XML_PERSISTENCE_UNIT_DEFAULTS__CATALOG); + createEAttribute(xmlPersistenceUnitDefaultsEClass, XML_PERSISTENCE_UNIT_DEFAULTS__ACCESS); + createEAttribute(xmlPersistenceUnitDefaultsEClass, XML_PERSISTENCE_UNIT_DEFAULTS__CASCADE_PERSIST); + createEReference(xmlPersistenceUnitDefaultsEClass, XML_PERSISTENCE_UNIT_DEFAULTS__ENTITY_LISTENERS); + + abstractXmlTypeMappingEClass = createEClass(ABSTRACT_XML_TYPE_MAPPING); + createEAttribute(abstractXmlTypeMappingEClass, ABSTRACT_XML_TYPE_MAPPING__CLASS_NAME); + createEAttribute(abstractXmlTypeMappingEClass, ABSTRACT_XML_TYPE_MAPPING__ACCESS); + createEAttribute(abstractXmlTypeMappingEClass, ABSTRACT_XML_TYPE_MAPPING__METADATA_COMPLETE); + createEAttribute(abstractXmlTypeMappingEClass, ABSTRACT_XML_TYPE_MAPPING__DESCRIPTION); + createEReference(abstractXmlTypeMappingEClass, ABSTRACT_XML_TYPE_MAPPING__ATTRIBUTES); + + xmlMappedSuperclassEClass = createEClass(XML_MAPPED_SUPERCLASS); + createEReference(xmlMappedSuperclassEClass, XML_MAPPED_SUPERCLASS__ID_CLASS); + createEAttribute(xmlMappedSuperclassEClass, XML_MAPPED_SUPERCLASS__EXCLUDE_DEFAULT_LISTENERS); + createEAttribute(xmlMappedSuperclassEClass, XML_MAPPED_SUPERCLASS__EXCLUDE_SUPERCLASS_LISTENERS); + createEReference(xmlMappedSuperclassEClass, XML_MAPPED_SUPERCLASS__ENTITY_LISTENERS); + createEReference(xmlMappedSuperclassEClass, XML_MAPPED_SUPERCLASS__PRE_PERSIST); + createEReference(xmlMappedSuperclassEClass, XML_MAPPED_SUPERCLASS__POST_PERSIST); + createEReference(xmlMappedSuperclassEClass, XML_MAPPED_SUPERCLASS__PRE_REMOVE); + createEReference(xmlMappedSuperclassEClass, XML_MAPPED_SUPERCLASS__POST_REMOVE); + createEReference(xmlMappedSuperclassEClass, XML_MAPPED_SUPERCLASS__PRE_UPDATE); + createEReference(xmlMappedSuperclassEClass, XML_MAPPED_SUPERCLASS__POST_UPDATE); + createEReference(xmlMappedSuperclassEClass, XML_MAPPED_SUPERCLASS__POST_LOAD); + + xmlEntityEClass = createEClass(XML_ENTITY); + createEAttribute(xmlEntityEClass, XML_ENTITY__NAME); + createEReference(xmlEntityEClass, XML_ENTITY__TABLE); + createEReference(xmlEntityEClass, XML_ENTITY__SECONDARY_TABLES); + createEReference(xmlEntityEClass, XML_ENTITY__PRIMARY_KEY_JOIN_COLUMNS); + createEReference(xmlEntityEClass, XML_ENTITY__ID_CLASS); + createEReference(xmlEntityEClass, XML_ENTITY__INHERITANCE); + createEAttribute(xmlEntityEClass, XML_ENTITY__DISCRIMINATOR_VALUE); + createEReference(xmlEntityEClass, XML_ENTITY__DISCRIMINATOR_COLUMN); + createEReference(xmlEntityEClass, XML_ENTITY__SEQUENCE_GENERATOR); + createEReference(xmlEntityEClass, XML_ENTITY__TABLE_GENERATOR); + createEReference(xmlEntityEClass, XML_ENTITY__NAMED_QUERIES); + createEReference(xmlEntityEClass, XML_ENTITY__NAMED_NATIVE_QUERIES); + createEReference(xmlEntityEClass, XML_ENTITY__SQL_RESULT_SET_MAPPINGS); + createEAttribute(xmlEntityEClass, XML_ENTITY__EXCLUDE_DEFAULT_LISTENERS); + createEAttribute(xmlEntityEClass, XML_ENTITY__EXCLUDE_SUPERCLASS_LISTENERS); + createEReference(xmlEntityEClass, XML_ENTITY__ENTITY_LISTENERS); + createEReference(xmlEntityEClass, XML_ENTITY__PRE_PERSIST); + createEReference(xmlEntityEClass, XML_ENTITY__POST_PERSIST); + createEReference(xmlEntityEClass, XML_ENTITY__PRE_REMOVE); + createEReference(xmlEntityEClass, XML_ENTITY__POST_REMOVE); + createEReference(xmlEntityEClass, XML_ENTITY__PRE_UPDATE); + createEReference(xmlEntityEClass, XML_ENTITY__POST_UPDATE); + createEReference(xmlEntityEClass, XML_ENTITY__POST_LOAD); + createEReference(xmlEntityEClass, XML_ENTITY__ATTRIBUTE_OVERRIDES); + createEReference(xmlEntityEClass, XML_ENTITY__ASSOCIATION_OVERRIDES); + + xmlEmbeddableEClass = createEClass(XML_EMBEDDABLE); + + attributesEClass = createEClass(ATTRIBUTES); + createEReference(attributesEClass, ATTRIBUTES__IDS); + createEReference(attributesEClass, ATTRIBUTES__EMBEDDED_IDS); + createEReference(attributesEClass, ATTRIBUTES__BASICS); + createEReference(attributesEClass, ATTRIBUTES__VERSIONS); + createEReference(attributesEClass, ATTRIBUTES__MANY_TO_ONES); + createEReference(attributesEClass, ATTRIBUTES__ONE_TO_MANYS); + createEReference(attributesEClass, ATTRIBUTES__ONE_TO_ONES); + createEReference(attributesEClass, ATTRIBUTES__MANY_TO_MANYS); + createEReference(attributesEClass, ATTRIBUTES__EMBEDDEDS); + createEReference(attributesEClass, ATTRIBUTES__TRANSIENTS); + + xmlAttributeMappingEClass = createEClass(XML_ATTRIBUTE_MAPPING); + createEAttribute(xmlAttributeMappingEClass, XML_ATTRIBUTE_MAPPING__NAME); + + abstractXmlAttributeMappingEClass = createEClass(ABSTRACT_XML_ATTRIBUTE_MAPPING); + + xmlNullAttributeMappingEClass = createEClass(XML_NULL_ATTRIBUTE_MAPPING); + + columnMappingEClass = createEClass(COLUMN_MAPPING); + createEReference(columnMappingEClass, COLUMN_MAPPING__COLUMN); + + xmlRelationshipMappingEClass = createEClass(XML_RELATIONSHIP_MAPPING); + createEAttribute(xmlRelationshipMappingEClass, XML_RELATIONSHIP_MAPPING__TARGET_ENTITY); + createEAttribute(xmlRelationshipMappingEClass, XML_RELATIONSHIP_MAPPING__FETCH); + createEReference(xmlRelationshipMappingEClass, XML_RELATIONSHIP_MAPPING__JOIN_TABLE); + createEReference(xmlRelationshipMappingEClass, XML_RELATIONSHIP_MAPPING__CASCADE); + + xmlMultiRelationshipMappingEClass = createEClass(XML_MULTI_RELATIONSHIP_MAPPING); + createEAttribute(xmlMultiRelationshipMappingEClass, XML_MULTI_RELATIONSHIP_MAPPING__MAPPED_BY); + createEAttribute(xmlMultiRelationshipMappingEClass, XML_MULTI_RELATIONSHIP_MAPPING__ORDER_BY); + createEReference(xmlMultiRelationshipMappingEClass, XML_MULTI_RELATIONSHIP_MAPPING__MAP_KEY); + + xmlSingleRelationshipMappingEClass = createEClass(XML_SINGLE_RELATIONSHIP_MAPPING); + createEAttribute(xmlSingleRelationshipMappingEClass, XML_SINGLE_RELATIONSHIP_MAPPING__OPTIONAL); + createEReference(xmlSingleRelationshipMappingEClass, XML_SINGLE_RELATIONSHIP_MAPPING__JOIN_COLUMNS); + + xmlIdEClass = createEClass(XML_ID); + createEReference(xmlIdEClass, XML_ID__GENERATED_VALUE); + createEAttribute(xmlIdEClass, XML_ID__TEMPORAL); + createEReference(xmlIdEClass, XML_ID__TABLE_GENERATOR); + createEReference(xmlIdEClass, XML_ID__SEQUENCE_GENERATOR); + + xmlIdImplEClass = createEClass(XML_ID_IMPL); + + baseXmlEmbeddedEClass = createEClass(BASE_XML_EMBEDDED); + createEReference(baseXmlEmbeddedEClass, BASE_XML_EMBEDDED__ATTRIBUTE_OVERRIDES); + + xmlEmbeddedIdEClass = createEClass(XML_EMBEDDED_ID); + + xmlEmbeddedIdImplEClass = createEClass(XML_EMBEDDED_ID_IMPL); + + xmlEmbeddedEClass = createEClass(XML_EMBEDDED); + + xmlEmbeddedImplEClass = createEClass(XML_EMBEDDED_IMPL); + + xmlBasicEClass = createEClass(XML_BASIC); + createEAttribute(xmlBasicEClass, XML_BASIC__FETCH); + createEAttribute(xmlBasicEClass, XML_BASIC__OPTIONAL); + createEAttribute(xmlBasicEClass, XML_BASIC__LOB); + createEAttribute(xmlBasicEClass, XML_BASIC__TEMPORAL); + createEAttribute(xmlBasicEClass, XML_BASIC__ENUMERATED); + + xmlBasicImplEClass = createEClass(XML_BASIC_IMPL); + + xmlVersionEClass = createEClass(XML_VERSION); + createEAttribute(xmlVersionEClass, XML_VERSION__TEMPORAL); + + xmlVersionImplEClass = createEClass(XML_VERSION_IMPL); + + xmlManyToOneEClass = createEClass(XML_MANY_TO_ONE); + + xmlManyToOneImplEClass = createEClass(XML_MANY_TO_ONE_IMPL); + + xmlOneToManyEClass = createEClass(XML_ONE_TO_MANY); + createEReference(xmlOneToManyEClass, XML_ONE_TO_MANY__JOIN_COLUMNS); + + xmlOneToManyImplEClass = createEClass(XML_ONE_TO_MANY_IMPL); + + xmlOneToOneEClass = createEClass(XML_ONE_TO_ONE); + createEAttribute(xmlOneToOneEClass, XML_ONE_TO_ONE__MAPPED_BY); + createEReference(xmlOneToOneEClass, XML_ONE_TO_ONE__PRIMARY_KEY_JOIN_COLUMNS); + + xmlOneToOneImplEClass = createEClass(XML_ONE_TO_ONE_IMPL); + + xmlManyToManyEClass = createEClass(XML_MANY_TO_MANY); + + xmlManyToManyImplEClass = createEClass(XML_MANY_TO_MANY_IMPL); + + xmlTransientEClass = createEClass(XML_TRANSIENT); + + xmlTransientImplEClass = createEClass(XML_TRANSIENT_IMPL); + + xmlAssociationOverrideEClass = createEClass(XML_ASSOCIATION_OVERRIDE); + createEReference(xmlAssociationOverrideEClass, XML_ASSOCIATION_OVERRIDE__JOIN_COLUMNS); + createEAttribute(xmlAssociationOverrideEClass, XML_ASSOCIATION_OVERRIDE__NAME); + + xmlAssociationOverrideImplEClass = createEClass(XML_ASSOCIATION_OVERRIDE_IMPL); + + xmlAttributeOverrideEClass = createEClass(XML_ATTRIBUTE_OVERRIDE); + createEReference(xmlAttributeOverrideEClass, XML_ATTRIBUTE_OVERRIDE__COLUMN); + createEAttribute(xmlAttributeOverrideEClass, XML_ATTRIBUTE_OVERRIDE__NAME); + + xmlAttributeOverrideImplEClass = createEClass(XML_ATTRIBUTE_OVERRIDE_IMPL); + + cascadeTypeEClass = createEClass(CASCADE_TYPE); + createEAttribute(cascadeTypeEClass, CASCADE_TYPE__CASCADE_ALL); + createEAttribute(cascadeTypeEClass, CASCADE_TYPE__CASCADE_PERSIST); + createEAttribute(cascadeTypeEClass, CASCADE_TYPE__CASCADE_MERGE); + createEAttribute(cascadeTypeEClass, CASCADE_TYPE__CASCADE_REMOVE); + createEAttribute(cascadeTypeEClass, CASCADE_TYPE__CASCADE_REFRESH); + + cascadeTypeImplEClass = createEClass(CASCADE_TYPE_IMPL); + + xmlNamedColumnEClass = createEClass(XML_NAMED_COLUMN); + createEAttribute(xmlNamedColumnEClass, XML_NAMED_COLUMN__COLUMN_DEFINITION); + createEAttribute(xmlNamedColumnEClass, XML_NAMED_COLUMN__NAME); + + abstractXmlNamedColumnEClass = createEClass(ABSTRACT_XML_NAMED_COLUMN); + + xmlAbstractColumnEClass = createEClass(XML_ABSTRACT_COLUMN); + createEAttribute(xmlAbstractColumnEClass, XML_ABSTRACT_COLUMN__INSERTABLE); + createEAttribute(xmlAbstractColumnEClass, XML_ABSTRACT_COLUMN__NULLABLE); + createEAttribute(xmlAbstractColumnEClass, XML_ABSTRACT_COLUMN__TABLE); + createEAttribute(xmlAbstractColumnEClass, XML_ABSTRACT_COLUMN__UNIQUE); + createEAttribute(xmlAbstractColumnEClass, XML_ABSTRACT_COLUMN__UPDATABLE); + + abstractXmlAbstractColumnEClass = createEClass(ABSTRACT_XML_ABSTRACT_COLUMN); + + xmlColumnEClass = createEClass(XML_COLUMN); + createEAttribute(xmlColumnEClass, XML_COLUMN__LENGTH); + createEAttribute(xmlColumnEClass, XML_COLUMN__PRECISION); + createEAttribute(xmlColumnEClass, XML_COLUMN__SCALE); + + xmlColumnImplEClass = createEClass(XML_COLUMN_IMPL); + + columnResultEClass = createEClass(COLUMN_RESULT); + createEAttribute(columnResultEClass, COLUMN_RESULT__NAME); + + xmlDiscriminatorColumnEClass = createEClass(XML_DISCRIMINATOR_COLUMN); + createEAttribute(xmlDiscriminatorColumnEClass, XML_DISCRIMINATOR_COLUMN__DISCRIMINATOR_TYPE); + createEAttribute(xmlDiscriminatorColumnEClass, XML_DISCRIMINATOR_COLUMN__LENGTH); + + entityListenersEClass = createEClass(ENTITY_LISTENERS); + createEReference(entityListenersEClass, ENTITY_LISTENERS__ENTITY_LISTENERS); + + entityListenerEClass = createEClass(ENTITY_LISTENER); + createEAttribute(entityListenerEClass, ENTITY_LISTENER__CLASS_NAME); + createEReference(entityListenerEClass, ENTITY_LISTENER__PRE_PERSIST); + createEReference(entityListenerEClass, ENTITY_LISTENER__POST_PERSIST); + createEReference(entityListenerEClass, ENTITY_LISTENER__PRE_REMOVE); + createEReference(entityListenerEClass, ENTITY_LISTENER__POST_REMOVE); + createEReference(entityListenerEClass, ENTITY_LISTENER__PRE_UPDATE); + createEReference(entityListenerEClass, ENTITY_LISTENER__POST_UPDATE); + createEReference(entityListenerEClass, ENTITY_LISTENER__POST_LOAD); + + entityResultEClass = createEClass(ENTITY_RESULT); + createEAttribute(entityResultEClass, ENTITY_RESULT__DISCRIMINATOR_COLUMN); + createEAttribute(entityResultEClass, ENTITY_RESULT__ENTITY_CLASS); + createEReference(entityResultEClass, ENTITY_RESULT__FIELD_RESULTS); + + eventMethodEClass = createEClass(EVENT_METHOD); + createEAttribute(eventMethodEClass, EVENT_METHOD__METHOD_NAME); + + fieldResultEClass = createEClass(FIELD_RESULT); + createEAttribute(fieldResultEClass, FIELD_RESULT__NAME); + createEAttribute(fieldResultEClass, FIELD_RESULT__COLUMN); + + xmlGeneratedValueEClass = createEClass(XML_GENERATED_VALUE); + createEAttribute(xmlGeneratedValueEClass, XML_GENERATED_VALUE__GENERATOR); + createEAttribute(xmlGeneratedValueEClass, XML_GENERATED_VALUE__STRATEGY); + + xmlGeneratedValueImplEClass = createEClass(XML_GENERATED_VALUE_IMPL); + + xmlIdClassEClass = createEClass(XML_ID_CLASS); + createEAttribute(xmlIdClassEClass, XML_ID_CLASS__CLASS_NAME); + + inheritanceEClass = createEClass(INHERITANCE); + createEAttribute(inheritanceEClass, INHERITANCE__STRATEGY); + + xmlJoinColumnEClass = createEClass(XML_JOIN_COLUMN); + createEAttribute(xmlJoinColumnEClass, XML_JOIN_COLUMN__REFERENCED_COLUMN_NAME); + + xmlJoinColumnImplEClass = createEClass(XML_JOIN_COLUMN_IMPL); + + xmlJoinTableEClass = createEClass(XML_JOIN_TABLE); + createEReference(xmlJoinTableEClass, XML_JOIN_TABLE__JOIN_COLUMNS); + createEReference(xmlJoinTableEClass, XML_JOIN_TABLE__INVERSE_JOIN_COLUMNS); + + xmlJoinTableImplEClass = createEClass(XML_JOIN_TABLE_IMPL); + + lobEClass = createEClass(LOB); + + mapKeyEClass = createEClass(MAP_KEY); + createEAttribute(mapKeyEClass, MAP_KEY__NAME); + + mapKeyImplEClass = createEClass(MAP_KEY_IMPL); + + xmlQueryEClass = createEClass(XML_QUERY); + createEAttribute(xmlQueryEClass, XML_QUERY__NAME); + createEAttribute(xmlQueryEClass, XML_QUERY__QUERY); + createEReference(xmlQueryEClass, XML_QUERY__HINTS); + + xmlNamedNativeQueryEClass = createEClass(XML_NAMED_NATIVE_QUERY); + createEAttribute(xmlNamedNativeQueryEClass, XML_NAMED_NATIVE_QUERY__RESULT_CLASS); + createEAttribute(xmlNamedNativeQueryEClass, XML_NAMED_NATIVE_QUERY__RESULT_SET_MAPPING); + + xmlNamedQueryEClass = createEClass(XML_NAMED_QUERY); + + postLoadEClass = createEClass(POST_LOAD); + + postPersistEClass = createEClass(POST_PERSIST); + + postRemoveEClass = createEClass(POST_REMOVE); + + postUpdateEClass = createEClass(POST_UPDATE); + + prePersistEClass = createEClass(PRE_PERSIST); + + preRemoveEClass = createEClass(PRE_REMOVE); + + preUpdateEClass = createEClass(PRE_UPDATE); + + xmlPrimaryKeyJoinColumnEClass = createEClass(XML_PRIMARY_KEY_JOIN_COLUMN); + createEAttribute(xmlPrimaryKeyJoinColumnEClass, XML_PRIMARY_KEY_JOIN_COLUMN__REFERENCED_COLUMN_NAME); + + xmlPrimaryKeyJoinColumnImplEClass = createEClass(XML_PRIMARY_KEY_JOIN_COLUMN_IMPL); + + xmlQueryHintEClass = createEClass(XML_QUERY_HINT); + createEAttribute(xmlQueryHintEClass, XML_QUERY_HINT__NAME); + createEAttribute(xmlQueryHintEClass, XML_QUERY_HINT__VALUE); + + abstractXmlBaseTableEClass = createEClass(ABSTRACT_XML_BASE_TABLE); + + xmlBaseTableEClass = createEClass(XML_BASE_TABLE); + createEAttribute(xmlBaseTableEClass, XML_BASE_TABLE__NAME); + createEAttribute(xmlBaseTableEClass, XML_BASE_TABLE__CATALOG); + createEAttribute(xmlBaseTableEClass, XML_BASE_TABLE__SCHEMA); + createEReference(xmlBaseTableEClass, XML_BASE_TABLE__UNIQUE_CONSTRAINTS); + + xmlTableEClass = createEClass(XML_TABLE); + + xmlSecondaryTableEClass = createEClass(XML_SECONDARY_TABLE); + createEReference(xmlSecondaryTableEClass, XML_SECONDARY_TABLE__PRIMARY_KEY_JOIN_COLUMNS); + + xmlSecondaryTableImplEClass = createEClass(XML_SECONDARY_TABLE_IMPL); + + xmlGeneratorEClass = createEClass(XML_GENERATOR); + createEAttribute(xmlGeneratorEClass, XML_GENERATOR__NAME); + createEAttribute(xmlGeneratorEClass, XML_GENERATOR__INITIAL_VALUE); + createEAttribute(xmlGeneratorEClass, XML_GENERATOR__ALLOCATION_SIZE); + + xmlSequenceGeneratorEClass = createEClass(XML_SEQUENCE_GENERATOR); + createEAttribute(xmlSequenceGeneratorEClass, XML_SEQUENCE_GENERATOR__SEQUENCE_NAME); + + xmlSequenceGeneratorImplEClass = createEClass(XML_SEQUENCE_GENERATOR_IMPL); + + sqlResultSetMappingEClass = createEClass(SQL_RESULT_SET_MAPPING); + createEAttribute(sqlResultSetMappingEClass, SQL_RESULT_SET_MAPPING__NAME); + createEReference(sqlResultSetMappingEClass, SQL_RESULT_SET_MAPPING__ENTITY_RESULTS); + createEReference(sqlResultSetMappingEClass, SQL_RESULT_SET_MAPPING__COLUMN_RESULTS); + + xmlTableGeneratorEClass = createEClass(XML_TABLE_GENERATOR); + createEAttribute(xmlTableGeneratorEClass, XML_TABLE_GENERATOR__TABLE); + createEAttribute(xmlTableGeneratorEClass, XML_TABLE_GENERATOR__CATALOG); + createEAttribute(xmlTableGeneratorEClass, XML_TABLE_GENERATOR__SCHEMA); + createEAttribute(xmlTableGeneratorEClass, XML_TABLE_GENERATOR__PK_COLUMN_NAME); + createEAttribute(xmlTableGeneratorEClass, XML_TABLE_GENERATOR__VALUE_COLUMN_NAME); + createEAttribute(xmlTableGeneratorEClass, XML_TABLE_GENERATOR__PK_COLUMN_VALUE); + createEReference(xmlTableGeneratorEClass, XML_TABLE_GENERATOR__UNIQUE_CONSTRAINTS); + + xmlTableGeneratorImplEClass = createEClass(XML_TABLE_GENERATOR_IMPL); + + xmlUniqueConstraintEClass = createEClass(XML_UNIQUE_CONSTRAINT); + createEAttribute(xmlUniqueConstraintEClass, XML_UNIQUE_CONSTRAINT__COLUMN_NAMES); + + xmlUniqueConstraintImplEClass = createEClass(XML_UNIQUE_CONSTRAINT_IMPL); + + // Create enums + accessTypeEEnum = createEEnum(ACCESS_TYPE); + discriminatorTypeEEnum = createEEnum(DISCRIMINATOR_TYPE); + enumTypeEEnum = createEEnum(ENUM_TYPE); + fetchTypeEEnum = createEEnum(FETCH_TYPE); + generationTypeEEnum = createEEnum(GENERATION_TYPE); + inheritanceTypeEEnum = createEEnum(INHERITANCE_TYPE); + temporalTypeEEnum = createEEnum(TEMPORAL_TYPE); + + // Create data types + discriminatorValueEDataType = createEDataType(DISCRIMINATOR_VALUE); + enumeratedEDataType = createEDataType(ENUMERATED); + orderByEDataType = createEDataType(ORDER_BY); + versionTypeEDataType = createEDataType(VERSION_TYPE); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private boolean isInitialized = false; + + /** + * Complete the initialization of the package and its meta-model. This + * method is guarded to have no affect on any invocation but its first. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void initializePackageContents() + { + if (isInitialized) return; + isInitialized = true; + + // Initialize package + setName(eNAME); + setNsPrefix(eNS_PREFIX); + setNsURI(eNS_URI); + + // Obtain other dependent packages + XMLTypePackage theXMLTypePackage = (XMLTypePackage)EPackage.Registry.INSTANCE.getEPackage(XMLTypePackage.eNS_URI); + + // Create type parameters + + // Set bounds for type parameters + + // Add supertypes to classes + xmlMappedSuperclassEClass.getESuperTypes().add(this.getAbstractXmlTypeMapping()); + xmlEntityEClass.getESuperTypes().add(this.getAbstractXmlTypeMapping()); + xmlEmbeddableEClass.getESuperTypes().add(this.getAbstractXmlTypeMapping()); + abstractXmlAttributeMappingEClass.getESuperTypes().add(this.getXmlAttributeMapping()); + xmlNullAttributeMappingEClass.getESuperTypes().add(this.getXmlAttributeMapping()); + xmlRelationshipMappingEClass.getESuperTypes().add(this.getXmlAttributeMapping()); + xmlMultiRelationshipMappingEClass.getESuperTypes().add(this.getXmlRelationshipMapping()); + xmlSingleRelationshipMappingEClass.getESuperTypes().add(this.getXmlRelationshipMapping()); + xmlIdEClass.getESuperTypes().add(this.getXmlAttributeMapping()); + xmlIdEClass.getESuperTypes().add(this.getColumnMapping()); + xmlIdImplEClass.getESuperTypes().add(this.getAbstractXmlAttributeMapping()); + xmlIdImplEClass.getESuperTypes().add(this.getXmlId()); + baseXmlEmbeddedEClass.getESuperTypes().add(this.getXmlAttributeMapping()); + xmlEmbeddedIdEClass.getESuperTypes().add(this.getXmlAttributeMapping()); + xmlEmbeddedIdEClass.getESuperTypes().add(this.getBaseXmlEmbedded()); + xmlEmbeddedIdImplEClass.getESuperTypes().add(this.getAbstractXmlAttributeMapping()); + xmlEmbeddedIdImplEClass.getESuperTypes().add(this.getXmlEmbeddedId()); + xmlEmbeddedEClass.getESuperTypes().add(this.getBaseXmlEmbedded()); + xmlEmbeddedImplEClass.getESuperTypes().add(this.getAbstractXmlAttributeMapping()); + xmlEmbeddedImplEClass.getESuperTypes().add(this.getXmlEmbedded()); + xmlBasicEClass.getESuperTypes().add(this.getXmlAttributeMapping()); + xmlBasicEClass.getESuperTypes().add(this.getColumnMapping()); + xmlBasicImplEClass.getESuperTypes().add(this.getAbstractXmlAttributeMapping()); + xmlBasicImplEClass.getESuperTypes().add(this.getXmlBasic()); + xmlVersionEClass.getESuperTypes().add(this.getXmlAttributeMapping()); + xmlVersionEClass.getESuperTypes().add(this.getColumnMapping()); + xmlVersionImplEClass.getESuperTypes().add(this.getAbstractXmlAttributeMapping()); + xmlVersionImplEClass.getESuperTypes().add(this.getXmlVersion()); + xmlManyToOneEClass.getESuperTypes().add(this.getXmlSingleRelationshipMapping()); + xmlManyToOneImplEClass.getESuperTypes().add(this.getAbstractXmlAttributeMapping()); + xmlManyToOneImplEClass.getESuperTypes().add(this.getXmlManyToOne()); + xmlOneToManyEClass.getESuperTypes().add(this.getXmlMultiRelationshipMapping()); + xmlOneToManyImplEClass.getESuperTypes().add(this.getAbstractXmlAttributeMapping()); + xmlOneToManyImplEClass.getESuperTypes().add(this.getXmlOneToMany()); + xmlOneToOneEClass.getESuperTypes().add(this.getXmlSingleRelationshipMapping()); + xmlOneToOneImplEClass.getESuperTypes().add(this.getAbstractXmlAttributeMapping()); + xmlOneToOneImplEClass.getESuperTypes().add(this.getXmlOneToOne()); + xmlManyToManyEClass.getESuperTypes().add(this.getXmlMultiRelationshipMapping()); + xmlManyToManyImplEClass.getESuperTypes().add(this.getAbstractXmlAttributeMapping()); + xmlManyToManyImplEClass.getESuperTypes().add(this.getXmlManyToMany()); + xmlTransientEClass.getESuperTypes().add(this.getXmlAttributeMapping()); + xmlTransientImplEClass.getESuperTypes().add(this.getAbstractXmlAttributeMapping()); + xmlTransientImplEClass.getESuperTypes().add(this.getXmlTransient()); + xmlAssociationOverrideImplEClass.getESuperTypes().add(this.getXmlAssociationOverride()); + xmlAttributeOverrideImplEClass.getESuperTypes().add(this.getXmlAttributeOverride()); + cascadeTypeImplEClass.getESuperTypes().add(this.getCascadeType()); + abstractXmlNamedColumnEClass.getESuperTypes().add(this.getXmlNamedColumn()); + xmlAbstractColumnEClass.getESuperTypes().add(this.getXmlNamedColumn()); + abstractXmlAbstractColumnEClass.getESuperTypes().add(this.getAbstractXmlNamedColumn()); + abstractXmlAbstractColumnEClass.getESuperTypes().add(this.getXmlAbstractColumn()); + xmlColumnEClass.getESuperTypes().add(this.getXmlAbstractColumn()); + xmlColumnImplEClass.getESuperTypes().add(this.getAbstractXmlAbstractColumn()); + xmlColumnImplEClass.getESuperTypes().add(this.getXmlColumn()); + xmlDiscriminatorColumnEClass.getESuperTypes().add(this.getAbstractXmlNamedColumn()); + xmlGeneratedValueImplEClass.getESuperTypes().add(this.getXmlGeneratedValue()); + xmlJoinColumnEClass.getESuperTypes().add(this.getXmlAbstractColumn()); + xmlJoinColumnImplEClass.getESuperTypes().add(this.getAbstractXmlAbstractColumn()); + xmlJoinColumnImplEClass.getESuperTypes().add(this.getXmlJoinColumn()); + xmlJoinTableEClass.getESuperTypes().add(this.getXmlBaseTable()); + xmlJoinTableImplEClass.getESuperTypes().add(this.getAbstractXmlBaseTable()); + xmlJoinTableImplEClass.getESuperTypes().add(this.getXmlJoinTable()); + mapKeyImplEClass.getESuperTypes().add(this.getMapKey()); + xmlNamedNativeQueryEClass.getESuperTypes().add(this.getXmlQuery()); + xmlNamedQueryEClass.getESuperTypes().add(this.getXmlQuery()); + postLoadEClass.getESuperTypes().add(this.getEventMethod()); + postPersistEClass.getESuperTypes().add(this.getEventMethod()); + postRemoveEClass.getESuperTypes().add(this.getEventMethod()); + postUpdateEClass.getESuperTypes().add(this.getEventMethod()); + prePersistEClass.getESuperTypes().add(this.getEventMethod()); + preRemoveEClass.getESuperTypes().add(this.getEventMethod()); + preUpdateEClass.getESuperTypes().add(this.getEventMethod()); + xmlPrimaryKeyJoinColumnEClass.getESuperTypes().add(this.getXmlNamedColumn()); + xmlPrimaryKeyJoinColumnImplEClass.getESuperTypes().add(this.getAbstractXmlNamedColumn()); + xmlPrimaryKeyJoinColumnImplEClass.getESuperTypes().add(this.getXmlPrimaryKeyJoinColumn()); + abstractXmlBaseTableEClass.getESuperTypes().add(this.getXmlBaseTable()); + xmlTableEClass.getESuperTypes().add(this.getAbstractXmlBaseTable()); + xmlSecondaryTableEClass.getESuperTypes().add(this.getXmlBaseTable()); + xmlSecondaryTableImplEClass.getESuperTypes().add(this.getAbstractXmlBaseTable()); + xmlSecondaryTableImplEClass.getESuperTypes().add(this.getXmlSecondaryTable()); + xmlSequenceGeneratorEClass.getESuperTypes().add(this.getXmlGenerator()); + xmlSequenceGeneratorImplEClass.getESuperTypes().add(this.getXmlSequenceGenerator()); + xmlTableGeneratorEClass.getESuperTypes().add(this.getXmlGenerator()); + xmlTableGeneratorImplEClass.getESuperTypes().add(this.getXmlTableGenerator()); + xmlUniqueConstraintImplEClass.getESuperTypes().add(this.getXmlUniqueConstraint()); + + // Initialize classes and features; add operations and parameters + initEClass(xmlEntityMappingsEClass, XmlEntityMappings.class, "XmlEntityMappings", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getXmlEntityMappings_Version(), this.getVersionType(), "version", "1.0", 1, 1, XmlEntityMappings.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getXmlEntityMappings_Description(), theXMLTypePackage.getString(), "description", null, 0, 1, XmlEntityMappings.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getXmlEntityMappings_PersistenceUnitMetadata(), this.getXmlPersistenceUnitMetadata(), null, "persistenceUnitMetadata", null, 0, 1, XmlEntityMappings.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getXmlEntityMappings_Package(), theXMLTypePackage.getString(), "package", null, 0, 1, XmlEntityMappings.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getXmlEntityMappings_Schema(), theXMLTypePackage.getString(), "schema", null, 0, 1, XmlEntityMappings.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getXmlEntityMappings_Catalog(), theXMLTypePackage.getString(), "catalog", null, 0, 1, XmlEntityMappings.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getXmlEntityMappings_Access(), this.getAccessType(), "access", "PROPERTY", 0, 1, XmlEntityMappings.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getXmlEntityMappings_SequenceGenerators(), this.getXmlSequenceGenerator(), null, "sequenceGenerators", null, 0, -1, XmlEntityMappings.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getXmlEntityMappings_TableGenerators(), this.getXmlTableGenerator(), null, "tableGenerators", null, 0, -1, XmlEntityMappings.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getXmlEntityMappings_NamedQueries(), this.getXmlNamedQuery(), null, "namedQueries", null, 0, -1, XmlEntityMappings.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getXmlEntityMappings_NamedNativeQueries(), this.getXmlNamedNativeQuery(), null, "namedNativeQueries", null, 0, -1, XmlEntityMappings.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getXmlEntityMappings_SqlResultSetMappings(), this.getSqlResultSetMapping(), null, "sqlResultSetMappings", null, 0, -1, XmlEntityMappings.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getXmlEntityMappings_MappedSuperclasses(), this.getXmlMappedSuperclass(), null, "mappedSuperclasses", null, 0, -1, XmlEntityMappings.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getXmlEntityMappings_Entities(), this.getXmlEntity(), null, "entities", null, 0, -1, XmlEntityMappings.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getXmlEntityMappings_Embeddables(), this.getXmlEmbeddable(), null, "embeddables", null, 0, -1, XmlEntityMappings.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(xmlPersistenceUnitMetadataEClass, XmlPersistenceUnitMetadata.class, "XmlPersistenceUnitMetadata", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getXmlPersistenceUnitMetadata_XmlMappingMetadataComplete(), theXMLTypePackage.getBoolean(), "xmlMappingMetadataComplete", null, 0, 1, XmlPersistenceUnitMetadata.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getXmlPersistenceUnitMetadata_PersistenceUnitDefaults(), this.getXmlPersistenceUnitDefaults(), null, "persistenceUnitDefaults", null, 0, 1, XmlPersistenceUnitMetadata.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(xmlPersistenceUnitDefaultsEClass, XmlPersistenceUnitDefaults.class, "XmlPersistenceUnitDefaults", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getXmlPersistenceUnitDefaults_Schema(), theXMLTypePackage.getString(), "schema", null, 0, 1, XmlPersistenceUnitDefaults.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getXmlPersistenceUnitDefaults_Catalog(), theXMLTypePackage.getString(), "catalog", null, 0, 1, XmlPersistenceUnitDefaults.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getXmlPersistenceUnitDefaults_Access(), this.getAccessType(), "access", "PROPERTY", 0, 1, XmlPersistenceUnitDefaults.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getXmlPersistenceUnitDefaults_CascadePersist(), theXMLTypePackage.getBoolean(), "cascadePersist", null, 0, 1, XmlPersistenceUnitDefaults.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getXmlPersistenceUnitDefaults_EntityListeners(), this.getEntityListeners(), null, "entityListeners", null, 0, 1, XmlPersistenceUnitDefaults.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(abstractXmlTypeMappingEClass, AbstractXmlTypeMapping.class, "AbstractXmlTypeMapping", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getAbstractXmlTypeMapping_ClassName(), theXMLTypePackage.getString(), "className", null, 1, 1, AbstractXmlTypeMapping.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getAbstractXmlTypeMapping_Access(), this.getAccessType(), "access", "PROPERTY", 0, 1, AbstractXmlTypeMapping.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getAbstractXmlTypeMapping_MetadataComplete(), theXMLTypePackage.getBooleanObject(), "metadataComplete", null, 0, 1, AbstractXmlTypeMapping.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getAbstractXmlTypeMapping_Description(), theXMLTypePackage.getString(), "description", null, 0, 1, AbstractXmlTypeMapping.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getAbstractXmlTypeMapping_Attributes(), this.getAttributes(), null, "attributes", null, 0, 1, AbstractXmlTypeMapping.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(xmlMappedSuperclassEClass, XmlMappedSuperclass.class, "XmlMappedSuperclass", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getXmlMappedSuperclass_IdClass(), this.getXmlIdClass(), null, "idClass", null, 0, 1, XmlMappedSuperclass.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getXmlMappedSuperclass_ExcludeDefaultListeners(), theXMLTypePackage.getBoolean(), "excludeDefaultListeners", null, 0, 1, XmlMappedSuperclass.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getXmlMappedSuperclass_ExcludeSuperclassListeners(), theXMLTypePackage.getBoolean(), "excludeSuperclassListeners", null, 0, 1, XmlMappedSuperclass.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getXmlMappedSuperclass_EntityListeners(), this.getEntityListeners(), null, "entityListeners", null, 0, 1, XmlMappedSuperclass.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getXmlMappedSuperclass_PrePersist(), this.getPrePersist(), null, "prePersist", null, 0, 1, XmlMappedSuperclass.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getXmlMappedSuperclass_PostPersist(), this.getPostPersist(), null, "postPersist", null, 0, 1, XmlMappedSuperclass.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getXmlMappedSuperclass_PreRemove(), this.getPreRemove(), null, "preRemove", null, 0, 1, XmlMappedSuperclass.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getXmlMappedSuperclass_PostRemove(), this.getPostRemove(), null, "postRemove", null, 0, 1, XmlMappedSuperclass.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getXmlMappedSuperclass_PreUpdate(), this.getPreUpdate(), null, "preUpdate", null, 0, 1, XmlMappedSuperclass.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getXmlMappedSuperclass_PostUpdate(), this.getPostUpdate(), null, "postUpdate", null, 0, 1, XmlMappedSuperclass.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getXmlMappedSuperclass_PostLoad(), this.getPostLoad(), null, "postLoad", null, 0, 1, XmlMappedSuperclass.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(xmlEntityEClass, XmlEntity.class, "XmlEntity", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getXmlEntity_Name(), theXMLTypePackage.getString(), "name", null, 0, 1, XmlEntity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getXmlEntity_Table(), this.getXmlTable(), null, "table", null, 0, 1, XmlEntity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getXmlEntity_SecondaryTables(), this.getXmlSecondaryTable(), null, "secondaryTables", null, 0, -1, XmlEntity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getXmlEntity_PrimaryKeyJoinColumns(), this.getXmlPrimaryKeyJoinColumn(), null, "primaryKeyJoinColumns", null, 0, -1, XmlEntity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getXmlEntity_IdClass(), this.getXmlIdClass(), null, "idClass", null, 0, 1, XmlEntity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getXmlEntity_Inheritance(), this.getInheritance(), null, "inheritance", null, 0, 1, XmlEntity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getXmlEntity_DiscriminatorValue(), this.getDiscriminatorValue(), "discriminatorValue", null, 0, 1, XmlEntity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getXmlEntity_DiscriminatorColumn(), this.getXmlDiscriminatorColumn(), null, "discriminatorColumn", null, 0, 1, XmlEntity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getXmlEntity_SequenceGenerator(), this.getXmlSequenceGenerator(), null, "sequenceGenerator", null, 0, 1, XmlEntity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getXmlEntity_TableGenerator(), this.getXmlTableGenerator(), null, "tableGenerator", null, 0, 1, XmlEntity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getXmlEntity_NamedQueries(), this.getXmlNamedQuery(), null, "namedQueries", null, 0, -1, XmlEntity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getXmlEntity_NamedNativeQueries(), this.getXmlNamedNativeQuery(), null, "namedNativeQueries", null, 0, -1, XmlEntity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getXmlEntity_SqlResultSetMappings(), this.getSqlResultSetMapping(), null, "sqlResultSetMappings", null, 0, -1, XmlEntity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getXmlEntity_ExcludeDefaultListeners(), theXMLTypePackage.getBoolean(), "excludeDefaultListeners", null, 0, 1, XmlEntity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getXmlEntity_ExcludeSuperclassListeners(), theXMLTypePackage.getBoolean(), "excludeSuperclassListeners", null, 0, 1, XmlEntity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getXmlEntity_EntityListeners(), this.getEntityListeners(), null, "entityListeners", null, 0, 1, XmlEntity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getXmlEntity_PrePersist(), this.getPrePersist(), null, "prePersist", null, 0, 1, XmlEntity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getXmlEntity_PostPersist(), this.getPostPersist(), null, "postPersist", null, 0, 1, XmlEntity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getXmlEntity_PreRemove(), this.getPreRemove(), null, "preRemove", null, 0, 1, XmlEntity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getXmlEntity_PostRemove(), this.getPostRemove(), null, "postRemove", null, 0, 1, XmlEntity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getXmlEntity_PreUpdate(), this.getPreUpdate(), null, "preUpdate", null, 0, 1, XmlEntity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getXmlEntity_PostUpdate(), this.getPostUpdate(), null, "postUpdate", null, 0, 1, XmlEntity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getXmlEntity_PostLoad(), this.getPostLoad(), null, "postLoad", null, 0, 1, XmlEntity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getXmlEntity_AttributeOverrides(), this.getXmlAttributeOverride(), null, "attributeOverrides", null, 0, -1, XmlEntity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getXmlEntity_AssociationOverrides(), this.getXmlAssociationOverride(), null, "associationOverrides", null, 0, -1, XmlEntity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(xmlEmbeddableEClass, XmlEmbeddable.class, "XmlEmbeddable", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(attributesEClass, Attributes.class, "Attributes", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getAttributes_Ids(), this.getXmlId(), null, "ids", null, 0, -1, Attributes.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getAttributes_EmbeddedIds(), this.getXmlEmbeddedId(), null, "embeddedIds", null, 0, -1, Attributes.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getAttributes_Basics(), this.getXmlBasic(), null, "basics", null, 0, -1, Attributes.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getAttributes_Versions(), this.getXmlVersion(), null, "versions", null, 0, -1, Attributes.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getAttributes_ManyToOnes(), this.getXmlManyToOne(), null, "manyToOnes", null, 0, -1, Attributes.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getAttributes_OneToManys(), this.getXmlOneToMany(), null, "oneToManys", null, 0, -1, Attributes.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getAttributes_OneToOnes(), this.getXmlOneToOne(), null, "oneToOnes", null, 0, -1, Attributes.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getAttributes_ManyToManys(), this.getXmlManyToMany(), null, "manyToManys", null, 0, -1, Attributes.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getAttributes_Embeddeds(), this.getXmlEmbedded(), null, "embeddeds", null, 0, -1, Attributes.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getAttributes_Transients(), this.getXmlTransient(), null, "transients", null, 0, -1, Attributes.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(xmlAttributeMappingEClass, XmlAttributeMapping.class, "XmlAttributeMapping", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getXmlAttributeMapping_Name(), theXMLTypePackage.getString(), "name", null, 1, 1, XmlAttributeMapping.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(abstractXmlAttributeMappingEClass, AbstractXmlAttributeMapping.class, "AbstractXmlAttributeMapping", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(xmlNullAttributeMappingEClass, XmlNullAttributeMapping.class, "XmlNullAttributeMapping", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(columnMappingEClass, ColumnMapping.class, "ColumnMapping", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getColumnMapping_Column(), this.getXmlColumn(), null, "column", null, 0, 1, ColumnMapping.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(xmlRelationshipMappingEClass, XmlRelationshipMapping.class, "XmlRelationshipMapping", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getXmlRelationshipMapping_TargetEntity(), theXMLTypePackage.getString(), "targetEntity", null, 0, 1, XmlRelationshipMapping.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getXmlRelationshipMapping_Fetch(), this.getFetchType(), "fetch", "LAZY", 0, 1, XmlRelationshipMapping.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getXmlRelationshipMapping_JoinTable(), this.getXmlJoinTable(), null, "joinTable", null, 0, 1, XmlRelationshipMapping.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getXmlRelationshipMapping_Cascade(), this.getCascadeType(), null, "cascade", null, 0, 1, XmlRelationshipMapping.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(xmlMultiRelationshipMappingEClass, XmlMultiRelationshipMapping.class, "XmlMultiRelationshipMapping", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getXmlMultiRelationshipMapping_MappedBy(), theXMLTypePackage.getString(), "mappedBy", null, 0, 1, XmlMultiRelationshipMapping.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getXmlMultiRelationshipMapping_OrderBy(), this.getOrderBy(), "orderBy", null, 0, 1, XmlMultiRelationshipMapping.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getXmlMultiRelationshipMapping_MapKey(), this.getMapKey(), null, "mapKey", null, 0, 1, XmlMultiRelationshipMapping.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(xmlSingleRelationshipMappingEClass, XmlSingleRelationshipMapping.class, "XmlSingleRelationshipMapping", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getXmlSingleRelationshipMapping_Optional(), theXMLTypePackage.getBooleanObject(), "optional", null, 0, 1, XmlSingleRelationshipMapping.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getXmlSingleRelationshipMapping_JoinColumns(), this.getXmlJoinColumn(), null, "joinColumns", null, 0, -1, XmlSingleRelationshipMapping.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(xmlIdEClass, XmlId.class, "XmlId", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getXmlId_GeneratedValue(), this.getXmlGeneratedValue(), null, "generatedValue", null, 0, 1, XmlId.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getXmlId_Temporal(), this.getTemporalType(), "temporal", null, 0, 1, XmlId.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getXmlId_TableGenerator(), this.getXmlTableGenerator(), null, "tableGenerator", null, 0, 1, XmlId.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getXmlId_SequenceGenerator(), this.getXmlSequenceGenerator(), null, "sequenceGenerator", null, 0, 1, XmlId.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(xmlIdImplEClass, XmlIdImpl.class, "XmlIdImpl", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(baseXmlEmbeddedEClass, BaseXmlEmbedded.class, "BaseXmlEmbedded", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getBaseXmlEmbedded_AttributeOverrides(), this.getXmlAttributeOverride(), null, "attributeOverrides", null, 0, -1, BaseXmlEmbedded.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(xmlEmbeddedIdEClass, XmlEmbeddedId.class, "XmlEmbeddedId", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(xmlEmbeddedIdImplEClass, XmlEmbeddedIdImpl.class, "XmlEmbeddedIdImpl", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(xmlEmbeddedEClass, XmlEmbedded.class, "XmlEmbedded", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(xmlEmbeddedImplEClass, XmlEmbeddedImpl.class, "XmlEmbeddedImpl", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(xmlBasicEClass, XmlBasic.class, "XmlBasic", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getXmlBasic_Fetch(), this.getFetchType(), "fetch", "LAZY", 0, 1, XmlBasic.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getXmlBasic_Optional(), theXMLTypePackage.getBooleanObject(), "optional", null, 0, 1, XmlBasic.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getXmlBasic_Lob(), theXMLTypePackage.getBoolean(), "lob", null, 0, 1, XmlBasic.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getXmlBasic_Temporal(), this.getTemporalType(), "temporal", null, 0, 1, XmlBasic.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getXmlBasic_Enumerated(), this.getEnumType(), "enumerated", null, 0, 1, XmlBasic.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(xmlBasicImplEClass, XmlBasicImpl.class, "XmlBasicImpl", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(xmlVersionEClass, XmlVersion.class, "XmlVersion", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getXmlVersion_Temporal(), this.getTemporalType(), "temporal", null, 0, 1, XmlVersion.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(xmlVersionImplEClass, XmlVersionImpl.class, "XmlVersionImpl", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(xmlManyToOneEClass, XmlManyToOne.class, "XmlManyToOne", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(xmlManyToOneImplEClass, XmlManyToOneImpl.class, "XmlManyToOneImpl", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(xmlOneToManyEClass, XmlOneToMany.class, "XmlOneToMany", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getXmlOneToMany_JoinColumns(), this.getXmlJoinColumn(), null, "joinColumns", null, 0, -1, XmlOneToMany.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(xmlOneToManyImplEClass, XmlOneToManyImpl.class, "XmlOneToManyImpl", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(xmlOneToOneEClass, XmlOneToOne.class, "XmlOneToOne", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getXmlOneToOne_MappedBy(), theXMLTypePackage.getString(), "mappedBy", null, 0, 1, XmlOneToOne.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getXmlOneToOne_PrimaryKeyJoinColumns(), this.getXmlPrimaryKeyJoinColumn(), null, "primaryKeyJoinColumns", null, 0, -1, XmlOneToOne.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(xmlOneToOneImplEClass, XmlOneToOneImpl.class, "XmlOneToOneImpl", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(xmlManyToManyEClass, XmlManyToMany.class, "XmlManyToMany", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(xmlManyToManyImplEClass, XmlManyToManyImpl.class, "XmlManyToManyImpl", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(xmlTransientEClass, XmlTransient.class, "XmlTransient", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(xmlTransientImplEClass, XmlTransientImpl.class, "XmlTransientImpl", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(xmlAssociationOverrideEClass, XmlAssociationOverride.class, "XmlAssociationOverride", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getXmlAssociationOverride_JoinColumns(), this.getXmlJoinColumn(), null, "joinColumns", null, 1, -1, XmlAssociationOverride.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getXmlAssociationOverride_Name(), theXMLTypePackage.getString(), "name", null, 1, 1, XmlAssociationOverride.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(xmlAssociationOverrideImplEClass, XmlAssociationOverrideImpl.class, "XmlAssociationOverrideImpl", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(xmlAttributeOverrideEClass, XmlAttributeOverride.class, "XmlAttributeOverride", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getXmlAttributeOverride_Column(), this.getXmlColumn(), null, "column", null, 1, 1, XmlAttributeOverride.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getXmlAttributeOverride_Name(), theXMLTypePackage.getString(), "name", null, 1, 1, XmlAttributeOverride.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(xmlAttributeOverrideImplEClass, XmlAttributeOverrideImpl.class, "XmlAttributeOverrideImpl", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(cascadeTypeEClass, CascadeType.class, "CascadeType", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getCascadeType_CascadeAll(), theXMLTypePackage.getBoolean(), "cascadeAll", null, 0, 1, CascadeType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getCascadeType_CascadePersist(), theXMLTypePackage.getBoolean(), "cascadePersist", null, 0, 1, CascadeType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getCascadeType_CascadeMerge(), theXMLTypePackage.getBoolean(), "cascadeMerge", null, 0, 1, CascadeType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getCascadeType_CascadeRemove(), theXMLTypePackage.getBoolean(), "cascadeRemove", null, 0, 1, CascadeType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getCascadeType_CascadeRefresh(), theXMLTypePackage.getBoolean(), "cascadeRefresh", null, 0, 1, CascadeType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(cascadeTypeImplEClass, CascadeTypeImpl.class, "CascadeTypeImpl", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(xmlNamedColumnEClass, XmlNamedColumn.class, "XmlNamedColumn", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getXmlNamedColumn_ColumnDefinition(), theXMLTypePackage.getString(), "columnDefinition", null, 0, 1, XmlNamedColumn.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getXmlNamedColumn_Name(), theXMLTypePackage.getString(), "name", null, 0, 1, XmlNamedColumn.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(abstractXmlNamedColumnEClass, AbstractXmlNamedColumn.class, "AbstractXmlNamedColumn", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(xmlAbstractColumnEClass, XmlAbstractColumn.class, "XmlAbstractColumn", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getXmlAbstractColumn_Insertable(), theXMLTypePackage.getBooleanObject(), "insertable", null, 0, 1, XmlAbstractColumn.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getXmlAbstractColumn_Nullable(), theXMLTypePackage.getBooleanObject(), "nullable", null, 0, 1, XmlAbstractColumn.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getXmlAbstractColumn_Table(), theXMLTypePackage.getString(), "table", null, 0, 1, XmlAbstractColumn.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getXmlAbstractColumn_Unique(), theXMLTypePackage.getBooleanObject(), "unique", null, 0, 1, XmlAbstractColumn.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getXmlAbstractColumn_Updatable(), theXMLTypePackage.getBooleanObject(), "updatable", null, 0, 1, XmlAbstractColumn.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(abstractXmlAbstractColumnEClass, AbstractXmlAbstractColumn.class, "AbstractXmlAbstractColumn", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(xmlColumnEClass, XmlColumn.class, "XmlColumn", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getXmlColumn_Length(), theXMLTypePackage.getIntObject(), "length", null, 0, 1, XmlColumn.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getXmlColumn_Precision(), theXMLTypePackage.getIntObject(), "precision", null, 0, 1, XmlColumn.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getXmlColumn_Scale(), theXMLTypePackage.getIntObject(), "scale", null, 0, 1, XmlColumn.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(xmlColumnImplEClass, XmlColumnImpl.class, "XmlColumnImpl", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(columnResultEClass, ColumnResult.class, "ColumnResult", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getColumnResult_Name(), theXMLTypePackage.getString(), "name", null, 1, 1, ColumnResult.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(xmlDiscriminatorColumnEClass, XmlDiscriminatorColumn.class, "XmlDiscriminatorColumn", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getXmlDiscriminatorColumn_DiscriminatorType(), this.getDiscriminatorType(), "discriminatorType", "STRING", 0, 1, XmlDiscriminatorColumn.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getXmlDiscriminatorColumn_Length(), theXMLTypePackage.getIntObject(), "length", null, 0, 1, XmlDiscriminatorColumn.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(entityListenersEClass, EntityListeners.class, "EntityListeners", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getEntityListeners_EntityListeners(), this.getEntityListener(), null, "entityListeners", null, 0, -1, EntityListeners.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(entityListenerEClass, EntityListener.class, "EntityListener", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getEntityListener_ClassName(), theXMLTypePackage.getString(), "className", null, 1, 1, EntityListener.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getEntityListener_PrePersist(), this.getPrePersist(), null, "prePersist", null, 0, 1, EntityListener.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getEntityListener_PostPersist(), this.getPostPersist(), null, "postPersist", null, 0, 1, EntityListener.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getEntityListener_PreRemove(), this.getPreRemove(), null, "preRemove", null, 0, 1, EntityListener.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getEntityListener_PostRemove(), this.getPostRemove(), null, "postRemove", null, 0, 1, EntityListener.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getEntityListener_PreUpdate(), this.getPreUpdate(), null, "preUpdate", null, 0, 1, EntityListener.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getEntityListener_PostUpdate(), this.getPostUpdate(), null, "postUpdate", null, 0, 1, EntityListener.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getEntityListener_PostLoad(), this.getPostLoad(), null, "postLoad", null, 0, 1, EntityListener.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(entityResultEClass, EntityResult.class, "EntityResult", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getEntityResult_DiscriminatorColumn(), theXMLTypePackage.getString(), "discriminatorColumn", null, 0, 1, EntityResult.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getEntityResult_EntityClass(), theXMLTypePackage.getString(), "entityClass", null, 1, 1, EntityResult.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getEntityResult_FieldResults(), this.getFieldResult(), null, "fieldResults", null, 0, -1, EntityResult.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(eventMethodEClass, EventMethod.class, "EventMethod", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getEventMethod_MethodName(), theXMLTypePackage.getString(), "methodName", null, 1, 1, EventMethod.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(fieldResultEClass, FieldResult.class, "FieldResult", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getFieldResult_Name(), theXMLTypePackage.getString(), "name", null, 1, 1, FieldResult.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getFieldResult_Column(), theXMLTypePackage.getString(), "column", null, 1, 1, FieldResult.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(xmlGeneratedValueEClass, XmlGeneratedValue.class, "XmlGeneratedValue", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getXmlGeneratedValue_Generator(), theXMLTypePackage.getString(), "generator", null, 0, 1, XmlGeneratedValue.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getXmlGeneratedValue_Strategy(), this.getGenerationType(), "strategy", "TABLE", 0, 1, XmlGeneratedValue.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(xmlGeneratedValueImplEClass, XmlGeneratedValueImpl.class, "XmlGeneratedValueImpl", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(xmlIdClassEClass, XmlIdClass.class, "XmlIdClass", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getXmlIdClass_ClassName(), theXMLTypePackage.getString(), "className", null, 1, 1, XmlIdClass.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(inheritanceEClass, Inheritance.class, "Inheritance", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getInheritance_Strategy(), this.getInheritanceType(), "strategy", "SINGLE_TABLE", 0, 1, Inheritance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(xmlJoinColumnEClass, XmlJoinColumn.class, "XmlJoinColumn", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getXmlJoinColumn_ReferencedColumnName(), theXMLTypePackage.getString(), "referencedColumnName", null, 0, 1, XmlJoinColumn.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(xmlJoinColumnImplEClass, XmlJoinColumnImpl.class, "XmlJoinColumnImpl", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(xmlJoinTableEClass, XmlJoinTable.class, "XmlJoinTable", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getXmlJoinTable_JoinColumns(), this.getXmlJoinColumn(), null, "joinColumns", null, 0, -1, XmlJoinTable.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getXmlJoinTable_InverseJoinColumns(), this.getXmlJoinColumn(), null, "inverseJoinColumns", null, 0, -1, XmlJoinTable.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(xmlJoinTableImplEClass, XmlJoinTableImpl.class, "XmlJoinTableImpl", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(lobEClass, Lob.class, "Lob", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(mapKeyEClass, MapKey.class, "MapKey", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getMapKey_Name(), theXMLTypePackage.getString(), "name", null, 0, 1, MapKey.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(mapKeyImplEClass, MapKeyImpl.class, "MapKeyImpl", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(xmlQueryEClass, XmlQuery.class, "XmlQuery", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getXmlQuery_Name(), theXMLTypePackage.getString(), "name", null, 1, 1, XmlQuery.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getXmlQuery_Query(), theXMLTypePackage.getString(), "query", null, 1, 1, XmlQuery.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getXmlQuery_Hints(), this.getXmlQueryHint(), null, "hints", null, 0, -1, XmlQuery.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(xmlNamedNativeQueryEClass, XmlNamedNativeQuery.class, "XmlNamedNativeQuery", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getXmlNamedNativeQuery_ResultClass(), theXMLTypePackage.getString(), "resultClass", null, 0, 1, XmlNamedNativeQuery.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getXmlNamedNativeQuery_ResultSetMapping(), theXMLTypePackage.getString(), "resultSetMapping", null, 0, 1, XmlNamedNativeQuery.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(xmlNamedQueryEClass, XmlNamedQuery.class, "XmlNamedQuery", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(postLoadEClass, PostLoad.class, "PostLoad", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(postPersistEClass, PostPersist.class, "PostPersist", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(postRemoveEClass, PostRemove.class, "PostRemove", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(postUpdateEClass, PostUpdate.class, "PostUpdate", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(prePersistEClass, PrePersist.class, "PrePersist", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(preRemoveEClass, PreRemove.class, "PreRemove", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(preUpdateEClass, PreUpdate.class, "PreUpdate", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(xmlPrimaryKeyJoinColumnEClass, XmlPrimaryKeyJoinColumn.class, "XmlPrimaryKeyJoinColumn", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getXmlPrimaryKeyJoinColumn_ReferencedColumnName(), theXMLTypePackage.getString(), "referencedColumnName", null, 0, 1, XmlPrimaryKeyJoinColumn.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(xmlPrimaryKeyJoinColumnImplEClass, XmlPrimaryKeyJoinColumnImpl.class, "XmlPrimaryKeyJoinColumnImpl", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(xmlQueryHintEClass, XmlQueryHint.class, "XmlQueryHint", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getXmlQueryHint_Name(), theXMLTypePackage.getString(), "name", null, 1, 1, XmlQueryHint.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getXmlQueryHint_Value(), theXMLTypePackage.getString(), "value", null, 1, 1, XmlQueryHint.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(abstractXmlBaseTableEClass, AbstractXmlBaseTable.class, "AbstractXmlBaseTable", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(xmlBaseTableEClass, XmlBaseTable.class, "XmlBaseTable", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getXmlBaseTable_Name(), theXMLTypePackage.getString(), "name", null, 0, 1, XmlBaseTable.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getXmlBaseTable_Catalog(), theXMLTypePackage.getString(), "catalog", null, 0, 1, XmlBaseTable.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getXmlBaseTable_Schema(), theXMLTypePackage.getString(), "schema", null, 0, 1, XmlBaseTable.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getXmlBaseTable_UniqueConstraints(), this.getXmlUniqueConstraint(), null, "uniqueConstraints", null, 0, -1, XmlBaseTable.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(xmlTableEClass, XmlTable.class, "XmlTable", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(xmlSecondaryTableEClass, XmlSecondaryTable.class, "XmlSecondaryTable", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getXmlSecondaryTable_PrimaryKeyJoinColumns(), this.getXmlPrimaryKeyJoinColumn(), null, "primaryKeyJoinColumns", null, 0, -1, XmlSecondaryTable.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(xmlSecondaryTableImplEClass, XmlSecondaryTableImpl.class, "XmlSecondaryTableImpl", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(xmlGeneratorEClass, XmlGenerator.class, "XmlGenerator", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getXmlGenerator_Name(), theXMLTypePackage.getString(), "name", null, 1, 1, XmlGenerator.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getXmlGenerator_InitialValue(), theXMLTypePackage.getIntObject(), "initialValue", null, 0, 1, XmlGenerator.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getXmlGenerator_AllocationSize(), theXMLTypePackage.getIntObject(), "allocationSize", null, 0, 1, XmlGenerator.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(xmlSequenceGeneratorEClass, XmlSequenceGenerator.class, "XmlSequenceGenerator", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getXmlSequenceGenerator_SequenceName(), theXMLTypePackage.getString(), "sequenceName", null, 0, 1, XmlSequenceGenerator.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(xmlSequenceGeneratorImplEClass, XmlSequenceGeneratorImpl.class, "XmlSequenceGeneratorImpl", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(sqlResultSetMappingEClass, SqlResultSetMapping.class, "SqlResultSetMapping", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getSqlResultSetMapping_Name(), theXMLTypePackage.getString(), "name", null, 1, 1, SqlResultSetMapping.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getSqlResultSetMapping_EntityResults(), this.getEntityResult(), null, "entityResults", null, 0, -1, SqlResultSetMapping.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getSqlResultSetMapping_ColumnResults(), this.getColumnResult(), null, "columnResults", null, 0, -1, SqlResultSetMapping.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(xmlTableGeneratorEClass, XmlTableGenerator.class, "XmlTableGenerator", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getXmlTableGenerator_Table(), theXMLTypePackage.getString(), "table", null, 0, 1, XmlTableGenerator.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getXmlTableGenerator_Catalog(), theXMLTypePackage.getString(), "catalog", null, 0, 1, XmlTableGenerator.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getXmlTableGenerator_Schema(), theXMLTypePackage.getString(), "schema", null, 0, 1, XmlTableGenerator.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getXmlTableGenerator_PkColumnName(), theXMLTypePackage.getString(), "pkColumnName", null, 0, 1, XmlTableGenerator.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getXmlTableGenerator_ValueColumnName(), theXMLTypePackage.getString(), "valueColumnName", null, 0, 1, XmlTableGenerator.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getXmlTableGenerator_PkColumnValue(), theXMLTypePackage.getString(), "pkColumnValue", null, 0, 1, XmlTableGenerator.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getXmlTableGenerator_UniqueConstraints(), this.getXmlUniqueConstraint(), null, "uniqueConstraints", null, 0, -1, XmlTableGenerator.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(xmlTableGeneratorImplEClass, XmlTableGeneratorImpl.class, "XmlTableGeneratorImpl", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(xmlUniqueConstraintEClass, XmlUniqueConstraint.class, "XmlUniqueConstraint", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getXmlUniqueConstraint_ColumnNames(), theXMLTypePackage.getString(), "columnNames", null, 1, -1, XmlUniqueConstraint.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(xmlUniqueConstraintImplEClass, XmlUniqueConstraintImpl.class, "XmlUniqueConstraintImpl", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + // Initialize enums and add enum literals + initEEnum(accessTypeEEnum, AccessType.class, "AccessType"); + addEEnumLiteral(accessTypeEEnum, AccessType.PROPERTY); + addEEnumLiteral(accessTypeEEnum, AccessType.FIELD); + + initEEnum(discriminatorTypeEEnum, DiscriminatorType.class, "DiscriminatorType"); + addEEnumLiteral(discriminatorTypeEEnum, DiscriminatorType.STRING); + addEEnumLiteral(discriminatorTypeEEnum, DiscriminatorType.CHAR); + addEEnumLiteral(discriminatorTypeEEnum, DiscriminatorType.INTEGER); + + initEEnum(enumTypeEEnum, EnumType.class, "EnumType"); + addEEnumLiteral(enumTypeEEnum, EnumType.ORDINAL); + addEEnumLiteral(enumTypeEEnum, EnumType.STRING); + + initEEnum(fetchTypeEEnum, FetchType.class, "FetchType"); + addEEnumLiteral(fetchTypeEEnum, FetchType.LAZY); + addEEnumLiteral(fetchTypeEEnum, FetchType.EAGER); + + initEEnum(generationTypeEEnum, GenerationType.class, "GenerationType"); + addEEnumLiteral(generationTypeEEnum, GenerationType.TABLE); + addEEnumLiteral(generationTypeEEnum, GenerationType.SEQUENCE); + addEEnumLiteral(generationTypeEEnum, GenerationType.IDENTITY); + addEEnumLiteral(generationTypeEEnum, GenerationType.AUTO); + + initEEnum(inheritanceTypeEEnum, InheritanceType.class, "InheritanceType"); + addEEnumLiteral(inheritanceTypeEEnum, InheritanceType.SINGLE_TABLE); + addEEnumLiteral(inheritanceTypeEEnum, InheritanceType.JOINED); + addEEnumLiteral(inheritanceTypeEEnum, InheritanceType.TABLE_PER_CLASS); + + initEEnum(temporalTypeEEnum, TemporalType.class, "TemporalType"); + addEEnumLiteral(temporalTypeEEnum, TemporalType.DATE); + addEEnumLiteral(temporalTypeEEnum, TemporalType.TIME); + addEEnumLiteral(temporalTypeEEnum, TemporalType.TIMESTAMP); + + // Initialize data types + initEDataType(discriminatorValueEDataType, String.class, "DiscriminatorValue", IS_SERIALIZABLE, !IS_GENERATED_INSTANCE_CLASS); + initEDataType(enumeratedEDataType, Enumerator.class, "Enumerated", IS_SERIALIZABLE, !IS_GENERATED_INSTANCE_CLASS); + initEDataType(orderByEDataType, String.class, "OrderBy", IS_SERIALIZABLE, !IS_GENERATED_INSTANCE_CLASS); + initEDataType(versionTypeEDataType, String.class, "VersionType", IS_SERIALIZABLE, !IS_GENERATED_INSTANCE_CLASS); + + // Create resource + createResource(eNS_URI); + } + + /** + * <!-- begin-user-doc --> + * Defines literals for the meta objects that represent + * <ul> + * <li>each class,</li> + * <li>each feature of each class,</li> + * <li>each enum,</li> + * <li>and each data type</li> + * </ul> + * <!-- end-user-doc --> + * @generated + */ + public interface Literals + { + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings <em>Xml Entity Mappings</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEntityMappings() + * @generated + */ + public static final EClass XML_ENTITY_MAPPINGS = eINSTANCE.getXmlEntityMappings(); + + /** + * The meta object literal for the '<em><b>Version</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_ENTITY_MAPPINGS__VERSION = eINSTANCE.getXmlEntityMappings_Version(); + + /** + * The meta object literal for the '<em><b>Description</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_ENTITY_MAPPINGS__DESCRIPTION = eINSTANCE.getXmlEntityMappings_Description(); + + /** + * The meta object literal for the '<em><b>Persistence Unit Metadata</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_ENTITY_MAPPINGS__PERSISTENCE_UNIT_METADATA = eINSTANCE.getXmlEntityMappings_PersistenceUnitMetadata(); + + /** + * The meta object literal for the '<em><b>Package</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_ENTITY_MAPPINGS__PACKAGE = eINSTANCE.getXmlEntityMappings_Package(); + + /** + * The meta object literal for the '<em><b>Schema</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_ENTITY_MAPPINGS__SCHEMA = eINSTANCE.getXmlEntityMappings_Schema(); + + /** + * The meta object literal for the '<em><b>Catalog</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_ENTITY_MAPPINGS__CATALOG = eINSTANCE.getXmlEntityMappings_Catalog(); + + /** + * The meta object literal for the '<em><b>Access</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_ENTITY_MAPPINGS__ACCESS = eINSTANCE.getXmlEntityMappings_Access(); + + /** + * The meta object literal for the '<em><b>Sequence Generators</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_ENTITY_MAPPINGS__SEQUENCE_GENERATORS = eINSTANCE.getXmlEntityMappings_SequenceGenerators(); + + /** + * The meta object literal for the '<em><b>Table Generators</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_ENTITY_MAPPINGS__TABLE_GENERATORS = eINSTANCE.getXmlEntityMappings_TableGenerators(); + + /** + * The meta object literal for the '<em><b>Named Queries</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_ENTITY_MAPPINGS__NAMED_QUERIES = eINSTANCE.getXmlEntityMappings_NamedQueries(); + + /** + * The meta object literal for the '<em><b>Named Native Queries</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_ENTITY_MAPPINGS__NAMED_NATIVE_QUERIES = eINSTANCE.getXmlEntityMappings_NamedNativeQueries(); + + /** + * The meta object literal for the '<em><b>Sql Result Set Mappings</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_ENTITY_MAPPINGS__SQL_RESULT_SET_MAPPINGS = eINSTANCE.getXmlEntityMappings_SqlResultSetMappings(); + + /** + * The meta object literal for the '<em><b>Mapped Superclasses</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_ENTITY_MAPPINGS__MAPPED_SUPERCLASSES = eINSTANCE.getXmlEntityMappings_MappedSuperclasses(); + + /** + * The meta object literal for the '<em><b>Entities</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_ENTITY_MAPPINGS__ENTITIES = eINSTANCE.getXmlEntityMappings_Entities(); + + /** + * The meta object literal for the '<em><b>Embeddables</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_ENTITY_MAPPINGS__EMBEDDABLES = eINSTANCE.getXmlEntityMappings_Embeddables(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPersistenceUnitMetadata <em>Xml Persistence Unit Metadata</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPersistenceUnitMetadata + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlPersistenceUnitMetadata() + * @generated + */ + public static final EClass XML_PERSISTENCE_UNIT_METADATA = eINSTANCE.getXmlPersistenceUnitMetadata(); + + /** + * The meta object literal for the '<em><b>Xml Mapping Metadata Complete</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_PERSISTENCE_UNIT_METADATA__XML_MAPPING_METADATA_COMPLETE = eINSTANCE.getXmlPersistenceUnitMetadata_XmlMappingMetadataComplete(); + + /** + * The meta object literal for the '<em><b>Persistence Unit Defaults</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_PERSISTENCE_UNIT_METADATA__PERSISTENCE_UNIT_DEFAULTS = eINSTANCE.getXmlPersistenceUnitMetadata_PersistenceUnitDefaults(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPersistenceUnitDefaults <em>Xml Persistence Unit Defaults</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPersistenceUnitDefaults + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlPersistenceUnitDefaults() + * @generated + */ + public static final EClass XML_PERSISTENCE_UNIT_DEFAULTS = eINSTANCE.getXmlPersistenceUnitDefaults(); + + /** + * The meta object literal for the '<em><b>Schema</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_PERSISTENCE_UNIT_DEFAULTS__SCHEMA = eINSTANCE.getXmlPersistenceUnitDefaults_Schema(); + + /** + * The meta object literal for the '<em><b>Catalog</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_PERSISTENCE_UNIT_DEFAULTS__CATALOG = eINSTANCE.getXmlPersistenceUnitDefaults_Catalog(); + + /** + * The meta object literal for the '<em><b>Access</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_PERSISTENCE_UNIT_DEFAULTS__ACCESS = eINSTANCE.getXmlPersistenceUnitDefaults_Access(); + + /** + * The meta object literal for the '<em><b>Cascade Persist</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_PERSISTENCE_UNIT_DEFAULTS__CASCADE_PERSIST = eINSTANCE.getXmlPersistenceUnitDefaults_CascadePersist(); + + /** + * The meta object literal for the '<em><b>Entity Listeners</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_PERSISTENCE_UNIT_DEFAULTS__ENTITY_LISTENERS = eINSTANCE.getXmlPersistenceUnitDefaults_EntityListeners(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlTypeMapping <em>Abstract Xml Type Mapping</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlTypeMapping + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getAbstractXmlTypeMapping() + * @generated + */ + public static final EClass ABSTRACT_XML_TYPE_MAPPING = eINSTANCE.getAbstractXmlTypeMapping(); + + /** + * The meta object literal for the '<em><b>Class Name</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute ABSTRACT_XML_TYPE_MAPPING__CLASS_NAME = eINSTANCE.getAbstractXmlTypeMapping_ClassName(); + + /** + * The meta object literal for the '<em><b>Access</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute ABSTRACT_XML_TYPE_MAPPING__ACCESS = eINSTANCE.getAbstractXmlTypeMapping_Access(); + + /** + * The meta object literal for the '<em><b>Metadata Complete</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute ABSTRACT_XML_TYPE_MAPPING__METADATA_COMPLETE = eINSTANCE.getAbstractXmlTypeMapping_MetadataComplete(); + + /** + * The meta object literal for the '<em><b>Description</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute ABSTRACT_XML_TYPE_MAPPING__DESCRIPTION = eINSTANCE.getAbstractXmlTypeMapping_Description(); + + /** + * The meta object literal for the '<em><b>Attributes</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference ABSTRACT_XML_TYPE_MAPPING__ATTRIBUTES = eINSTANCE.getAbstractXmlTypeMapping_Attributes(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMappedSuperclass <em>Xml Mapped Superclass</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMappedSuperclass + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlMappedSuperclass() + * @generated + */ + public static final EClass XML_MAPPED_SUPERCLASS = eINSTANCE.getXmlMappedSuperclass(); + + /** + * The meta object literal for the '<em><b>Id Class</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_MAPPED_SUPERCLASS__ID_CLASS = eINSTANCE.getXmlMappedSuperclass_IdClass(); + + /** + * The meta object literal for the '<em><b>Exclude Default Listeners</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_MAPPED_SUPERCLASS__EXCLUDE_DEFAULT_LISTENERS = eINSTANCE.getXmlMappedSuperclass_ExcludeDefaultListeners(); + + /** + * The meta object literal for the '<em><b>Exclude Superclass Listeners</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_MAPPED_SUPERCLASS__EXCLUDE_SUPERCLASS_LISTENERS = eINSTANCE.getXmlMappedSuperclass_ExcludeSuperclassListeners(); + + /** + * The meta object literal for the '<em><b>Entity Listeners</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_MAPPED_SUPERCLASS__ENTITY_LISTENERS = eINSTANCE.getXmlMappedSuperclass_EntityListeners(); + + /** + * The meta object literal for the '<em><b>Pre Persist</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_MAPPED_SUPERCLASS__PRE_PERSIST = eINSTANCE.getXmlMappedSuperclass_PrePersist(); + + /** + * The meta object literal for the '<em><b>Post Persist</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_MAPPED_SUPERCLASS__POST_PERSIST = eINSTANCE.getXmlMappedSuperclass_PostPersist(); + + /** + * The meta object literal for the '<em><b>Pre Remove</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_MAPPED_SUPERCLASS__PRE_REMOVE = eINSTANCE.getXmlMappedSuperclass_PreRemove(); + + /** + * The meta object literal for the '<em><b>Post Remove</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_MAPPED_SUPERCLASS__POST_REMOVE = eINSTANCE.getXmlMappedSuperclass_PostRemove(); + + /** + * The meta object literal for the '<em><b>Pre Update</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_MAPPED_SUPERCLASS__PRE_UPDATE = eINSTANCE.getXmlMappedSuperclass_PreUpdate(); + + /** + * The meta object literal for the '<em><b>Post Update</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_MAPPED_SUPERCLASS__POST_UPDATE = eINSTANCE.getXmlMappedSuperclass_PostUpdate(); + + /** + * The meta object literal for the '<em><b>Post Load</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_MAPPED_SUPERCLASS__POST_LOAD = eINSTANCE.getXmlMappedSuperclass_PostLoad(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity <em>Xml Entity</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEntity() + * @generated + */ + public static final EClass XML_ENTITY = eINSTANCE.getXmlEntity(); + + /** + * The meta object literal for the '<em><b>Name</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_ENTITY__NAME = eINSTANCE.getXmlEntity_Name(); + + /** + * The meta object literal for the '<em><b>Table</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_ENTITY__TABLE = eINSTANCE.getXmlEntity_Table(); + + /** + * The meta object literal for the '<em><b>Secondary Tables</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_ENTITY__SECONDARY_TABLES = eINSTANCE.getXmlEntity_SecondaryTables(); + + /** + * The meta object literal for the '<em><b>Primary Key Join Columns</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_ENTITY__PRIMARY_KEY_JOIN_COLUMNS = eINSTANCE.getXmlEntity_PrimaryKeyJoinColumns(); + + /** + * The meta object literal for the '<em><b>Id Class</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_ENTITY__ID_CLASS = eINSTANCE.getXmlEntity_IdClass(); + + /** + * The meta object literal for the '<em><b>Inheritance</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_ENTITY__INHERITANCE = eINSTANCE.getXmlEntity_Inheritance(); + + /** + * The meta object literal for the '<em><b>Discriminator Value</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_ENTITY__DISCRIMINATOR_VALUE = eINSTANCE.getXmlEntity_DiscriminatorValue(); + + /** + * The meta object literal for the '<em><b>Discriminator Column</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_ENTITY__DISCRIMINATOR_COLUMN = eINSTANCE.getXmlEntity_DiscriminatorColumn(); + + /** + * The meta object literal for the '<em><b>Sequence Generator</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_ENTITY__SEQUENCE_GENERATOR = eINSTANCE.getXmlEntity_SequenceGenerator(); + + /** + * The meta object literal for the '<em><b>Table Generator</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_ENTITY__TABLE_GENERATOR = eINSTANCE.getXmlEntity_TableGenerator(); + + /** + * The meta object literal for the '<em><b>Named Queries</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_ENTITY__NAMED_QUERIES = eINSTANCE.getXmlEntity_NamedQueries(); + + /** + * The meta object literal for the '<em><b>Named Native Queries</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_ENTITY__NAMED_NATIVE_QUERIES = eINSTANCE.getXmlEntity_NamedNativeQueries(); + + /** + * The meta object literal for the '<em><b>Sql Result Set Mappings</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_ENTITY__SQL_RESULT_SET_MAPPINGS = eINSTANCE.getXmlEntity_SqlResultSetMappings(); + + /** + * The meta object literal for the '<em><b>Exclude Default Listeners</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_ENTITY__EXCLUDE_DEFAULT_LISTENERS = eINSTANCE.getXmlEntity_ExcludeDefaultListeners(); + + /** + * The meta object literal for the '<em><b>Exclude Superclass Listeners</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_ENTITY__EXCLUDE_SUPERCLASS_LISTENERS = eINSTANCE.getXmlEntity_ExcludeSuperclassListeners(); + + /** + * The meta object literal for the '<em><b>Entity Listeners</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_ENTITY__ENTITY_LISTENERS = eINSTANCE.getXmlEntity_EntityListeners(); + + /** + * The meta object literal for the '<em><b>Pre Persist</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_ENTITY__PRE_PERSIST = eINSTANCE.getXmlEntity_PrePersist(); + + /** + * The meta object literal for the '<em><b>Post Persist</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_ENTITY__POST_PERSIST = eINSTANCE.getXmlEntity_PostPersist(); + + /** + * The meta object literal for the '<em><b>Pre Remove</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_ENTITY__PRE_REMOVE = eINSTANCE.getXmlEntity_PreRemove(); + + /** + * The meta object literal for the '<em><b>Post Remove</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_ENTITY__POST_REMOVE = eINSTANCE.getXmlEntity_PostRemove(); + + /** + * The meta object literal for the '<em><b>Pre Update</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_ENTITY__PRE_UPDATE = eINSTANCE.getXmlEntity_PreUpdate(); + + /** + * The meta object literal for the '<em><b>Post Update</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_ENTITY__POST_UPDATE = eINSTANCE.getXmlEntity_PostUpdate(); + + /** + * The meta object literal for the '<em><b>Post Load</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_ENTITY__POST_LOAD = eINSTANCE.getXmlEntity_PostLoad(); + + /** + * The meta object literal for the '<em><b>Attribute Overrides</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_ENTITY__ATTRIBUTE_OVERRIDES = eINSTANCE.getXmlEntity_AttributeOverrides(); + + /** + * The meta object literal for the '<em><b>Association Overrides</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_ENTITY__ASSOCIATION_OVERRIDES = eINSTANCE.getXmlEntity_AssociationOverrides(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEmbeddable <em>Xml Embeddable</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEmbeddable + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEmbeddable() + * @generated + */ + public static final EClass XML_EMBEDDABLE = eINSTANCE.getXmlEmbeddable(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.Attributes <em>Attributes</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.Attributes + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getAttributes() + * @generated + */ + public static final EClass ATTRIBUTES = eINSTANCE.getAttributes(); + + /** + * The meta object literal for the '<em><b>Ids</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference ATTRIBUTES__IDS = eINSTANCE.getAttributes_Ids(); + + /** + * The meta object literal for the '<em><b>Embedded Ids</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference ATTRIBUTES__EMBEDDED_IDS = eINSTANCE.getAttributes_EmbeddedIds(); + + /** + * The meta object literal for the '<em><b>Basics</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference ATTRIBUTES__BASICS = eINSTANCE.getAttributes_Basics(); + + /** + * The meta object literal for the '<em><b>Versions</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference ATTRIBUTES__VERSIONS = eINSTANCE.getAttributes_Versions(); + + /** + * The meta object literal for the '<em><b>Many To Ones</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference ATTRIBUTES__MANY_TO_ONES = eINSTANCE.getAttributes_ManyToOnes(); + + /** + * The meta object literal for the '<em><b>One To Manys</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference ATTRIBUTES__ONE_TO_MANYS = eINSTANCE.getAttributes_OneToManys(); + + /** + * The meta object literal for the '<em><b>One To Ones</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference ATTRIBUTES__ONE_TO_ONES = eINSTANCE.getAttributes_OneToOnes(); + + /** + * The meta object literal for the '<em><b>Many To Manys</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference ATTRIBUTES__MANY_TO_MANYS = eINSTANCE.getAttributes_ManyToManys(); + + /** + * The meta object literal for the '<em><b>Embeddeds</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference ATTRIBUTES__EMBEDDEDS = eINSTANCE.getAttributes_Embeddeds(); + + /** + * The meta object literal for the '<em><b>Transients</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference ATTRIBUTES__TRANSIENTS = eINSTANCE.getAttributes_Transients(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAttributeMapping <em>Xml Attribute Mapping</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAttributeMapping + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlAttributeMapping() + * @generated + */ + public static final EClass XML_ATTRIBUTE_MAPPING = eINSTANCE.getXmlAttributeMapping(); + + /** + * The meta object literal for the '<em><b>Name</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_ATTRIBUTE_MAPPING__NAME = eINSTANCE.getXmlAttributeMapping_Name(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlAttributeMapping <em>Abstract Xml Attribute Mapping</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlAttributeMapping + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getAbstractXmlAttributeMapping() + * @generated + */ + public static final EClass ABSTRACT_XML_ATTRIBUTE_MAPPING = eINSTANCE.getAbstractXmlAttributeMapping(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlNullAttributeMapping <em>Xml Null Attribute Mapping</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlNullAttributeMapping + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlNullAttributeMapping() + * @generated + */ + public static final EClass XML_NULL_ATTRIBUTE_MAPPING = eINSTANCE.getXmlNullAttributeMapping(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.ColumnMapping <em>Column Mapping</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.ColumnMapping + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getColumnMapping() + * @generated + */ + public static final EClass COLUMN_MAPPING = eINSTANCE.getColumnMapping(); + + /** + * The meta object literal for the '<em><b>Column</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference COLUMN_MAPPING__COLUMN = eINSTANCE.getColumnMapping_Column(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlRelationshipMapping <em>Xml Relationship Mapping</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlRelationshipMapping + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlRelationshipMapping() + * @generated + */ + public static final EClass XML_RELATIONSHIP_MAPPING = eINSTANCE.getXmlRelationshipMapping(); + + /** + * The meta object literal for the '<em><b>Target Entity</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_RELATIONSHIP_MAPPING__TARGET_ENTITY = eINSTANCE.getXmlRelationshipMapping_TargetEntity(); + + /** + * The meta object literal for the '<em><b>Fetch</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_RELATIONSHIP_MAPPING__FETCH = eINSTANCE.getXmlRelationshipMapping_Fetch(); + + /** + * The meta object literal for the '<em><b>Join Table</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_RELATIONSHIP_MAPPING__JOIN_TABLE = eINSTANCE.getXmlRelationshipMapping_JoinTable(); + + /** + * The meta object literal for the '<em><b>Cascade</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_RELATIONSHIP_MAPPING__CASCADE = eINSTANCE.getXmlRelationshipMapping_Cascade(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMultiRelationshipMapping <em>Xml Multi Relationship Mapping</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMultiRelationshipMapping + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlMultiRelationshipMapping() + * @generated + */ + public static final EClass XML_MULTI_RELATIONSHIP_MAPPING = eINSTANCE.getXmlMultiRelationshipMapping(); + + /** + * The meta object literal for the '<em><b>Mapped By</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_MULTI_RELATIONSHIP_MAPPING__MAPPED_BY = eINSTANCE.getXmlMultiRelationshipMapping_MappedBy(); + + /** + * The meta object literal for the '<em><b>Order By</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_MULTI_RELATIONSHIP_MAPPING__ORDER_BY = eINSTANCE.getXmlMultiRelationshipMapping_OrderBy(); + + /** + * The meta object literal for the '<em><b>Map Key</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_MULTI_RELATIONSHIP_MAPPING__MAP_KEY = eINSTANCE.getXmlMultiRelationshipMapping_MapKey(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlSingleRelationshipMapping <em>Xml Single Relationship Mapping</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlSingleRelationshipMapping + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlSingleRelationshipMapping() + * @generated + */ + public static final EClass XML_SINGLE_RELATIONSHIP_MAPPING = eINSTANCE.getXmlSingleRelationshipMapping(); + + /** + * The meta object literal for the '<em><b>Optional</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_SINGLE_RELATIONSHIP_MAPPING__OPTIONAL = eINSTANCE.getXmlSingleRelationshipMapping_Optional(); + + /** + * The meta object literal for the '<em><b>Join Columns</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_SINGLE_RELATIONSHIP_MAPPING__JOIN_COLUMNS = eINSTANCE.getXmlSingleRelationshipMapping_JoinColumns(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlId <em>Xml Id</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlId + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlId() + * @generated + */ + public static final EClass XML_ID = eINSTANCE.getXmlId(); + + /** + * The meta object literal for the '<em><b>Generated Value</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_ID__GENERATED_VALUE = eINSTANCE.getXmlId_GeneratedValue(); + + /** + * The meta object literal for the '<em><b>Temporal</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_ID__TEMPORAL = eINSTANCE.getXmlId_Temporal(); + + /** + * The meta object literal for the '<em><b>Table Generator</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_ID__TABLE_GENERATOR = eINSTANCE.getXmlId_TableGenerator(); + + /** + * The meta object literal for the '<em><b>Sequence Generator</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_ID__SEQUENCE_GENERATOR = eINSTANCE.getXmlId_SequenceGenerator(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlIdImpl <em>Xml Id Impl</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlIdImpl + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlIdImpl() + * @generated + */ + public static final EClass XML_ID_IMPL = eINSTANCE.getXmlIdImpl(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.BaseXmlEmbedded <em>Base Xml Embedded</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.BaseXmlEmbedded + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getBaseXmlEmbedded() + * @generated + */ + public static final EClass BASE_XML_EMBEDDED = eINSTANCE.getBaseXmlEmbedded(); + + /** + * The meta object literal for the '<em><b>Attribute Overrides</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference BASE_XML_EMBEDDED__ATTRIBUTE_OVERRIDES = eINSTANCE.getBaseXmlEmbedded_AttributeOverrides(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEmbeddedId <em>Xml Embedded Id</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEmbeddedId + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEmbeddedId() + * @generated + */ + public static final EClass XML_EMBEDDED_ID = eINSTANCE.getXmlEmbeddedId(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEmbeddedIdImpl <em>Xml Embedded Id Impl</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEmbeddedIdImpl + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEmbeddedIdImpl() + * @generated + */ + public static final EClass XML_EMBEDDED_ID_IMPL = eINSTANCE.getXmlEmbeddedIdImpl(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEmbedded <em>Xml Embedded</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEmbedded + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEmbedded() + * @generated + */ + public static final EClass XML_EMBEDDED = eINSTANCE.getXmlEmbedded(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEmbeddedImpl <em>Xml Embedded Impl</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEmbeddedImpl + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEmbeddedImpl() + * @generated + */ + public static final EClass XML_EMBEDDED_IMPL = eINSTANCE.getXmlEmbeddedImpl(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBasic <em>Xml Basic</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBasic + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlBasic() + * @generated + */ + public static final EClass XML_BASIC = eINSTANCE.getXmlBasic(); + + /** + * The meta object literal for the '<em><b>Fetch</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_BASIC__FETCH = eINSTANCE.getXmlBasic_Fetch(); + + /** + * The meta object literal for the '<em><b>Optional</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_BASIC__OPTIONAL = eINSTANCE.getXmlBasic_Optional(); + + /** + * The meta object literal for the '<em><b>Lob</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_BASIC__LOB = eINSTANCE.getXmlBasic_Lob(); + + /** + * The meta object literal for the '<em><b>Temporal</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_BASIC__TEMPORAL = eINSTANCE.getXmlBasic_Temporal(); + + /** + * The meta object literal for the '<em><b>Enumerated</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_BASIC__ENUMERATED = eINSTANCE.getXmlBasic_Enumerated(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBasicImpl <em>Xml Basic Impl</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBasicImpl + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlBasicImpl() + * @generated + */ + public static final EClass XML_BASIC_IMPL = eINSTANCE.getXmlBasicImpl(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlVersion <em>Xml Version</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlVersion + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlVersion() + * @generated + */ + public static final EClass XML_VERSION = eINSTANCE.getXmlVersion(); + + /** + * The meta object literal for the '<em><b>Temporal</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_VERSION__TEMPORAL = eINSTANCE.getXmlVersion_Temporal(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlVersionImpl <em>Xml Version Impl</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlVersionImpl + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlVersionImpl() + * @generated + */ + public static final EClass XML_VERSION_IMPL = eINSTANCE.getXmlVersionImpl(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlManyToOne <em>Xml Many To One</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlManyToOne + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlManyToOne() + * @generated + */ + public static final EClass XML_MANY_TO_ONE = eINSTANCE.getXmlManyToOne(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlManyToOneImpl <em>Xml Many To One Impl</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlManyToOneImpl + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlManyToOneImpl() + * @generated + */ + public static final EClass XML_MANY_TO_ONE_IMPL = eINSTANCE.getXmlManyToOneImpl(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlOneToMany <em>Xml One To Many</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlOneToMany + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlOneToMany() + * @generated + */ + public static final EClass XML_ONE_TO_MANY = eINSTANCE.getXmlOneToMany(); + + /** + * The meta object literal for the '<em><b>Join Columns</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_ONE_TO_MANY__JOIN_COLUMNS = eINSTANCE.getXmlOneToMany_JoinColumns(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlOneToManyImpl <em>Xml One To Many Impl</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlOneToManyImpl + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlOneToManyImpl() + * @generated + */ + public static final EClass XML_ONE_TO_MANY_IMPL = eINSTANCE.getXmlOneToManyImpl(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlOneToOne <em>Xml One To One</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlOneToOne + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlOneToOne() + * @generated + */ + public static final EClass XML_ONE_TO_ONE = eINSTANCE.getXmlOneToOne(); + + /** + * The meta object literal for the '<em><b>Mapped By</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_ONE_TO_ONE__MAPPED_BY = eINSTANCE.getXmlOneToOne_MappedBy(); + + /** + * The meta object literal for the '<em><b>Primary Key Join Columns</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_ONE_TO_ONE__PRIMARY_KEY_JOIN_COLUMNS = eINSTANCE.getXmlOneToOne_PrimaryKeyJoinColumns(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlOneToOneImpl <em>Xml One To One Impl</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlOneToOneImpl + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlOneToOneImpl() + * @generated + */ + public static final EClass XML_ONE_TO_ONE_IMPL = eINSTANCE.getXmlOneToOneImpl(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlManyToMany <em>Xml Many To Many</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlManyToMany + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlManyToMany() + * @generated + */ + public static final EClass XML_MANY_TO_MANY = eINSTANCE.getXmlManyToMany(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlManyToManyImpl <em>Xml Many To Many Impl</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlManyToManyImpl + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlManyToManyImpl() + * @generated + */ + public static final EClass XML_MANY_TO_MANY_IMPL = eINSTANCE.getXmlManyToManyImpl(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTransient <em>Xml Transient</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTransient + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlTransient() + * @generated + */ + public static final EClass XML_TRANSIENT = eINSTANCE.getXmlTransient(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTransientImpl <em>Xml Transient Impl</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTransientImpl + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlTransientImpl() + * @generated + */ + public static final EClass XML_TRANSIENT_IMPL = eINSTANCE.getXmlTransientImpl(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAssociationOverride <em>Xml Association Override</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAssociationOverride + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlAssociationOverride() + * @generated + */ + public static final EClass XML_ASSOCIATION_OVERRIDE = eINSTANCE.getXmlAssociationOverride(); + + /** + * The meta object literal for the '<em><b>Join Columns</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_ASSOCIATION_OVERRIDE__JOIN_COLUMNS = eINSTANCE.getXmlAssociationOverride_JoinColumns(); + + /** + * The meta object literal for the '<em><b>Name</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_ASSOCIATION_OVERRIDE__NAME = eINSTANCE.getXmlAssociationOverride_Name(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAssociationOverrideImpl <em>Xml Association Override Impl</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAssociationOverrideImpl + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlAssociationOverrideImpl() + * @generated + */ + public static final EClass XML_ASSOCIATION_OVERRIDE_IMPL = eINSTANCE.getXmlAssociationOverrideImpl(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAttributeOverride <em>Xml Attribute Override</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAttributeOverride + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlAttributeOverride() + * @generated + */ + public static final EClass XML_ATTRIBUTE_OVERRIDE = eINSTANCE.getXmlAttributeOverride(); + + /** + * The meta object literal for the '<em><b>Column</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_ATTRIBUTE_OVERRIDE__COLUMN = eINSTANCE.getXmlAttributeOverride_Column(); + + /** + * The meta object literal for the '<em><b>Name</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_ATTRIBUTE_OVERRIDE__NAME = eINSTANCE.getXmlAttributeOverride_Name(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAttributeOverrideImpl <em>Xml Attribute Override Impl</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAttributeOverrideImpl + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlAttributeOverrideImpl() + * @generated + */ + public static final EClass XML_ATTRIBUTE_OVERRIDE_IMPL = eINSTANCE.getXmlAttributeOverrideImpl(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.CascadeType <em>Cascade Type</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.CascadeType + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getCascadeType() + * @generated + */ + public static final EClass CASCADE_TYPE = eINSTANCE.getCascadeType(); + + /** + * The meta object literal for the '<em><b>Cascade All</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute CASCADE_TYPE__CASCADE_ALL = eINSTANCE.getCascadeType_CascadeAll(); + + /** + * The meta object literal for the '<em><b>Cascade Persist</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute CASCADE_TYPE__CASCADE_PERSIST = eINSTANCE.getCascadeType_CascadePersist(); + + /** + * The meta object literal for the '<em><b>Cascade Merge</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute CASCADE_TYPE__CASCADE_MERGE = eINSTANCE.getCascadeType_CascadeMerge(); + + /** + * The meta object literal for the '<em><b>Cascade Remove</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute CASCADE_TYPE__CASCADE_REMOVE = eINSTANCE.getCascadeType_CascadeRemove(); + + /** + * The meta object literal for the '<em><b>Cascade Refresh</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute CASCADE_TYPE__CASCADE_REFRESH = eINSTANCE.getCascadeType_CascadeRefresh(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.CascadeTypeImpl <em>Cascade Type Impl</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.CascadeTypeImpl + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getCascadeTypeImpl() + * @generated + */ + public static final EClass CASCADE_TYPE_IMPL = eINSTANCE.getCascadeTypeImpl(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlNamedColumn <em>Xml Named Column</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlNamedColumn + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlNamedColumn() + * @generated + */ + public static final EClass XML_NAMED_COLUMN = eINSTANCE.getXmlNamedColumn(); + + /** + * The meta object literal for the '<em><b>Column Definition</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_NAMED_COLUMN__COLUMN_DEFINITION = eINSTANCE.getXmlNamedColumn_ColumnDefinition(); + + /** + * The meta object literal for the '<em><b>Name</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_NAMED_COLUMN__NAME = eINSTANCE.getXmlNamedColumn_Name(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlNamedColumn <em>Abstract Xml Named Column</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlNamedColumn + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getAbstractXmlNamedColumn() + * @generated + */ + public static final EClass ABSTRACT_XML_NAMED_COLUMN = eINSTANCE.getAbstractXmlNamedColumn(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAbstractColumn <em>Xml Abstract Column</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAbstractColumn + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlAbstractColumn() + * @generated + */ + public static final EClass XML_ABSTRACT_COLUMN = eINSTANCE.getXmlAbstractColumn(); + + /** + * The meta object literal for the '<em><b>Insertable</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_ABSTRACT_COLUMN__INSERTABLE = eINSTANCE.getXmlAbstractColumn_Insertable(); + + /** + * The meta object literal for the '<em><b>Nullable</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_ABSTRACT_COLUMN__NULLABLE = eINSTANCE.getXmlAbstractColumn_Nullable(); + + /** + * The meta object literal for the '<em><b>Table</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_ABSTRACT_COLUMN__TABLE = eINSTANCE.getXmlAbstractColumn_Table(); + + /** + * The meta object literal for the '<em><b>Unique</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_ABSTRACT_COLUMN__UNIQUE = eINSTANCE.getXmlAbstractColumn_Unique(); + + /** + * The meta object literal for the '<em><b>Updatable</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_ABSTRACT_COLUMN__UPDATABLE = eINSTANCE.getXmlAbstractColumn_Updatable(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlAbstractColumn <em>Abstract Xml Abstract Column</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlAbstractColumn + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getAbstractXmlAbstractColumn() + * @generated + */ + public static final EClass ABSTRACT_XML_ABSTRACT_COLUMN = eINSTANCE.getAbstractXmlAbstractColumn(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlColumn <em>Xml Column</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlColumn + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlColumn() + * @generated + */ + public static final EClass XML_COLUMN = eINSTANCE.getXmlColumn(); + + /** + * The meta object literal for the '<em><b>Length</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_COLUMN__LENGTH = eINSTANCE.getXmlColumn_Length(); + + /** + * The meta object literal for the '<em><b>Precision</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_COLUMN__PRECISION = eINSTANCE.getXmlColumn_Precision(); + + /** + * The meta object literal for the '<em><b>Scale</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_COLUMN__SCALE = eINSTANCE.getXmlColumn_Scale(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlColumnImpl <em>Xml Column Impl</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlColumnImpl + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlColumnImpl() + * @generated + */ + public static final EClass XML_COLUMN_IMPL = eINSTANCE.getXmlColumnImpl(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.ColumnResult <em>Column Result</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.ColumnResult + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getColumnResult() + * @generated + */ + public static final EClass COLUMN_RESULT = eINSTANCE.getColumnResult(); + + /** + * The meta object literal for the '<em><b>Name</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute COLUMN_RESULT__NAME = eINSTANCE.getColumnResult_Name(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlDiscriminatorColumn <em>Xml Discriminator Column</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlDiscriminatorColumn + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlDiscriminatorColumn() + * @generated + */ + public static final EClass XML_DISCRIMINATOR_COLUMN = eINSTANCE.getXmlDiscriminatorColumn(); + + /** + * The meta object literal for the '<em><b>Discriminator Type</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_DISCRIMINATOR_COLUMN__DISCRIMINATOR_TYPE = eINSTANCE.getXmlDiscriminatorColumn_DiscriminatorType(); + + /** + * The meta object literal for the '<em><b>Length</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_DISCRIMINATOR_COLUMN__LENGTH = eINSTANCE.getXmlDiscriminatorColumn_Length(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.EntityListeners <em>Entity Listeners</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EntityListeners + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getEntityListeners() + * @generated + */ + public static final EClass ENTITY_LISTENERS = eINSTANCE.getEntityListeners(); + + /** + * The meta object literal for the '<em><b>Entity Listeners</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference ENTITY_LISTENERS__ENTITY_LISTENERS = eINSTANCE.getEntityListeners_EntityListeners(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.EntityListener <em>Entity Listener</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EntityListener + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getEntityListener() + * @generated + */ + public static final EClass ENTITY_LISTENER = eINSTANCE.getEntityListener(); + + /** + * The meta object literal for the '<em><b>Class Name</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute ENTITY_LISTENER__CLASS_NAME = eINSTANCE.getEntityListener_ClassName(); + + /** + * The meta object literal for the '<em><b>Pre Persist</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference ENTITY_LISTENER__PRE_PERSIST = eINSTANCE.getEntityListener_PrePersist(); + + /** + * The meta object literal for the '<em><b>Post Persist</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference ENTITY_LISTENER__POST_PERSIST = eINSTANCE.getEntityListener_PostPersist(); + + /** + * The meta object literal for the '<em><b>Pre Remove</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference ENTITY_LISTENER__PRE_REMOVE = eINSTANCE.getEntityListener_PreRemove(); + + /** + * The meta object literal for the '<em><b>Post Remove</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference ENTITY_LISTENER__POST_REMOVE = eINSTANCE.getEntityListener_PostRemove(); + + /** + * The meta object literal for the '<em><b>Pre Update</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference ENTITY_LISTENER__PRE_UPDATE = eINSTANCE.getEntityListener_PreUpdate(); + + /** + * The meta object literal for the '<em><b>Post Update</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference ENTITY_LISTENER__POST_UPDATE = eINSTANCE.getEntityListener_PostUpdate(); + + /** + * The meta object literal for the '<em><b>Post Load</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference ENTITY_LISTENER__POST_LOAD = eINSTANCE.getEntityListener_PostLoad(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.EntityResult <em>Entity Result</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EntityResult + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getEntityResult() + * @generated + */ + public static final EClass ENTITY_RESULT = eINSTANCE.getEntityResult(); + + /** + * The meta object literal for the '<em><b>Discriminator Column</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute ENTITY_RESULT__DISCRIMINATOR_COLUMN = eINSTANCE.getEntityResult_DiscriminatorColumn(); + + /** + * The meta object literal for the '<em><b>Entity Class</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute ENTITY_RESULT__ENTITY_CLASS = eINSTANCE.getEntityResult_EntityClass(); + + /** + * The meta object literal for the '<em><b>Field Results</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference ENTITY_RESULT__FIELD_RESULTS = eINSTANCE.getEntityResult_FieldResults(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.EventMethod <em>Event Method</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EventMethod + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getEventMethod() + * @generated + */ + public static final EClass EVENT_METHOD = eINSTANCE.getEventMethod(); + + /** + * The meta object literal for the '<em><b>Method Name</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute EVENT_METHOD__METHOD_NAME = eINSTANCE.getEventMethod_MethodName(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.FieldResult <em>Field Result</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.FieldResult + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getFieldResult() + * @generated + */ + public static final EClass FIELD_RESULT = eINSTANCE.getFieldResult(); + + /** + * The meta object literal for the '<em><b>Name</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute FIELD_RESULT__NAME = eINSTANCE.getFieldResult_Name(); + + /** + * The meta object literal for the '<em><b>Column</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute FIELD_RESULT__COLUMN = eINSTANCE.getFieldResult_Column(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlGeneratedValue <em>Xml Generated Value</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlGeneratedValue + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlGeneratedValue() + * @generated + */ + public static final EClass XML_GENERATED_VALUE = eINSTANCE.getXmlGeneratedValue(); + + /** + * The meta object literal for the '<em><b>Generator</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_GENERATED_VALUE__GENERATOR = eINSTANCE.getXmlGeneratedValue_Generator(); + + /** + * The meta object literal for the '<em><b>Strategy</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_GENERATED_VALUE__STRATEGY = eINSTANCE.getXmlGeneratedValue_Strategy(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlGeneratedValueImpl <em>Xml Generated Value Impl</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlGeneratedValueImpl + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlGeneratedValueImpl() + * @generated + */ + public static final EClass XML_GENERATED_VALUE_IMPL = eINSTANCE.getXmlGeneratedValueImpl(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlIdClass <em>Xml Id Class</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlIdClass + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlIdClass() + * @generated + */ + public static final EClass XML_ID_CLASS = eINSTANCE.getXmlIdClass(); + + /** + * The meta object literal for the '<em><b>Class Name</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_ID_CLASS__CLASS_NAME = eINSTANCE.getXmlIdClass_ClassName(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.Inheritance <em>Inheritance</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.Inheritance + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getInheritance() + * @generated + */ + public static final EClass INHERITANCE = eINSTANCE.getInheritance(); + + /** + * The meta object literal for the '<em><b>Strategy</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute INHERITANCE__STRATEGY = eINSTANCE.getInheritance_Strategy(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlJoinColumn <em>Xml Join Column</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlJoinColumn + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlJoinColumn() + * @generated + */ + public static final EClass XML_JOIN_COLUMN = eINSTANCE.getXmlJoinColumn(); + + /** + * The meta object literal for the '<em><b>Referenced Column Name</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_JOIN_COLUMN__REFERENCED_COLUMN_NAME = eINSTANCE.getXmlJoinColumn_ReferencedColumnName(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlJoinColumnImpl <em>Xml Join Column Impl</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlJoinColumnImpl + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlJoinColumnImpl() + * @generated + */ + public static final EClass XML_JOIN_COLUMN_IMPL = eINSTANCE.getXmlJoinColumnImpl(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlJoinTable <em>Xml Join Table</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlJoinTable + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlJoinTable() + * @generated + */ + public static final EClass XML_JOIN_TABLE = eINSTANCE.getXmlJoinTable(); + + /** + * The meta object literal for the '<em><b>Join Columns</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_JOIN_TABLE__JOIN_COLUMNS = eINSTANCE.getXmlJoinTable_JoinColumns(); + + /** + * The meta object literal for the '<em><b>Inverse Join Columns</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_JOIN_TABLE__INVERSE_JOIN_COLUMNS = eINSTANCE.getXmlJoinTable_InverseJoinColumns(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlJoinTableImpl <em>Xml Join Table Impl</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlJoinTableImpl + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlJoinTableImpl() + * @generated + */ + public static final EClass XML_JOIN_TABLE_IMPL = eINSTANCE.getXmlJoinTableImpl(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.Lob <em>Lob</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.Lob + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getLob() + * @generated + */ + public static final EClass LOB = eINSTANCE.getLob(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.MapKey <em>Map Key</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.MapKey + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getMapKey() + * @generated + */ + public static final EClass MAP_KEY = eINSTANCE.getMapKey(); + + /** + * The meta object literal for the '<em><b>Name</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute MAP_KEY__NAME = eINSTANCE.getMapKey_Name(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.MapKeyImpl <em>Map Key Impl</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.MapKeyImpl + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getMapKeyImpl() + * @generated + */ + public static final EClass MAP_KEY_IMPL = eINSTANCE.getMapKeyImpl(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlQuery <em>Xml Query</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlQuery + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlQuery() + * @generated + */ + public static final EClass XML_QUERY = eINSTANCE.getXmlQuery(); + + /** + * The meta object literal for the '<em><b>Name</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_QUERY__NAME = eINSTANCE.getXmlQuery_Name(); + + /** + * The meta object literal for the '<em><b>Query</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_QUERY__QUERY = eINSTANCE.getXmlQuery_Query(); + + /** + * The meta object literal for the '<em><b>Hints</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_QUERY__HINTS = eINSTANCE.getXmlQuery_Hints(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlNamedNativeQuery <em>Xml Named Native Query</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlNamedNativeQuery + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlNamedNativeQuery() + * @generated + */ + public static final EClass XML_NAMED_NATIVE_QUERY = eINSTANCE.getXmlNamedNativeQuery(); + + /** + * The meta object literal for the '<em><b>Result Class</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_NAMED_NATIVE_QUERY__RESULT_CLASS = eINSTANCE.getXmlNamedNativeQuery_ResultClass(); + + /** + * The meta object literal for the '<em><b>Result Set Mapping</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_NAMED_NATIVE_QUERY__RESULT_SET_MAPPING = eINSTANCE.getXmlNamedNativeQuery_ResultSetMapping(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlNamedQuery <em>Xml Named Query</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlNamedQuery + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlNamedQuery() + * @generated + */ + public static final EClass XML_NAMED_QUERY = eINSTANCE.getXmlNamedQuery(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.PostLoad <em>Post Load</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.PostLoad + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getPostLoad() + * @generated + */ + public static final EClass POST_LOAD = eINSTANCE.getPostLoad(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.PostPersist <em>Post Persist</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.PostPersist + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getPostPersist() + * @generated + */ + public static final EClass POST_PERSIST = eINSTANCE.getPostPersist(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.PostRemove <em>Post Remove</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.PostRemove + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getPostRemove() + * @generated + */ + public static final EClass POST_REMOVE = eINSTANCE.getPostRemove(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.PostUpdate <em>Post Update</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.PostUpdate + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getPostUpdate() + * @generated + */ + public static final EClass POST_UPDATE = eINSTANCE.getPostUpdate(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.PrePersist <em>Pre Persist</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.PrePersist + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getPrePersist() + * @generated + */ + public static final EClass PRE_PERSIST = eINSTANCE.getPrePersist(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.PreRemove <em>Pre Remove</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.PreRemove + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getPreRemove() + * @generated + */ + public static final EClass PRE_REMOVE = eINSTANCE.getPreRemove(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.PreUpdate <em>Pre Update</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.PreUpdate + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getPreUpdate() + * @generated + */ + public static final EClass PRE_UPDATE = eINSTANCE.getPreUpdate(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPrimaryKeyJoinColumn <em>Xml Primary Key Join Column</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPrimaryKeyJoinColumn + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlPrimaryKeyJoinColumn() + * @generated + */ + public static final EClass XML_PRIMARY_KEY_JOIN_COLUMN = eINSTANCE.getXmlPrimaryKeyJoinColumn(); + + /** + * The meta object literal for the '<em><b>Referenced Column Name</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_PRIMARY_KEY_JOIN_COLUMN__REFERENCED_COLUMN_NAME = eINSTANCE.getXmlPrimaryKeyJoinColumn_ReferencedColumnName(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPrimaryKeyJoinColumnImpl <em>Xml Primary Key Join Column Impl</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPrimaryKeyJoinColumnImpl + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlPrimaryKeyJoinColumnImpl() + * @generated + */ + public static final EClass XML_PRIMARY_KEY_JOIN_COLUMN_IMPL = eINSTANCE.getXmlPrimaryKeyJoinColumnImpl(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlQueryHint <em>Xml Query Hint</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlQueryHint + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlQueryHint() + * @generated + */ + public static final EClass XML_QUERY_HINT = eINSTANCE.getXmlQueryHint(); + + /** + * The meta object literal for the '<em><b>Name</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_QUERY_HINT__NAME = eINSTANCE.getXmlQueryHint_Name(); + + /** + * The meta object literal for the '<em><b>Value</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_QUERY_HINT__VALUE = eINSTANCE.getXmlQueryHint_Value(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlBaseTable <em>Abstract Xml Base Table</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.AbstractXmlBaseTable + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getAbstractXmlBaseTable() + * @generated + */ + public static final EClass ABSTRACT_XML_BASE_TABLE = eINSTANCE.getAbstractXmlBaseTable(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBaseTable <em>Xml Base Table</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBaseTable + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlBaseTable() + * @generated + */ + public static final EClass XML_BASE_TABLE = eINSTANCE.getXmlBaseTable(); + + /** + * The meta object literal for the '<em><b>Name</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_BASE_TABLE__NAME = eINSTANCE.getXmlBaseTable_Name(); + + /** + * The meta object literal for the '<em><b>Catalog</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_BASE_TABLE__CATALOG = eINSTANCE.getXmlBaseTable_Catalog(); + + /** + * The meta object literal for the '<em><b>Schema</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_BASE_TABLE__SCHEMA = eINSTANCE.getXmlBaseTable_Schema(); + + /** + * The meta object literal for the '<em><b>Unique Constraints</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_BASE_TABLE__UNIQUE_CONSTRAINTS = eINSTANCE.getXmlBaseTable_UniqueConstraints(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTable <em>Xml Table</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTable + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlTable() + * @generated + */ + public static final EClass XML_TABLE = eINSTANCE.getXmlTable(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlSecondaryTable <em>Xml Secondary Table</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlSecondaryTable + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlSecondaryTable() + * @generated + */ + public static final EClass XML_SECONDARY_TABLE = eINSTANCE.getXmlSecondaryTable(); + + /** + * The meta object literal for the '<em><b>Primary Key Join Columns</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_SECONDARY_TABLE__PRIMARY_KEY_JOIN_COLUMNS = eINSTANCE.getXmlSecondaryTable_PrimaryKeyJoinColumns(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlSecondaryTableImpl <em>Xml Secondary Table Impl</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlSecondaryTableImpl + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlSecondaryTableImpl() + * @generated + */ + public static final EClass XML_SECONDARY_TABLE_IMPL = eINSTANCE.getXmlSecondaryTableImpl(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlGenerator <em>Xml Generator</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlGenerator + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlGenerator() + * @generated + */ + public static final EClass XML_GENERATOR = eINSTANCE.getXmlGenerator(); + + /** + * The meta object literal for the '<em><b>Name</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_GENERATOR__NAME = eINSTANCE.getXmlGenerator_Name(); + + /** + * The meta object literal for the '<em><b>Initial Value</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_GENERATOR__INITIAL_VALUE = eINSTANCE.getXmlGenerator_InitialValue(); + + /** + * The meta object literal for the '<em><b>Allocation Size</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_GENERATOR__ALLOCATION_SIZE = eINSTANCE.getXmlGenerator_AllocationSize(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlSequenceGenerator <em>Xml Sequence Generator</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlSequenceGenerator + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlSequenceGenerator() + * @generated + */ + public static final EClass XML_SEQUENCE_GENERATOR = eINSTANCE.getXmlSequenceGenerator(); + + /** + * The meta object literal for the '<em><b>Sequence Name</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_SEQUENCE_GENERATOR__SEQUENCE_NAME = eINSTANCE.getXmlSequenceGenerator_SequenceName(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlSequenceGeneratorImpl <em>Xml Sequence Generator Impl</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlSequenceGeneratorImpl + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlSequenceGeneratorImpl() + * @generated + */ + public static final EClass XML_SEQUENCE_GENERATOR_IMPL = eINSTANCE.getXmlSequenceGeneratorImpl(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.SqlResultSetMapping <em>Sql Result Set Mapping</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.SqlResultSetMapping + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getSqlResultSetMapping() + * @generated + */ + public static final EClass SQL_RESULT_SET_MAPPING = eINSTANCE.getSqlResultSetMapping(); + + /** + * The meta object literal for the '<em><b>Name</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute SQL_RESULT_SET_MAPPING__NAME = eINSTANCE.getSqlResultSetMapping_Name(); + + /** + * The meta object literal for the '<em><b>Entity Results</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference SQL_RESULT_SET_MAPPING__ENTITY_RESULTS = eINSTANCE.getSqlResultSetMapping_EntityResults(); + + /** + * The meta object literal for the '<em><b>Column Results</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference SQL_RESULT_SET_MAPPING__COLUMN_RESULTS = eINSTANCE.getSqlResultSetMapping_ColumnResults(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTableGenerator <em>Xml Table Generator</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTableGenerator + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlTableGenerator() + * @generated + */ + public static final EClass XML_TABLE_GENERATOR = eINSTANCE.getXmlTableGenerator(); + + /** + * The meta object literal for the '<em><b>Table</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_TABLE_GENERATOR__TABLE = eINSTANCE.getXmlTableGenerator_Table(); + + /** + * The meta object literal for the '<em><b>Catalog</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_TABLE_GENERATOR__CATALOG = eINSTANCE.getXmlTableGenerator_Catalog(); + + /** + * The meta object literal for the '<em><b>Schema</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_TABLE_GENERATOR__SCHEMA = eINSTANCE.getXmlTableGenerator_Schema(); + + /** + * The meta object literal for the '<em><b>Pk Column Name</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_TABLE_GENERATOR__PK_COLUMN_NAME = eINSTANCE.getXmlTableGenerator_PkColumnName(); + + /** + * The meta object literal for the '<em><b>Value Column Name</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_TABLE_GENERATOR__VALUE_COLUMN_NAME = eINSTANCE.getXmlTableGenerator_ValueColumnName(); + + /** + * The meta object literal for the '<em><b>Pk Column Value</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_TABLE_GENERATOR__PK_COLUMN_VALUE = eINSTANCE.getXmlTableGenerator_PkColumnValue(); + + /** + * The meta object literal for the '<em><b>Unique Constraints</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EReference XML_TABLE_GENERATOR__UNIQUE_CONSTRAINTS = eINSTANCE.getXmlTableGenerator_UniqueConstraints(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTableGeneratorImpl <em>Xml Table Generator Impl</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTableGeneratorImpl + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlTableGeneratorImpl() + * @generated + */ + public static final EClass XML_TABLE_GENERATOR_IMPL = eINSTANCE.getXmlTableGeneratorImpl(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlUniqueConstraint <em>Xml Unique Constraint</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlUniqueConstraint + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlUniqueConstraint() + * @generated + */ + public static final EClass XML_UNIQUE_CONSTRAINT = eINSTANCE.getXmlUniqueConstraint(); + + /** + * The meta object literal for the '<em><b>Column Names</b></em>' attribute list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final EAttribute XML_UNIQUE_CONSTRAINT__COLUMN_NAMES = eINSTANCE.getXmlUniqueConstraint_ColumnNames(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlUniqueConstraintImpl <em>Xml Unique Constraint Impl</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.XmlUniqueConstraintImpl + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlUniqueConstraintImpl() + * @generated + */ + public static final EClass XML_UNIQUE_CONSTRAINT_IMPL = eINSTANCE.getXmlUniqueConstraintImpl(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.AccessType <em>Access Type</em>}' enum. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.AccessType + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getAccessType() + * @generated + */ + public static final EEnum ACCESS_TYPE = eINSTANCE.getAccessType(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.DiscriminatorType <em>Discriminator Type</em>}' enum. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.DiscriminatorType + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getDiscriminatorType() + * @generated + */ + public static final EEnum DISCRIMINATOR_TYPE = eINSTANCE.getDiscriminatorType(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.EnumType <em>Enum Type</em>}' enum. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EnumType + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getEnumType() + * @generated + */ + public static final EEnum ENUM_TYPE = eINSTANCE.getEnumType(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.FetchType <em>Fetch Type</em>}' enum. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.FetchType + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getFetchType() + * @generated + */ + public static final EEnum FETCH_TYPE = eINSTANCE.getFetchType(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.GenerationType <em>Generation Type</em>}' enum. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.GenerationType + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getGenerationType() + * @generated + */ + public static final EEnum GENERATION_TYPE = eINSTANCE.getGenerationType(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.InheritanceType <em>Inheritance Type</em>}' enum. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.InheritanceType + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getInheritanceType() + * @generated + */ + public static final EEnum INHERITANCE_TYPE = eINSTANCE.getInheritanceType(); + + /** + * The meta object literal for the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.TemporalType <em>Temporal Type</em>}' enum. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.TemporalType + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getTemporalType() + * @generated + */ + public static final EEnum TEMPORAL_TYPE = eINSTANCE.getTemporalType(); + + /** + * The meta object literal for the '<em>Discriminator Value</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see java.lang.String + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getDiscriminatorValue() + * @generated + */ + public static final EDataType DISCRIMINATOR_VALUE = eINSTANCE.getDiscriminatorValue(); + + /** + * The meta object literal for the '<em>Enumerated</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.emf.common.util.Enumerator + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getEnumerated() + * @generated + */ + public static final EDataType ENUMERATED = eINSTANCE.getEnumerated(); + + /** + * The meta object literal for the '<em>Order By</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see java.lang.String + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getOrderBy() + * @generated + */ + public static final EDataType ORDER_BY = eINSTANCE.getOrderBy(); + + /** + * The meta object literal for the '<em>Version Type</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see java.lang.String + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getVersionType() + * @generated + */ + public static final EDataType VERSION_TYPE = eINSTANCE.getVersionType(); + + } + +} //EclipseLinkOrmPackage diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/EclipseLinkOrmResource.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/EclipseLinkOrmResource.java new file mode 100644 index 0000000000..c8b6accf41 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/EclipseLinkOrmResource.java @@ -0,0 +1,54 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.emf.common.util.URI; +import org.eclipse.jdt.core.ElementChangedEvent; +import org.eclipse.jpt.core.resource.common.JpaXmlResource; +import org.eclipse.jpt.eclipselink.core.internal.resource.elorm.translators.EntityMappingsTranslator; +import org.eclipse.wst.common.internal.emf.resource.Renderer; +import org.eclipse.wst.common.internal.emf.resource.Translator; + +/** + * Provisional API: This interface is part of an interim API that is still + * under development and expected to change significantly before reaching + * stability. It is available at this early stage to solicit feedback from + * pioneering adopters on the understanding that any code that uses this API + * will almost certainly be broken (repeatedly) as the API evolves. + */ +public class EclipseLinkOrmResource extends JpaXmlResource +{ + public EclipseLinkOrmResource(Renderer aRenderer) { + super(aRenderer); + } + + public EclipseLinkOrmResource(URI uri, Renderer aRenderer) { + super(uri, aRenderer); + } + + public Translator getRootTranslator() { + return EntityMappingsTranslator.INSTANCE; + } + + @Override + public void javaElementChanged(ElementChangedEvent event) { + // TODO + } + + @Override + public void updateFromResource() { + // TODO + } + + public XmlEntityMappings getEntityMappings() { + return (XmlEntityMappings) getRootObject(); + } +} diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/EclipseLinkOrmResourceFactory.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/EclipseLinkOrmResourceFactory.java new file mode 100644 index 0000000000..2722d31618 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/EclipseLinkOrmResourceFactory.java @@ -0,0 +1,48 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.emf.common.util.URI; +import org.eclipse.wst.common.internal.emf.resource.Renderer; +import org.eclipse.wst.common.internal.emf.resource.RendererFactory; +import org.eclipse.wst.common.internal.emf.resource.TranslatorResource; +import org.eclipse.wst.common.internal.emf.resource.TranslatorResourceFactory; + +/** + * Provisional API: This interface is part of an interim API that is still + * under development and expected to change significantly before reaching + * stability. It is available at this early stage to solicit feedback from + * pioneering adopters on the understanding that any code that uses this API + * will almost certainly be broken (repeatedly) as the API evolves. + */ +public class EclipseLinkOrmResourceFactory extends TranslatorResourceFactory +{ + public EclipseLinkOrmResourceFactory() { + this(RendererFactory.getDefaultRendererFactory()); + } + + public EclipseLinkOrmResourceFactory(RendererFactory aRendererFactory) { + super(aRendererFactory); + } + + public EclipseLinkOrmResourceFactory(RendererFactory aRendererFactory, boolean listeningForUpdates) { + super(aRendererFactory, listeningForUpdates); + } + + + /** + * @see TranslatorResourceFactory#createResource(URI, Renderer) + */ + @Override + protected TranslatorResource createResource(URI uri, Renderer renderer) { + return new EclipseLinkOrmResource(uri, renderer); + } +} diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/EntityListener.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/EntityListener.java new file mode 100644 index 0000000000..8cd64f08f9 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/EntityListener.java @@ -0,0 +1,797 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.jpt.core.resource.common.AbstractJpaEObject; +import org.eclipse.jpt.core.resource.common.JpaEObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Entity Listener</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.EntityListener#getClassName <em>Class Name</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.EntityListener#getPrePersist <em>Pre Persist</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.EntityListener#getPostPersist <em>Post Persist</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.EntityListener#getPreRemove <em>Pre Remove</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.EntityListener#getPostRemove <em>Post Remove</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.EntityListener#getPreUpdate <em>Pre Update</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.EntityListener#getPostUpdate <em>Post Update</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.EntityListener#getPostLoad <em>Post Load</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getEntityListener() + * @model kind="class" + * @extends JpaEObject + * @generated + */ +public class EntityListener extends AbstractJpaEObject implements JpaEObject +{ + /** + * The default value of the '{@link #getClassName() <em>Class Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getClassName() + * @generated + * @ordered + */ + protected static final String CLASS_NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getClassName() <em>Class Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getClassName() + * @generated + * @ordered + */ + protected String className = CLASS_NAME_EDEFAULT; + + /** + * The cached value of the '{@link #getPrePersist() <em>Pre Persist</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPrePersist() + * @generated + * @ordered + */ + protected PrePersist prePersist; + + /** + * The cached value of the '{@link #getPostPersist() <em>Post Persist</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPostPersist() + * @generated + * @ordered + */ + protected PostPersist postPersist; + + /** + * The cached value of the '{@link #getPreRemove() <em>Pre Remove</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPreRemove() + * @generated + * @ordered + */ + protected PreRemove preRemove; + + /** + * The cached value of the '{@link #getPostRemove() <em>Post Remove</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPostRemove() + * @generated + * @ordered + */ + protected PostRemove postRemove; + + /** + * The cached value of the '{@link #getPreUpdate() <em>Pre Update</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPreUpdate() + * @generated + * @ordered + */ + protected PreUpdate preUpdate; + + /** + * The cached value of the '{@link #getPostUpdate() <em>Post Update</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPostUpdate() + * @generated + * @ordered + */ + protected PostUpdate postUpdate; + + /** + * The cached value of the '{@link #getPostLoad() <em>Post Load</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPostLoad() + * @generated + * @ordered + */ + protected PostLoad postLoad; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected EntityListener() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.ENTITY_LISTENER; + } + + /** + * Returns the value of the '<em><b>Class Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Class Name</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Class Name</em>' attribute. + * @see #setClassName(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getEntityListener_ClassName() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" required="true" + * @generated + */ + public String getClassName() + { + return className; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.EntityListener#getClassName <em>Class Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Class Name</em>' attribute. + * @see #getClassName() + * @generated + */ + public void setClassName(String newClassName) + { + String oldClassName = className; + className = newClassName; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.ENTITY_LISTENER__CLASS_NAME, oldClassName, className)); + } + + /** + * Returns the value of the '<em><b>Pre Persist</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Pre Persist</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Pre Persist</em>' containment reference. + * @see #setPrePersist(PrePersist) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getEntityListener_PrePersist() + * @model containment="true" + * @generated + */ + public PrePersist getPrePersist() + { + return prePersist; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetPrePersist(PrePersist newPrePersist, NotificationChain msgs) + { + PrePersist oldPrePersist = prePersist; + prePersist = newPrePersist; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.ENTITY_LISTENER__PRE_PERSIST, oldPrePersist, newPrePersist); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.EntityListener#getPrePersist <em>Pre Persist</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Pre Persist</em>' containment reference. + * @see #getPrePersist() + * @generated + */ + public void setPrePersist(PrePersist newPrePersist) + { + if (newPrePersist != prePersist) + { + NotificationChain msgs = null; + if (prePersist != null) + msgs = ((InternalEObject)prePersist).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.ENTITY_LISTENER__PRE_PERSIST, null, msgs); + if (newPrePersist != null) + msgs = ((InternalEObject)newPrePersist).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.ENTITY_LISTENER__PRE_PERSIST, null, msgs); + msgs = basicSetPrePersist(newPrePersist, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.ENTITY_LISTENER__PRE_PERSIST, newPrePersist, newPrePersist)); + } + + /** + * Returns the value of the '<em><b>Post Persist</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Post Persist</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Post Persist</em>' containment reference. + * @see #setPostPersist(PostPersist) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getEntityListener_PostPersist() + * @model containment="true" + * @generated + */ + public PostPersist getPostPersist() + { + return postPersist; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetPostPersist(PostPersist newPostPersist, NotificationChain msgs) + { + PostPersist oldPostPersist = postPersist; + postPersist = newPostPersist; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.ENTITY_LISTENER__POST_PERSIST, oldPostPersist, newPostPersist); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.EntityListener#getPostPersist <em>Post Persist</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Post Persist</em>' containment reference. + * @see #getPostPersist() + * @generated + */ + public void setPostPersist(PostPersist newPostPersist) + { + if (newPostPersist != postPersist) + { + NotificationChain msgs = null; + if (postPersist != null) + msgs = ((InternalEObject)postPersist).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.ENTITY_LISTENER__POST_PERSIST, null, msgs); + if (newPostPersist != null) + msgs = ((InternalEObject)newPostPersist).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.ENTITY_LISTENER__POST_PERSIST, null, msgs); + msgs = basicSetPostPersist(newPostPersist, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.ENTITY_LISTENER__POST_PERSIST, newPostPersist, newPostPersist)); + } + + /** + * Returns the value of the '<em><b>Pre Remove</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Pre Remove</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Pre Remove</em>' containment reference. + * @see #setPreRemove(PreRemove) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getEntityListener_PreRemove() + * @model containment="true" + * @generated + */ + public PreRemove getPreRemove() + { + return preRemove; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetPreRemove(PreRemove newPreRemove, NotificationChain msgs) + { + PreRemove oldPreRemove = preRemove; + preRemove = newPreRemove; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.ENTITY_LISTENER__PRE_REMOVE, oldPreRemove, newPreRemove); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.EntityListener#getPreRemove <em>Pre Remove</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Pre Remove</em>' containment reference. + * @see #getPreRemove() + * @generated + */ + public void setPreRemove(PreRemove newPreRemove) + { + if (newPreRemove != preRemove) + { + NotificationChain msgs = null; + if (preRemove != null) + msgs = ((InternalEObject)preRemove).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.ENTITY_LISTENER__PRE_REMOVE, null, msgs); + if (newPreRemove != null) + msgs = ((InternalEObject)newPreRemove).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.ENTITY_LISTENER__PRE_REMOVE, null, msgs); + msgs = basicSetPreRemove(newPreRemove, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.ENTITY_LISTENER__PRE_REMOVE, newPreRemove, newPreRemove)); + } + + /** + * Returns the value of the '<em><b>Post Remove</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Post Remove</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Post Remove</em>' containment reference. + * @see #setPostRemove(PostRemove) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getEntityListener_PostRemove() + * @model containment="true" + * @generated + */ + public PostRemove getPostRemove() + { + return postRemove; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetPostRemove(PostRemove newPostRemove, NotificationChain msgs) + { + PostRemove oldPostRemove = postRemove; + postRemove = newPostRemove; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.ENTITY_LISTENER__POST_REMOVE, oldPostRemove, newPostRemove); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.EntityListener#getPostRemove <em>Post Remove</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Post Remove</em>' containment reference. + * @see #getPostRemove() + * @generated + */ + public void setPostRemove(PostRemove newPostRemove) + { + if (newPostRemove != postRemove) + { + NotificationChain msgs = null; + if (postRemove != null) + msgs = ((InternalEObject)postRemove).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.ENTITY_LISTENER__POST_REMOVE, null, msgs); + if (newPostRemove != null) + msgs = ((InternalEObject)newPostRemove).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.ENTITY_LISTENER__POST_REMOVE, null, msgs); + msgs = basicSetPostRemove(newPostRemove, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.ENTITY_LISTENER__POST_REMOVE, newPostRemove, newPostRemove)); + } + + /** + * Returns the value of the '<em><b>Pre Update</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Pre Update</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Pre Update</em>' containment reference. + * @see #setPreUpdate(PreUpdate) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getEntityListener_PreUpdate() + * @model containment="true" + * @generated + */ + public PreUpdate getPreUpdate() + { + return preUpdate; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetPreUpdate(PreUpdate newPreUpdate, NotificationChain msgs) + { + PreUpdate oldPreUpdate = preUpdate; + preUpdate = newPreUpdate; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.ENTITY_LISTENER__PRE_UPDATE, oldPreUpdate, newPreUpdate); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.EntityListener#getPreUpdate <em>Pre Update</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Pre Update</em>' containment reference. + * @see #getPreUpdate() + * @generated + */ + public void setPreUpdate(PreUpdate newPreUpdate) + { + if (newPreUpdate != preUpdate) + { + NotificationChain msgs = null; + if (preUpdate != null) + msgs = ((InternalEObject)preUpdate).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.ENTITY_LISTENER__PRE_UPDATE, null, msgs); + if (newPreUpdate != null) + msgs = ((InternalEObject)newPreUpdate).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.ENTITY_LISTENER__PRE_UPDATE, null, msgs); + msgs = basicSetPreUpdate(newPreUpdate, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.ENTITY_LISTENER__PRE_UPDATE, newPreUpdate, newPreUpdate)); + } + + /** + * Returns the value of the '<em><b>Post Update</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Post Update</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Post Update</em>' containment reference. + * @see #setPostUpdate(PostUpdate) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getEntityListener_PostUpdate() + * @model containment="true" + * @generated + */ + public PostUpdate getPostUpdate() + { + return postUpdate; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetPostUpdate(PostUpdate newPostUpdate, NotificationChain msgs) + { + PostUpdate oldPostUpdate = postUpdate; + postUpdate = newPostUpdate; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.ENTITY_LISTENER__POST_UPDATE, oldPostUpdate, newPostUpdate); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.EntityListener#getPostUpdate <em>Post Update</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Post Update</em>' containment reference. + * @see #getPostUpdate() + * @generated + */ + public void setPostUpdate(PostUpdate newPostUpdate) + { + if (newPostUpdate != postUpdate) + { + NotificationChain msgs = null; + if (postUpdate != null) + msgs = ((InternalEObject)postUpdate).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.ENTITY_LISTENER__POST_UPDATE, null, msgs); + if (newPostUpdate != null) + msgs = ((InternalEObject)newPostUpdate).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.ENTITY_LISTENER__POST_UPDATE, null, msgs); + msgs = basicSetPostUpdate(newPostUpdate, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.ENTITY_LISTENER__POST_UPDATE, newPostUpdate, newPostUpdate)); + } + + /** + * Returns the value of the '<em><b>Post Load</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Post Load</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Post Load</em>' containment reference. + * @see #setPostLoad(PostLoad) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getEntityListener_PostLoad() + * @model containment="true" + * @generated + */ + public PostLoad getPostLoad() + { + return postLoad; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetPostLoad(PostLoad newPostLoad, NotificationChain msgs) + { + PostLoad oldPostLoad = postLoad; + postLoad = newPostLoad; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.ENTITY_LISTENER__POST_LOAD, oldPostLoad, newPostLoad); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.EntityListener#getPostLoad <em>Post Load</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Post Load</em>' containment reference. + * @see #getPostLoad() + * @generated + */ + public void setPostLoad(PostLoad newPostLoad) + { + if (newPostLoad != postLoad) + { + NotificationChain msgs = null; + if (postLoad != null) + msgs = ((InternalEObject)postLoad).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.ENTITY_LISTENER__POST_LOAD, null, msgs); + if (newPostLoad != null) + msgs = ((InternalEObject)newPostLoad).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.ENTITY_LISTENER__POST_LOAD, null, msgs); + msgs = basicSetPostLoad(newPostLoad, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.ENTITY_LISTENER__POST_LOAD, newPostLoad, newPostLoad)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case EclipseLinkOrmPackage.ENTITY_LISTENER__PRE_PERSIST: + return basicSetPrePersist(null, msgs); + case EclipseLinkOrmPackage.ENTITY_LISTENER__POST_PERSIST: + return basicSetPostPersist(null, msgs); + case EclipseLinkOrmPackage.ENTITY_LISTENER__PRE_REMOVE: + return basicSetPreRemove(null, msgs); + case EclipseLinkOrmPackage.ENTITY_LISTENER__POST_REMOVE: + return basicSetPostRemove(null, msgs); + case EclipseLinkOrmPackage.ENTITY_LISTENER__PRE_UPDATE: + return basicSetPreUpdate(null, msgs); + case EclipseLinkOrmPackage.ENTITY_LISTENER__POST_UPDATE: + return basicSetPostUpdate(null, msgs); + case EclipseLinkOrmPackage.ENTITY_LISTENER__POST_LOAD: + return basicSetPostLoad(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case EclipseLinkOrmPackage.ENTITY_LISTENER__CLASS_NAME: + return getClassName(); + case EclipseLinkOrmPackage.ENTITY_LISTENER__PRE_PERSIST: + return getPrePersist(); + case EclipseLinkOrmPackage.ENTITY_LISTENER__POST_PERSIST: + return getPostPersist(); + case EclipseLinkOrmPackage.ENTITY_LISTENER__PRE_REMOVE: + return getPreRemove(); + case EclipseLinkOrmPackage.ENTITY_LISTENER__POST_REMOVE: + return getPostRemove(); + case EclipseLinkOrmPackage.ENTITY_LISTENER__PRE_UPDATE: + return getPreUpdate(); + case EclipseLinkOrmPackage.ENTITY_LISTENER__POST_UPDATE: + return getPostUpdate(); + case EclipseLinkOrmPackage.ENTITY_LISTENER__POST_LOAD: + return getPostLoad(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case EclipseLinkOrmPackage.ENTITY_LISTENER__CLASS_NAME: + setClassName((String)newValue); + return; + case EclipseLinkOrmPackage.ENTITY_LISTENER__PRE_PERSIST: + setPrePersist((PrePersist)newValue); + return; + case EclipseLinkOrmPackage.ENTITY_LISTENER__POST_PERSIST: + setPostPersist((PostPersist)newValue); + return; + case EclipseLinkOrmPackage.ENTITY_LISTENER__PRE_REMOVE: + setPreRemove((PreRemove)newValue); + return; + case EclipseLinkOrmPackage.ENTITY_LISTENER__POST_REMOVE: + setPostRemove((PostRemove)newValue); + return; + case EclipseLinkOrmPackage.ENTITY_LISTENER__PRE_UPDATE: + setPreUpdate((PreUpdate)newValue); + return; + case EclipseLinkOrmPackage.ENTITY_LISTENER__POST_UPDATE: + setPostUpdate((PostUpdate)newValue); + return; + case EclipseLinkOrmPackage.ENTITY_LISTENER__POST_LOAD: + setPostLoad((PostLoad)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.ENTITY_LISTENER__CLASS_NAME: + setClassName(CLASS_NAME_EDEFAULT); + return; + case EclipseLinkOrmPackage.ENTITY_LISTENER__PRE_PERSIST: + setPrePersist((PrePersist)null); + return; + case EclipseLinkOrmPackage.ENTITY_LISTENER__POST_PERSIST: + setPostPersist((PostPersist)null); + return; + case EclipseLinkOrmPackage.ENTITY_LISTENER__PRE_REMOVE: + setPreRemove((PreRemove)null); + return; + case EclipseLinkOrmPackage.ENTITY_LISTENER__POST_REMOVE: + setPostRemove((PostRemove)null); + return; + case EclipseLinkOrmPackage.ENTITY_LISTENER__PRE_UPDATE: + setPreUpdate((PreUpdate)null); + return; + case EclipseLinkOrmPackage.ENTITY_LISTENER__POST_UPDATE: + setPostUpdate((PostUpdate)null); + return; + case EclipseLinkOrmPackage.ENTITY_LISTENER__POST_LOAD: + setPostLoad((PostLoad)null); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.ENTITY_LISTENER__CLASS_NAME: + return CLASS_NAME_EDEFAULT == null ? className != null : !CLASS_NAME_EDEFAULT.equals(className); + case EclipseLinkOrmPackage.ENTITY_LISTENER__PRE_PERSIST: + return prePersist != null; + case EclipseLinkOrmPackage.ENTITY_LISTENER__POST_PERSIST: + return postPersist != null; + case EclipseLinkOrmPackage.ENTITY_LISTENER__PRE_REMOVE: + return preRemove != null; + case EclipseLinkOrmPackage.ENTITY_LISTENER__POST_REMOVE: + return postRemove != null; + case EclipseLinkOrmPackage.ENTITY_LISTENER__PRE_UPDATE: + return preUpdate != null; + case EclipseLinkOrmPackage.ENTITY_LISTENER__POST_UPDATE: + return postUpdate != null; + case EclipseLinkOrmPackage.ENTITY_LISTENER__POST_LOAD: + return postLoad != null; + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (className: "); + result.append(className); + result.append(')'); + return result.toString(); + } + +} // EntityListener diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/EntityListeners.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/EntityListeners.java new file mode 100644 index 0000000000..47d1c1b324 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/EntityListeners.java @@ -0,0 +1,185 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +import org.eclipse.jpt.core.resource.common.AbstractJpaEObject; +import org.eclipse.jpt.core.resource.common.JpaEObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Entity Listeners</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.EntityListeners#getEntityListeners <em>Entity Listeners</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getEntityListeners() + * @model kind="class" + * @extends JpaEObject + * @generated + */ +public class EntityListeners extends AbstractJpaEObject implements JpaEObject +{ + /** + * The cached value of the '{@link #getEntityListeners() <em>Entity Listeners</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getEntityListeners() + * @generated + * @ordered + */ + protected EList<EntityListener> entityListeners; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected EntityListeners() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.ENTITY_LISTENERS; + } + + /** + * Returns the value of the '<em><b>Entity Listeners</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.jpt.eclipselink.core.resource.elorm.EntityListener}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Entity Listeners</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Entity Listeners</em>' containment reference list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getEntityListeners_EntityListeners() + * @model containment="true" + * @generated + */ + public EList<EntityListener> getEntityListeners() + { + if (entityListeners == null) + { + entityListeners = new EObjectContainmentEList<EntityListener>(EntityListener.class, this, EclipseLinkOrmPackage.ENTITY_LISTENERS__ENTITY_LISTENERS); + } + return entityListeners; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case EclipseLinkOrmPackage.ENTITY_LISTENERS__ENTITY_LISTENERS: + return ((InternalEList<?>)getEntityListeners()).basicRemove(otherEnd, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case EclipseLinkOrmPackage.ENTITY_LISTENERS__ENTITY_LISTENERS: + return getEntityListeners(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case EclipseLinkOrmPackage.ENTITY_LISTENERS__ENTITY_LISTENERS: + getEntityListeners().clear(); + getEntityListeners().addAll((Collection<? extends EntityListener>)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.ENTITY_LISTENERS__ENTITY_LISTENERS: + getEntityListeners().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.ENTITY_LISTENERS__ENTITY_LISTENERS: + return entityListeners != null && !entityListeners.isEmpty(); + } + return super.eIsSet(featureID); + } + +} // EntityListeners diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/EntityResult.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/EntityResult.java new file mode 100644 index 0000000000..d3382de9a1 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/EntityResult.java @@ -0,0 +1,339 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +import org.eclipse.jpt.core.resource.common.AbstractJpaEObject; +import org.eclipse.jpt.core.resource.common.JpaEObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Entity Result</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.EntityResult#getDiscriminatorColumn <em>Discriminator Column</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.EntityResult#getEntityClass <em>Entity Class</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.EntityResult#getFieldResults <em>Field Results</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getEntityResult() + * @model kind="class" + * @extends JpaEObject + * @generated + */ +public class EntityResult extends AbstractJpaEObject implements JpaEObject +{ + /** + * The default value of the '{@link #getDiscriminatorColumn() <em>Discriminator Column</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDiscriminatorColumn() + * @generated + * @ordered + */ + protected static final String DISCRIMINATOR_COLUMN_EDEFAULT = null; + + /** + * The cached value of the '{@link #getDiscriminatorColumn() <em>Discriminator Column</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDiscriminatorColumn() + * @generated + * @ordered + */ + protected String discriminatorColumn = DISCRIMINATOR_COLUMN_EDEFAULT; + + /** + * The default value of the '{@link #getEntityClass() <em>Entity Class</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getEntityClass() + * @generated + * @ordered + */ + protected static final String ENTITY_CLASS_EDEFAULT = null; + + /** + * The cached value of the '{@link #getEntityClass() <em>Entity Class</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getEntityClass() + * @generated + * @ordered + */ + protected String entityClass = ENTITY_CLASS_EDEFAULT; + + /** + * The cached value of the '{@link #getFieldResults() <em>Field Results</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getFieldResults() + * @generated + * @ordered + */ + protected EList<FieldResult> fieldResults; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected EntityResult() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.ENTITY_RESULT; + } + + /** + * Returns the value of the '<em><b>Discriminator Column</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Discriminator Column</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Discriminator Column</em>' attribute. + * @see #setDiscriminatorColumn(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getEntityResult_DiscriminatorColumn() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + public String getDiscriminatorColumn() + { + return discriminatorColumn; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.EntityResult#getDiscriminatorColumn <em>Discriminator Column</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Discriminator Column</em>' attribute. + * @see #getDiscriminatorColumn() + * @generated + */ + public void setDiscriminatorColumn(String newDiscriminatorColumn) + { + String oldDiscriminatorColumn = discriminatorColumn; + discriminatorColumn = newDiscriminatorColumn; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.ENTITY_RESULT__DISCRIMINATOR_COLUMN, oldDiscriminatorColumn, discriminatorColumn)); + } + + /** + * Returns the value of the '<em><b>Entity Class</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Entity Class</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Entity Class</em>' attribute. + * @see #setEntityClass(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getEntityResult_EntityClass() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" required="true" + * @generated + */ + public String getEntityClass() + { + return entityClass; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.EntityResult#getEntityClass <em>Entity Class</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Entity Class</em>' attribute. + * @see #getEntityClass() + * @generated + */ + public void setEntityClass(String newEntityClass) + { + String oldEntityClass = entityClass; + entityClass = newEntityClass; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.ENTITY_RESULT__ENTITY_CLASS, oldEntityClass, entityClass)); + } + + /** + * Returns the value of the '<em><b>Field Results</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.jpt.eclipselink.core.resource.elorm.FieldResult}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Field Results</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Field Results</em>' containment reference list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getEntityResult_FieldResults() + * @model containment="true" + * @generated + */ + public EList<FieldResult> getFieldResults() + { + if (fieldResults == null) + { + fieldResults = new EObjectContainmentEList<FieldResult>(FieldResult.class, this, EclipseLinkOrmPackage.ENTITY_RESULT__FIELD_RESULTS); + } + return fieldResults; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case EclipseLinkOrmPackage.ENTITY_RESULT__FIELD_RESULTS: + return ((InternalEList<?>)getFieldResults()).basicRemove(otherEnd, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case EclipseLinkOrmPackage.ENTITY_RESULT__DISCRIMINATOR_COLUMN: + return getDiscriminatorColumn(); + case EclipseLinkOrmPackage.ENTITY_RESULT__ENTITY_CLASS: + return getEntityClass(); + case EclipseLinkOrmPackage.ENTITY_RESULT__FIELD_RESULTS: + return getFieldResults(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case EclipseLinkOrmPackage.ENTITY_RESULT__DISCRIMINATOR_COLUMN: + setDiscriminatorColumn((String)newValue); + return; + case EclipseLinkOrmPackage.ENTITY_RESULT__ENTITY_CLASS: + setEntityClass((String)newValue); + return; + case EclipseLinkOrmPackage.ENTITY_RESULT__FIELD_RESULTS: + getFieldResults().clear(); + getFieldResults().addAll((Collection<? extends FieldResult>)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.ENTITY_RESULT__DISCRIMINATOR_COLUMN: + setDiscriminatorColumn(DISCRIMINATOR_COLUMN_EDEFAULT); + return; + case EclipseLinkOrmPackage.ENTITY_RESULT__ENTITY_CLASS: + setEntityClass(ENTITY_CLASS_EDEFAULT); + return; + case EclipseLinkOrmPackage.ENTITY_RESULT__FIELD_RESULTS: + getFieldResults().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.ENTITY_RESULT__DISCRIMINATOR_COLUMN: + return DISCRIMINATOR_COLUMN_EDEFAULT == null ? discriminatorColumn != null : !DISCRIMINATOR_COLUMN_EDEFAULT.equals(discriminatorColumn); + case EclipseLinkOrmPackage.ENTITY_RESULT__ENTITY_CLASS: + return ENTITY_CLASS_EDEFAULT == null ? entityClass != null : !ENTITY_CLASS_EDEFAULT.equals(entityClass); + case EclipseLinkOrmPackage.ENTITY_RESULT__FIELD_RESULTS: + return fieldResults != null && !fieldResults.isEmpty(); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (discriminatorColumn: "); + result.append(discriminatorColumn); + result.append(", entityClass: "); + result.append(entityClass); + result.append(')'); + return result.toString(); + } + +} // EntityResult diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/EnumType.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/EnumType.java new file mode 100644 index 0000000000..9a540e8718 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/EnumType.java @@ -0,0 +1,231 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +import org.eclipse.emf.common.util.Enumerator; + +/** + * <!-- begin-user-doc --> + * A representation of the literals of the enumeration '<em><b>Enum Type</b></em>', + * and utility methods for working with them. + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getEnumType() + * @model + * @generated + */ +public enum EnumType implements Enumerator +{ + /** + * The '<em><b>ORDINAL</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #ORDINAL_VALUE + * @generated + * @ordered + */ + ORDINAL(0, "ORDINAL", "ORDINAL"), + + /** + * The '<em><b>STRING</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #STRING_VALUE + * @generated + * @ordered + */ + STRING(1, "STRING", "STRING"); + + /** + * The '<em><b>ORDINAL</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>ORDINAL</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #ORDINAL + * @model + * @generated + * @ordered + */ + public static final int ORDINAL_VALUE = 0; + + /** + * The '<em><b>STRING</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>STRING</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #STRING + * @model + * @generated + * @ordered + */ + public static final int STRING_VALUE = 1; + + /** + * An array of all the '<em><b>Enum Type</b></em>' enumerators. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private static final EnumType[] VALUES_ARRAY = + new EnumType[] + { + ORDINAL, + STRING, + }; + + /** + * A public read-only list of all the '<em><b>Enum Type</b></em>' enumerators. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final List<EnumType> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); + + /** + * Returns the '<em><b>Enum Type</b></em>' literal with the specified literal value. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static EnumType get(String literal) + { + for (int i = 0; i < VALUES_ARRAY.length; ++i) + { + EnumType result = VALUES_ARRAY[i]; + if (result.toString().equals(literal)) + { + return result; + } + } + return null; + } + + /** + * Returns the '<em><b>Enum Type</b></em>' literal with the specified name. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static EnumType getByName(String name) + { + for (int i = 0; i < VALUES_ARRAY.length; ++i) + { + EnumType result = VALUES_ARRAY[i]; + if (result.getName().equals(name)) + { + return result; + } + } + return null; + } + + /** + * Returns the '<em><b>Enum Type</b></em>' literal with the specified integer value. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static EnumType get(int value) + { + switch (value) + { + case ORDINAL_VALUE: return ORDINAL; + case STRING_VALUE: return STRING; + } + return null; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private final int value; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private final String name; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private final String literal; + + /** + * Only this class can construct instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EnumType(int value, String name, String literal) + { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public int getValue() + { + return value; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getName() + { + return name; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getLiteral() + { + return literal; + } + + /** + * Returns the literal value of the enumerator, which is its string representation. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() + { + return literal; + } + +} //EnumType diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/EventMethod.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/EventMethod.java new file mode 100644 index 0000000000..f8979bd5f4 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/EventMethod.java @@ -0,0 +1,200 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.jpt.core.resource.common.AbstractJpaEObject; +import org.eclipse.jpt.core.resource.common.JpaEObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Event Method</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.EventMethod#getMethodName <em>Method Name</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getEventMethod() + * @model kind="class" + * @extends JpaEObject + * @generated + */ +public class EventMethod extends AbstractJpaEObject implements JpaEObject +{ + /** + * The default value of the '{@link #getMethodName() <em>Method Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMethodName() + * @generated + * @ordered + */ + protected static final String METHOD_NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getMethodName() <em>Method Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMethodName() + * @generated + * @ordered + */ + protected String methodName = METHOD_NAME_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected EventMethod() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.EVENT_METHOD; + } + + /** + * Returns the value of the '<em><b>Method Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Method Name</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Method Name</em>' attribute. + * @see #setMethodName(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getEventMethod_MethodName() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" required="true" + * @generated + */ + public String getMethodName() + { + return methodName; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.EventMethod#getMethodName <em>Method Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Method Name</em>' attribute. + * @see #getMethodName() + * @generated + */ + public void setMethodName(String newMethodName) + { + String oldMethodName = methodName; + methodName = newMethodName; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.EVENT_METHOD__METHOD_NAME, oldMethodName, methodName)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case EclipseLinkOrmPackage.EVENT_METHOD__METHOD_NAME: + return getMethodName(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case EclipseLinkOrmPackage.EVENT_METHOD__METHOD_NAME: + setMethodName((String)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.EVENT_METHOD__METHOD_NAME: + setMethodName(METHOD_NAME_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.EVENT_METHOD__METHOD_NAME: + return METHOD_NAME_EDEFAULT == null ? methodName != null : !METHOD_NAME_EDEFAULT.equals(methodName); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (methodName: "); + result.append(methodName); + result.append(')'); + return result.toString(); + } + +} // EventMethod diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/FetchType.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/FetchType.java new file mode 100644 index 0000000000..03f503811f --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/FetchType.java @@ -0,0 +1,231 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +import org.eclipse.emf.common.util.Enumerator; + +/** + * <!-- begin-user-doc --> + * A representation of the literals of the enumeration '<em><b>Fetch Type</b></em>', + * and utility methods for working with them. + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getFetchType() + * @model + * @generated + */ +public enum FetchType implements Enumerator +{ + /** + * The '<em><b>LAZY</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #LAZY_VALUE + * @generated + * @ordered + */ + LAZY(0, "LAZY", "LAZY"), + + /** + * The '<em><b>EAGER</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #EAGER_VALUE + * @generated + * @ordered + */ + EAGER(1, "EAGER", "EAGER"); + + /** + * The '<em><b>LAZY</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>LAZY</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #LAZY + * @model + * @generated + * @ordered + */ + public static final int LAZY_VALUE = 0; + + /** + * The '<em><b>EAGER</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>EAGER</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #EAGER + * @model + * @generated + * @ordered + */ + public static final int EAGER_VALUE = 1; + + /** + * An array of all the '<em><b>Fetch Type</b></em>' enumerators. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private static final FetchType[] VALUES_ARRAY = + new FetchType[] + { + LAZY, + EAGER, + }; + + /** + * A public read-only list of all the '<em><b>Fetch Type</b></em>' enumerators. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final List<FetchType> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); + + /** + * Returns the '<em><b>Fetch Type</b></em>' literal with the specified literal value. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static FetchType get(String literal) + { + for (int i = 0; i < VALUES_ARRAY.length; ++i) + { + FetchType result = VALUES_ARRAY[i]; + if (result.toString().equals(literal)) + { + return result; + } + } + return null; + } + + /** + * Returns the '<em><b>Fetch Type</b></em>' literal with the specified name. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static FetchType getByName(String name) + { + for (int i = 0; i < VALUES_ARRAY.length; ++i) + { + FetchType result = VALUES_ARRAY[i]; + if (result.getName().equals(name)) + { + return result; + } + } + return null; + } + + /** + * Returns the '<em><b>Fetch Type</b></em>' literal with the specified integer value. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static FetchType get(int value) + { + switch (value) + { + case LAZY_VALUE: return LAZY; + case EAGER_VALUE: return EAGER; + } + return null; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private final int value; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private final String name; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private final String literal; + + /** + * Only this class can construct instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private FetchType(int value, String name, String literal) + { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public int getValue() + { + return value; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getName() + { + return name; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getLiteral() + { + return literal; + } + + /** + * Returns the literal value of the enumerator, which is its string representation. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() + { + return literal; + } + +} //FetchType diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/FieldResult.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/FieldResult.java new file mode 100644 index 0000000000..5dc6fa00a0 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/FieldResult.java @@ -0,0 +1,268 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.jpt.core.resource.common.AbstractJpaEObject; +import org.eclipse.jpt.core.resource.common.JpaEObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Field Result</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.FieldResult#getName <em>Name</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.FieldResult#getColumn <em>Column</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getFieldResult() + * @model kind="class" + * @extends JpaEObject + * @generated + */ +public class FieldResult extends AbstractJpaEObject implements JpaEObject +{ + /** + * The default value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected static final String NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected String name = NAME_EDEFAULT; + + /** + * The default value of the '{@link #getColumn() <em>Column</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getColumn() + * @generated + * @ordered + */ + protected static final String COLUMN_EDEFAULT = null; + + /** + * The cached value of the '{@link #getColumn() <em>Column</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getColumn() + * @generated + * @ordered + */ + protected String column = COLUMN_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected FieldResult() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.FIELD_RESULT; + } + + /** + * Returns the value of the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Name</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Name</em>' attribute. + * @see #setName(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getFieldResult_Name() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" required="true" + * @generated + */ + public String getName() + { + return name; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.FieldResult#getName <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Name</em>' attribute. + * @see #getName() + * @generated + */ + public void setName(String newName) + { + String oldName = name; + name = newName; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.FIELD_RESULT__NAME, oldName, name)); + } + + /** + * Returns the value of the '<em><b>Column</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Column</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Column</em>' attribute. + * @see #setColumn(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getFieldResult_Column() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" required="true" + * @generated + */ + public String getColumn() + { + return column; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.FieldResult#getColumn <em>Column</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Column</em>' attribute. + * @see #getColumn() + * @generated + */ + public void setColumn(String newColumn) + { + String oldColumn = column; + column = newColumn; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.FIELD_RESULT__COLUMN, oldColumn, column)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case EclipseLinkOrmPackage.FIELD_RESULT__NAME: + return getName(); + case EclipseLinkOrmPackage.FIELD_RESULT__COLUMN: + return getColumn(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case EclipseLinkOrmPackage.FIELD_RESULT__NAME: + setName((String)newValue); + return; + case EclipseLinkOrmPackage.FIELD_RESULT__COLUMN: + setColumn((String)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.FIELD_RESULT__NAME: + setName(NAME_EDEFAULT); + return; + case EclipseLinkOrmPackage.FIELD_RESULT__COLUMN: + setColumn(COLUMN_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.FIELD_RESULT__NAME: + return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name); + case EclipseLinkOrmPackage.FIELD_RESULT__COLUMN: + return COLUMN_EDEFAULT == null ? column != null : !COLUMN_EDEFAULT.equals(column); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (name: "); + result.append(name); + result.append(", column: "); + result.append(column); + result.append(')'); + return result.toString(); + } + +} // FieldResult diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/GenerationType.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/GenerationType.java new file mode 100644 index 0000000000..eb7fb2f6b1 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/GenerationType.java @@ -0,0 +1,285 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +import org.eclipse.emf.common.util.Enumerator; + +/** + * <!-- begin-user-doc --> + * A representation of the literals of the enumeration '<em><b>Generation Type</b></em>', + * and utility methods for working with them. + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getGenerationType() + * @model + * @generated + */ +public enum GenerationType implements Enumerator +{ + /** + * The '<em><b>TABLE</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #TABLE_VALUE + * @generated + * @ordered + */ + TABLE(0, "TABLE", "TABLE"), + + /** + * The '<em><b>SEQUENCE</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #SEQUENCE_VALUE + * @generated + * @ordered + */ + SEQUENCE(1, "SEQUENCE", "SEQUENCE"), + + /** + * The '<em><b>IDENTITY</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #IDENTITY_VALUE + * @generated + * @ordered + */ + IDENTITY(2, "IDENTITY", "IDENTITY"), + + /** + * The '<em><b>AUTO</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #AUTO_VALUE + * @generated + * @ordered + */ + AUTO(3, "AUTO", "AUTO"); + + /** + * The '<em><b>TABLE</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>TABLE</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #TABLE + * @model + * @generated + * @ordered + */ + public static final int TABLE_VALUE = 0; + + /** + * The '<em><b>SEQUENCE</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>SEQUENCE</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #SEQUENCE + * @model + * @generated + * @ordered + */ + public static final int SEQUENCE_VALUE = 1; + + /** + * The '<em><b>IDENTITY</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>IDENTITY</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #IDENTITY + * @model + * @generated + * @ordered + */ + public static final int IDENTITY_VALUE = 2; + + /** + * The '<em><b>AUTO</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>AUTO</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #AUTO + * @model + * @generated + * @ordered + */ + public static final int AUTO_VALUE = 3; + + /** + * An array of all the '<em><b>Generation Type</b></em>' enumerators. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private static final GenerationType[] VALUES_ARRAY = + new GenerationType[] + { + TABLE, + SEQUENCE, + IDENTITY, + AUTO, + }; + + /** + * A public read-only list of all the '<em><b>Generation Type</b></em>' enumerators. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final List<GenerationType> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); + + /** + * Returns the '<em><b>Generation Type</b></em>' literal with the specified literal value. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static GenerationType get(String literal) + { + for (int i = 0; i < VALUES_ARRAY.length; ++i) + { + GenerationType result = VALUES_ARRAY[i]; + if (result.toString().equals(literal)) + { + return result; + } + } + return null; + } + + /** + * Returns the '<em><b>Generation Type</b></em>' literal with the specified name. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static GenerationType getByName(String name) + { + for (int i = 0; i < VALUES_ARRAY.length; ++i) + { + GenerationType result = VALUES_ARRAY[i]; + if (result.getName().equals(name)) + { + return result; + } + } + return null; + } + + /** + * Returns the '<em><b>Generation Type</b></em>' literal with the specified integer value. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static GenerationType get(int value) + { + switch (value) + { + case TABLE_VALUE: return TABLE; + case SEQUENCE_VALUE: return SEQUENCE; + case IDENTITY_VALUE: return IDENTITY; + case AUTO_VALUE: return AUTO; + } + return null; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private final int value; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private final String name; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private final String literal; + + /** + * Only this class can construct instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private GenerationType(int value, String name, String literal) + { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public int getValue() + { + return value; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getName() + { + return name; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getLiteral() + { + return literal; + } + + /** + * Returns the literal value of the enumerator, which is its string representation. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() + { + return literal; + } + +} //GenerationType diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/Inheritance.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/Inheritance.java new file mode 100644 index 0000000000..3778a12b5a --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/Inheritance.java @@ -0,0 +1,204 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.jpt.core.resource.common.AbstractJpaEObject; +import org.eclipse.jpt.core.resource.common.JpaEObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Inheritance</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.Inheritance#getStrategy <em>Strategy</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getInheritance() + * @model kind="class" + * @extends JpaEObject + * @generated + */ +public class Inheritance extends AbstractJpaEObject implements JpaEObject +{ + /** + * The default value of the '{@link #getStrategy() <em>Strategy</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getStrategy() + * @generated + * @ordered + */ + protected static final InheritanceType STRATEGY_EDEFAULT = InheritanceType.SINGLE_TABLE; + + /** + * The cached value of the '{@link #getStrategy() <em>Strategy</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getStrategy() + * @generated + * @ordered + */ + protected InheritanceType strategy = STRATEGY_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected Inheritance() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.INHERITANCE; + } + + /** + * Returns the value of the '<em><b>Strategy</b></em>' attribute. + * The default value is <code>"SINGLE_TABLE"</code>. + * The literals are from the enumeration {@link org.eclipse.jpt.eclipselink.core.resource.elorm.InheritanceType}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Strategy</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Strategy</em>' attribute. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.InheritanceType + * @see #setStrategy(InheritanceType) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getInheritance_Strategy() + * @model default="SINGLE_TABLE" + * @generated + */ + public InheritanceType getStrategy() + { + return strategy; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.Inheritance#getStrategy <em>Strategy</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Strategy</em>' attribute. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.InheritanceType + * @see #getStrategy() + * @generated + */ + public void setStrategy(InheritanceType newStrategy) + { + InheritanceType oldStrategy = strategy; + strategy = newStrategy == null ? STRATEGY_EDEFAULT : newStrategy; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.INHERITANCE__STRATEGY, oldStrategy, strategy)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case EclipseLinkOrmPackage.INHERITANCE__STRATEGY: + return getStrategy(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case EclipseLinkOrmPackage.INHERITANCE__STRATEGY: + setStrategy((InheritanceType)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.INHERITANCE__STRATEGY: + setStrategy(STRATEGY_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.INHERITANCE__STRATEGY: + return strategy != STRATEGY_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (strategy: "); + result.append(strategy); + result.append(')'); + return result.toString(); + } + +} // Inheritance diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/InheritanceType.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/InheritanceType.java new file mode 100644 index 0000000000..69c62621a4 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/InheritanceType.java @@ -0,0 +1,258 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +import org.eclipse.emf.common.util.Enumerator; + +/** + * <!-- begin-user-doc --> + * A representation of the literals of the enumeration '<em><b>Inheritance Type</b></em>', + * and utility methods for working with them. + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getInheritanceType() + * @model + * @generated + */ +public enum InheritanceType implements Enumerator +{ + /** + * The '<em><b>SINGLE TABLE</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #SINGLE_TABLE_VALUE + * @generated + * @ordered + */ + SINGLE_TABLE(0, "SINGLE_TABLE", "SINGLE_TABLE"), + + /** + * The '<em><b>JOINED</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #JOINED_VALUE + * @generated + * @ordered + */ + JOINED(1, "JOINED", "JOINED"), + + /** + * The '<em><b>TABLE PER CLASS</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #TABLE_PER_CLASS_VALUE + * @generated + * @ordered + */ + TABLE_PER_CLASS(2, "TABLE_PER_CLASS", "TABLE_PER_CLASS"); + + /** + * The '<em><b>SINGLE TABLE</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>SINGLE TABLE</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #SINGLE_TABLE + * @model + * @generated + * @ordered + */ + public static final int SINGLE_TABLE_VALUE = 0; + + /** + * The '<em><b>JOINED</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>JOINED</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #JOINED + * @model + * @generated + * @ordered + */ + public static final int JOINED_VALUE = 1; + + /** + * The '<em><b>TABLE PER CLASS</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>TABLE PER CLASS</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #TABLE_PER_CLASS + * @model + * @generated + * @ordered + */ + public static final int TABLE_PER_CLASS_VALUE = 2; + + /** + * An array of all the '<em><b>Inheritance Type</b></em>' enumerators. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private static final InheritanceType[] VALUES_ARRAY = + new InheritanceType[] + { + SINGLE_TABLE, + JOINED, + TABLE_PER_CLASS, + }; + + /** + * A public read-only list of all the '<em><b>Inheritance Type</b></em>' enumerators. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final List<InheritanceType> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); + + /** + * Returns the '<em><b>Inheritance Type</b></em>' literal with the specified literal value. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static InheritanceType get(String literal) + { + for (int i = 0; i < VALUES_ARRAY.length; ++i) + { + InheritanceType result = VALUES_ARRAY[i]; + if (result.toString().equals(literal)) + { + return result; + } + } + return null; + } + + /** + * Returns the '<em><b>Inheritance Type</b></em>' literal with the specified name. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static InheritanceType getByName(String name) + { + for (int i = 0; i < VALUES_ARRAY.length; ++i) + { + InheritanceType result = VALUES_ARRAY[i]; + if (result.getName().equals(name)) + { + return result; + } + } + return null; + } + + /** + * Returns the '<em><b>Inheritance Type</b></em>' literal with the specified integer value. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static InheritanceType get(int value) + { + switch (value) + { + case SINGLE_TABLE_VALUE: return SINGLE_TABLE; + case JOINED_VALUE: return JOINED; + case TABLE_PER_CLASS_VALUE: return TABLE_PER_CLASS; + } + return null; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private final int value; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private final String name; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private final String literal; + + /** + * Only this class can construct instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private InheritanceType(int value, String name, String literal) + { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public int getValue() + { + return value; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getName() + { + return name; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getLiteral() + { + return literal; + } + + /** + * Returns the literal value of the enumerator, which is its string representation. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() + { + return literal; + } + +} //InheritanceType diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/Lob.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/Lob.java new file mode 100644 index 0000000000..158077295e --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/Lob.java @@ -0,0 +1,52 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.jpt.core.resource.common.AbstractJpaEObject; +import org.eclipse.jpt.core.resource.common.JpaEObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Lob</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getLob() + * @model kind="class" + * @extends JpaEObject + * @generated + */ +public class Lob extends AbstractJpaEObject implements JpaEObject +{ + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected Lob() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.LOB; + } + +} // Lob diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/MapKey.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/MapKey.java new file mode 100644 index 0000000000..41ca7b1932 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/MapKey.java @@ -0,0 +1,60 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.jpt.core.resource.common.JpaEObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Map Key</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.MapKey#getName <em>Name</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getMapKey() + * @model kind="class" interface="true" abstract="true" + * @extends JpaEObject + * @generated + */ +public interface MapKey extends JpaEObject +{ + /** + * Returns the value of the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Name</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Name</em>' attribute. + * @see #setName(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getMapKey_Name() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + String getName(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.MapKey#getName <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Name</em>' attribute. + * @see #getName() + * @generated + */ + void setName(String value); + +} // MapKey diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/MapKeyImpl.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/MapKeyImpl.java new file mode 100644 index 0000000000..ca1ab76593 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/MapKeyImpl.java @@ -0,0 +1,192 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.jpt.core.resource.common.AbstractJpaEObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Map Key Impl</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getMapKeyImpl() + * @model kind="class" + * @generated + */ +public class MapKeyImpl extends AbstractJpaEObject implements MapKey +{ + /** + * The default value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected static final String NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected String name = NAME_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected MapKeyImpl() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.MAP_KEY_IMPL; + } + + /** + * Returns the value of the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Name</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Name</em>' attribute. + * @see #setName(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getMapKey_Name() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + public String getName() + { + return name; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.MapKeyImpl#getName <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Name</em>' attribute. + * @see #getName() + * @generated + */ + public void setName(String newName) + { + String oldName = name; + name = newName; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.MAP_KEY_IMPL__NAME, oldName, name)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case EclipseLinkOrmPackage.MAP_KEY_IMPL__NAME: + return getName(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case EclipseLinkOrmPackage.MAP_KEY_IMPL__NAME: + setName((String)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.MAP_KEY_IMPL__NAME: + setName(NAME_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.MAP_KEY_IMPL__NAME: + return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (name: "); + result.append(name); + result.append(')'); + return result.toString(); + } + +} // MapKeyImpl diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/PostLoad.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/PostLoad.java new file mode 100644 index 0000000000..c8449ee565 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/PostLoad.java @@ -0,0 +1,48 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.emf.ecore.EClass; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Post Load</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getPostLoad() + * @model kind="class" + * @generated + */ +public class PostLoad extends EventMethod +{ + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected PostLoad() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.POST_LOAD; + } + +} // PostLoad diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/PostPersist.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/PostPersist.java new file mode 100644 index 0000000000..e383af668c --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/PostPersist.java @@ -0,0 +1,48 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.emf.ecore.EClass; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Post Persist</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getPostPersist() + * @model kind="class" + * @generated + */ +public class PostPersist extends EventMethod +{ + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected PostPersist() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.POST_PERSIST; + } + +} // PostPersist diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/PostRemove.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/PostRemove.java new file mode 100644 index 0000000000..261b9ba4ef --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/PostRemove.java @@ -0,0 +1,48 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.emf.ecore.EClass; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Post Remove</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getPostRemove() + * @model kind="class" + * @generated + */ +public class PostRemove extends EventMethod +{ + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected PostRemove() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.POST_REMOVE; + } + +} // PostRemove diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/PostUpdate.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/PostUpdate.java new file mode 100644 index 0000000000..e693294377 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/PostUpdate.java @@ -0,0 +1,48 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.emf.ecore.EClass; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Post Update</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getPostUpdate() + * @model kind="class" + * @generated + */ +public class PostUpdate extends EventMethod +{ + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected PostUpdate() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.POST_UPDATE; + } + +} // PostUpdate diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/PrePersist.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/PrePersist.java new file mode 100644 index 0000000000..1e4ce6cd7c --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/PrePersist.java @@ -0,0 +1,48 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.emf.ecore.EClass; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Pre Persist</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getPrePersist() + * @model kind="class" + * @generated + */ +public class PrePersist extends EventMethod +{ + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected PrePersist() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.PRE_PERSIST; + } + +} // PrePersist diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/PreRemove.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/PreRemove.java new file mode 100644 index 0000000000..cc181de910 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/PreRemove.java @@ -0,0 +1,48 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.emf.ecore.EClass; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Pre Remove</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getPreRemove() + * @model kind="class" + * @generated + */ +public class PreRemove extends EventMethod +{ + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected PreRemove() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.PRE_REMOVE; + } + +} // PreRemove diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/PreUpdate.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/PreUpdate.java new file mode 100644 index 0000000000..4290d2766e --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/PreUpdate.java @@ -0,0 +1,48 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.emf.ecore.EClass; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Pre Update</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getPreUpdate() + * @model kind="class" + * @generated + */ +public class PreUpdate extends EventMethod +{ + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected PreUpdate() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.PRE_UPDATE; + } + +} // PreUpdate diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/SqlResultSetMapping.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/SqlResultSetMapping.java new file mode 100644 index 0000000000..aed6de1044 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/SqlResultSetMapping.java @@ -0,0 +1,318 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +import org.eclipse.jpt.core.resource.common.AbstractJpaEObject; +import org.eclipse.jpt.core.resource.common.JpaEObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Sql Result Set Mapping</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.SqlResultSetMapping#getName <em>Name</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.SqlResultSetMapping#getEntityResults <em>Entity Results</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.SqlResultSetMapping#getColumnResults <em>Column Results</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getSqlResultSetMapping() + * @model kind="class" + * @extends JpaEObject + * @generated + */ +public class SqlResultSetMapping extends AbstractJpaEObject implements JpaEObject +{ + /** + * The default value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected static final String NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected String name = NAME_EDEFAULT; + + /** + * The cached value of the '{@link #getEntityResults() <em>Entity Results</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getEntityResults() + * @generated + * @ordered + */ + protected EList<EntityResult> entityResults; + + /** + * The cached value of the '{@link #getColumnResults() <em>Column Results</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getColumnResults() + * @generated + * @ordered + */ + protected EList<ColumnResult> columnResults; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected SqlResultSetMapping() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.SQL_RESULT_SET_MAPPING; + } + + /** + * Returns the value of the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Name</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Name</em>' attribute. + * @see #setName(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getSqlResultSetMapping_Name() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" required="true" + * @generated + */ + public String getName() + { + return name; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.SqlResultSetMapping#getName <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Name</em>' attribute. + * @see #getName() + * @generated + */ + public void setName(String newName) + { + String oldName = name; + name = newName; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.SQL_RESULT_SET_MAPPING__NAME, oldName, name)); + } + + /** + * Returns the value of the '<em><b>Entity Results</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.jpt.eclipselink.core.resource.elorm.EntityResult}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Entity Results</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Entity Results</em>' containment reference list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getSqlResultSetMapping_EntityResults() + * @model containment="true" + * @generated + */ + public EList<EntityResult> getEntityResults() + { + if (entityResults == null) + { + entityResults = new EObjectContainmentEList<EntityResult>(EntityResult.class, this, EclipseLinkOrmPackage.SQL_RESULT_SET_MAPPING__ENTITY_RESULTS); + } + return entityResults; + } + + /** + * Returns the value of the '<em><b>Column Results</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.jpt.eclipselink.core.resource.elorm.ColumnResult}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Column Results</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Column Results</em>' containment reference list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getSqlResultSetMapping_ColumnResults() + * @model containment="true" + * @generated + */ + public EList<ColumnResult> getColumnResults() + { + if (columnResults == null) + { + columnResults = new EObjectContainmentEList<ColumnResult>(ColumnResult.class, this, EclipseLinkOrmPackage.SQL_RESULT_SET_MAPPING__COLUMN_RESULTS); + } + return columnResults; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case EclipseLinkOrmPackage.SQL_RESULT_SET_MAPPING__ENTITY_RESULTS: + return ((InternalEList<?>)getEntityResults()).basicRemove(otherEnd, msgs); + case EclipseLinkOrmPackage.SQL_RESULT_SET_MAPPING__COLUMN_RESULTS: + return ((InternalEList<?>)getColumnResults()).basicRemove(otherEnd, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case EclipseLinkOrmPackage.SQL_RESULT_SET_MAPPING__NAME: + return getName(); + case EclipseLinkOrmPackage.SQL_RESULT_SET_MAPPING__ENTITY_RESULTS: + return getEntityResults(); + case EclipseLinkOrmPackage.SQL_RESULT_SET_MAPPING__COLUMN_RESULTS: + return getColumnResults(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case EclipseLinkOrmPackage.SQL_RESULT_SET_MAPPING__NAME: + setName((String)newValue); + return; + case EclipseLinkOrmPackage.SQL_RESULT_SET_MAPPING__ENTITY_RESULTS: + getEntityResults().clear(); + getEntityResults().addAll((Collection<? extends EntityResult>)newValue); + return; + case EclipseLinkOrmPackage.SQL_RESULT_SET_MAPPING__COLUMN_RESULTS: + getColumnResults().clear(); + getColumnResults().addAll((Collection<? extends ColumnResult>)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.SQL_RESULT_SET_MAPPING__NAME: + setName(NAME_EDEFAULT); + return; + case EclipseLinkOrmPackage.SQL_RESULT_SET_MAPPING__ENTITY_RESULTS: + getEntityResults().clear(); + return; + case EclipseLinkOrmPackage.SQL_RESULT_SET_MAPPING__COLUMN_RESULTS: + getColumnResults().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.SQL_RESULT_SET_MAPPING__NAME: + return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name); + case EclipseLinkOrmPackage.SQL_RESULT_SET_MAPPING__ENTITY_RESULTS: + return entityResults != null && !entityResults.isEmpty(); + case EclipseLinkOrmPackage.SQL_RESULT_SET_MAPPING__COLUMN_RESULTS: + return columnResults != null && !columnResults.isEmpty(); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (name: "); + result.append(name); + result.append(')'); + return result.toString(); + } + +} // SqlResultSetMapping diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/TemporalType.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/TemporalType.java new file mode 100644 index 0000000000..c911d3e13c --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/TemporalType.java @@ -0,0 +1,258 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +import org.eclipse.emf.common.util.Enumerator; + +/** + * <!-- begin-user-doc --> + * A representation of the literals of the enumeration '<em><b>Temporal Type</b></em>', + * and utility methods for working with them. + * <!-- end-user-doc --> + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getTemporalType() + * @model + * @generated + */ +public enum TemporalType implements Enumerator +{ + /** + * The '<em><b>DATE</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #DATE_VALUE + * @generated + * @ordered + */ + DATE(0, "DATE", "DATE"), + + /** + * The '<em><b>TIME</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #TIME_VALUE + * @generated + * @ordered + */ + TIME(1, "TIME", "TIME"), + + /** + * The '<em><b>TIMESTAMP</b></em>' literal object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #TIMESTAMP_VALUE + * @generated + * @ordered + */ + TIMESTAMP(2, "TIMESTAMP", "TIMESTAMP"); + + /** + * The '<em><b>DATE</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>DATE</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #DATE + * @model + * @generated + * @ordered + */ + public static final int DATE_VALUE = 0; + + /** + * The '<em><b>TIME</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>TIME</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #TIME + * @model + * @generated + * @ordered + */ + public static final int TIME_VALUE = 1; + + /** + * The '<em><b>TIMESTAMP</b></em>' literal value. + * <!-- begin-user-doc --> + * <p> + * If the meaning of '<em><b>TIMESTAMP</b></em>' literal object isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @see #TIMESTAMP + * @model + * @generated + * @ordered + */ + public static final int TIMESTAMP_VALUE = 2; + + /** + * An array of all the '<em><b>Temporal Type</b></em>' enumerators. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private static final TemporalType[] VALUES_ARRAY = + new TemporalType[] + { + DATE, + TIME, + TIMESTAMP, + }; + + /** + * A public read-only list of all the '<em><b>Temporal Type</b></em>' enumerators. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static final List<TemporalType> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); + + /** + * Returns the '<em><b>Temporal Type</b></em>' literal with the specified literal value. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static TemporalType get(String literal) + { + for (int i = 0; i < VALUES_ARRAY.length; ++i) + { + TemporalType result = VALUES_ARRAY[i]; + if (result.toString().equals(literal)) + { + return result; + } + } + return null; + } + + /** + * Returns the '<em><b>Temporal Type</b></em>' literal with the specified name. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static TemporalType getByName(String name) + { + for (int i = 0; i < VALUES_ARRAY.length; ++i) + { + TemporalType result = VALUES_ARRAY[i]; + if (result.getName().equals(name)) + { + return result; + } + } + return null; + } + + /** + * Returns the '<em><b>Temporal Type</b></em>' literal with the specified integer value. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static TemporalType get(int value) + { + switch (value) + { + case DATE_VALUE: return DATE; + case TIME_VALUE: return TIME; + case TIMESTAMP_VALUE: return TIMESTAMP; + } + return null; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private final int value; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private final String name; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private final String literal; + + /** + * Only this class can construct instances. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private TemporalType(int value, String name, String literal) + { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public int getValue() + { + return value; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getName() + { + return name; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getLiteral() + { + return literal; + } + + /** + * Returns the literal value of the enumerator, which is its string representation. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() + { + return literal; + } + +} //TemporalType diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlAbstractColumn.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlAbstractColumn.java new file mode 100644 index 0000000000..e919711518 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlAbstractColumn.java @@ -0,0 +1,166 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Abstract Column</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAbstractColumn#getInsertable <em>Insertable</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAbstractColumn#getNullable <em>Nullable</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAbstractColumn#getTable <em>Table</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAbstractColumn#getUnique <em>Unique</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAbstractColumn#getUpdatable <em>Updatable</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlAbstractColumn() + * @model kind="class" interface="true" abstract="true" + * @generated + */ +public interface XmlAbstractColumn extends XmlNamedColumn +{ + /** + * Returns the value of the '<em><b>Insertable</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Insertable</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Insertable</em>' attribute. + * @see #setInsertable(Boolean) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlAbstractColumn_Insertable() + * @model dataType="org.eclipse.emf.ecore.xml.type.BooleanObject" + * @generated + */ + Boolean getInsertable(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAbstractColumn#getInsertable <em>Insertable</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Insertable</em>' attribute. + * @see #getInsertable() + * @generated + */ + void setInsertable(Boolean value); + + /** + * Returns the value of the '<em><b>Nullable</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Nullable</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Nullable</em>' attribute. + * @see #setNullable(Boolean) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlAbstractColumn_Nullable() + * @model dataType="org.eclipse.emf.ecore.xml.type.BooleanObject" + * @generated + */ + Boolean getNullable(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAbstractColumn#getNullable <em>Nullable</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Nullable</em>' attribute. + * @see #getNullable() + * @generated + */ + void setNullable(Boolean value); + + /** + * Returns the value of the '<em><b>Table</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Table</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Table</em>' attribute. + * @see #setTable(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlAbstractColumn_Table() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + String getTable(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAbstractColumn#getTable <em>Table</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Table</em>' attribute. + * @see #getTable() + * @generated + */ + void setTable(String value); + + /** + * Returns the value of the '<em><b>Unique</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Unique</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Unique</em>' attribute. + * @see #setUnique(Boolean) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlAbstractColumn_Unique() + * @model dataType="org.eclipse.emf.ecore.xml.type.BooleanObject" + * @generated + */ + Boolean getUnique(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAbstractColumn#getUnique <em>Unique</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Unique</em>' attribute. + * @see #getUnique() + * @generated + */ + void setUnique(Boolean value); + + /** + * Returns the value of the '<em><b>Updatable</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Updatable</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Updatable</em>' attribute. + * @see #setUpdatable(Boolean) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlAbstractColumn_Updatable() + * @model dataType="org.eclipse.emf.ecore.xml.type.BooleanObject" + * @generated + */ + Boolean getUpdatable(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAbstractColumn#getUpdatable <em>Updatable</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Updatable</em>' attribute. + * @see #getUpdatable() + * @generated + */ + void setUpdatable(Boolean value); + +} // XmlAbstractColumn diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlAssociationOverride.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlAssociationOverride.java new file mode 100644 index 0000000000..b1d597e631 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlAssociationOverride.java @@ -0,0 +1,79 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.jpt.core.resource.common.JpaEObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Association Override</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAssociationOverride#getJoinColumns <em>Join Columns</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAssociationOverride#getName <em>Name</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlAssociationOverride() + * @model kind="class" interface="true" abstract="true" + * @extends JpaEObject + * @generated + */ +public interface XmlAssociationOverride extends JpaEObject +{ + /** + * Returns the value of the '<em><b>Join Columns</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlJoinColumn}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Join Columns</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Join Columns</em>' containment reference list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlAssociationOverride_JoinColumns() + * @model containment="true" required="true" + * @generated + */ + EList<XmlJoinColumn> getJoinColumns(); + + /** + * Returns the value of the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Name</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Name</em>' attribute. + * @see #setName(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlAssociationOverride_Name() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" required="true" + * @generated + */ + String getName(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAssociationOverride#getName <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Name</em>' attribute. + * @see #getName() + * @generated + */ + void setName(String value); + +} // XmlAssociationOverride diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlAssociationOverrideImpl.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlAssociationOverrideImpl.java new file mode 100644 index 0000000000..7968780ae9 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlAssociationOverrideImpl.java @@ -0,0 +1,262 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +import org.eclipse.jpt.core.resource.common.AbstractJpaEObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Association Override Impl</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlAssociationOverrideImpl() + * @model kind="class" + * @generated + */ +public class XmlAssociationOverrideImpl extends AbstractJpaEObject implements XmlAssociationOverride +{ + /** + * The cached value of the '{@link #getJoinColumns() <em>Join Columns</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getJoinColumns() + * @generated + * @ordered + */ + protected EList<XmlJoinColumn> joinColumns; + + /** + * The default value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected static final String NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected String name = NAME_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected XmlAssociationOverrideImpl() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.XML_ASSOCIATION_OVERRIDE_IMPL; + } + + /** + * Returns the value of the '<em><b>Join Columns</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlJoinColumn}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Join Columns</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Join Columns</em>' containment reference list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlAssociationOverride_JoinColumns() + * @model containment="true" required="true" + * @generated + */ + public EList<XmlJoinColumn> getJoinColumns() + { + if (joinColumns == null) + { + joinColumns = new EObjectContainmentEList<XmlJoinColumn>(XmlJoinColumn.class, this, EclipseLinkOrmPackage.XML_ASSOCIATION_OVERRIDE_IMPL__JOIN_COLUMNS); + } + return joinColumns; + } + + /** + * Returns the value of the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Name</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Name</em>' attribute. + * @see #setName(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlAssociationOverride_Name() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" required="true" + * @generated + */ + public String getName() + { + return name; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAssociationOverrideImpl#getName <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Name</em>' attribute. + * @see #getName() + * @generated + */ + public void setName(String newName) + { + String oldName = name; + name = newName; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ASSOCIATION_OVERRIDE_IMPL__NAME, oldName, name)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_ASSOCIATION_OVERRIDE_IMPL__JOIN_COLUMNS: + return ((InternalEList<?>)getJoinColumns()).basicRemove(otherEnd, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_ASSOCIATION_OVERRIDE_IMPL__JOIN_COLUMNS: + return getJoinColumns(); + case EclipseLinkOrmPackage.XML_ASSOCIATION_OVERRIDE_IMPL__NAME: + return getName(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_ASSOCIATION_OVERRIDE_IMPL__JOIN_COLUMNS: + getJoinColumns().clear(); + getJoinColumns().addAll((Collection<? extends XmlJoinColumn>)newValue); + return; + case EclipseLinkOrmPackage.XML_ASSOCIATION_OVERRIDE_IMPL__NAME: + setName((String)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_ASSOCIATION_OVERRIDE_IMPL__JOIN_COLUMNS: + getJoinColumns().clear(); + return; + case EclipseLinkOrmPackage.XML_ASSOCIATION_OVERRIDE_IMPL__NAME: + setName(NAME_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_ASSOCIATION_OVERRIDE_IMPL__JOIN_COLUMNS: + return joinColumns != null && !joinColumns.isEmpty(); + case EclipseLinkOrmPackage.XML_ASSOCIATION_OVERRIDE_IMPL__NAME: + return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (name: "); + result.append(name); + result.append(')'); + return result.toString(); + } + +} // XmlAssociationOverrideImpl diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlAttributeMapping.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlAttributeMapping.java new file mode 100644 index 0000000000..777fdd8939 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlAttributeMapping.java @@ -0,0 +1,60 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.jpt.core.resource.common.JpaEObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Attribute Mapping</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAttributeMapping#getName <em>Name</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlAttributeMapping() + * @model kind="class" interface="true" abstract="true" + * @extends JpaEObject + * @generated + */ +public interface XmlAttributeMapping extends JpaEObject +{ + /** + * Returns the value of the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Name</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Name</em>' attribute. + * @see #setName(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlAttributeMapping_Name() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" required="true" + * @generated + */ + String getName(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAttributeMapping#getName <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Name</em>' attribute. + * @see #getName() + * @generated + */ + void setName(String value); + +} // XmlAttributeMapping diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlAttributeOverride.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlAttributeOverride.java new file mode 100644 index 0000000000..21c57c276c --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlAttributeOverride.java @@ -0,0 +1,87 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.jpt.core.resource.common.JpaEObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Attribute Override</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAttributeOverride#getColumn <em>Column</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAttributeOverride#getName <em>Name</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlAttributeOverride() + * @model kind="class" interface="true" abstract="true" + * @extends JpaEObject + * @generated + */ +public interface XmlAttributeOverride extends JpaEObject +{ + /** + * Returns the value of the '<em><b>Column</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Column</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Column</em>' containment reference. + * @see #setColumn(XmlColumn) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlAttributeOverride_Column() + * @model containment="true" required="true" + * @generated + */ + XmlColumn getColumn(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAttributeOverride#getColumn <em>Column</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Column</em>' containment reference. + * @see #getColumn() + * @generated + */ + void setColumn(XmlColumn value); + + /** + * Returns the value of the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Name</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Name</em>' attribute. + * @see #setName(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlAttributeOverride_Name() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" required="true" + * @generated + */ + String getName(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAttributeOverride#getName <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Name</em>' attribute. + * @see #getName() + * @generated + */ + void setName(String value); + +} // XmlAttributeOverride diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlAttributeOverrideImpl.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlAttributeOverrideImpl.java new file mode 100644 index 0000000000..8a7d1dc8d5 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlAttributeOverrideImpl.java @@ -0,0 +1,290 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.jpt.core.resource.common.AbstractJpaEObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Attribute Override Impl</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlAttributeOverrideImpl() + * @model kind="class" + * @generated + */ +public class XmlAttributeOverrideImpl extends AbstractJpaEObject implements XmlAttributeOverride +{ + /** + * The cached value of the '{@link #getColumn() <em>Column</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getColumn() + * @generated + * @ordered + */ + protected XmlColumn column; + + /** + * The default value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected static final String NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected String name = NAME_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected XmlAttributeOverrideImpl() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.XML_ATTRIBUTE_OVERRIDE_IMPL; + } + + /** + * Returns the value of the '<em><b>Column</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Column</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Column</em>' containment reference. + * @see #setColumn(XmlColumn) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlAttributeOverride_Column() + * @model containment="true" required="true" + * @generated + */ + public XmlColumn getColumn() + { + return column; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetColumn(XmlColumn newColumn, NotificationChain msgs) + { + XmlColumn oldColumn = column; + column = newColumn; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ATTRIBUTE_OVERRIDE_IMPL__COLUMN, oldColumn, newColumn); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAttributeOverrideImpl#getColumn <em>Column</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Column</em>' containment reference. + * @see #getColumn() + * @generated + */ + public void setColumn(XmlColumn newColumn) + { + if (newColumn != column) + { + NotificationChain msgs = null; + if (column != null) + msgs = ((InternalEObject)column).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_ATTRIBUTE_OVERRIDE_IMPL__COLUMN, null, msgs); + if (newColumn != null) + msgs = ((InternalEObject)newColumn).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_ATTRIBUTE_OVERRIDE_IMPL__COLUMN, null, msgs); + msgs = basicSetColumn(newColumn, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ATTRIBUTE_OVERRIDE_IMPL__COLUMN, newColumn, newColumn)); + } + + /** + * Returns the value of the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Name</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Name</em>' attribute. + * @see #setName(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlAttributeOverride_Name() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" required="true" + * @generated + */ + public String getName() + { + return name; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAttributeOverrideImpl#getName <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Name</em>' attribute. + * @see #getName() + * @generated + */ + public void setName(String newName) + { + String oldName = name; + name = newName; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ATTRIBUTE_OVERRIDE_IMPL__NAME, oldName, name)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_ATTRIBUTE_OVERRIDE_IMPL__COLUMN: + return basicSetColumn(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_ATTRIBUTE_OVERRIDE_IMPL__COLUMN: + return getColumn(); + case EclipseLinkOrmPackage.XML_ATTRIBUTE_OVERRIDE_IMPL__NAME: + return getName(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_ATTRIBUTE_OVERRIDE_IMPL__COLUMN: + setColumn((XmlColumn)newValue); + return; + case EclipseLinkOrmPackage.XML_ATTRIBUTE_OVERRIDE_IMPL__NAME: + setName((String)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_ATTRIBUTE_OVERRIDE_IMPL__COLUMN: + setColumn((XmlColumn)null); + return; + case EclipseLinkOrmPackage.XML_ATTRIBUTE_OVERRIDE_IMPL__NAME: + setName(NAME_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_ATTRIBUTE_OVERRIDE_IMPL__COLUMN: + return column != null; + case EclipseLinkOrmPackage.XML_ATTRIBUTE_OVERRIDE_IMPL__NAME: + return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (name: "); + result.append(name); + result.append(')'); + return result.toString(); + } + +} // XmlAttributeOverrideImpl diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlBaseTable.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlBaseTable.java new file mode 100644 index 0000000000..d80febefa5 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlBaseTable.java @@ -0,0 +1,133 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.jpt.core.resource.common.JpaEObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Base Table</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBaseTable#getName <em>Name</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBaseTable#getCatalog <em>Catalog</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBaseTable#getSchema <em>Schema</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBaseTable#getUniqueConstraints <em>Unique Constraints</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlBaseTable() + * @model kind="class" interface="true" abstract="true" + * @extends JpaEObject + * @generated + */ +public interface XmlBaseTable extends JpaEObject +{ + /** + * Returns the value of the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Name</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Name</em>' attribute. + * @see #setName(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlBaseTable_Name() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + String getName(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBaseTable#getName <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Name</em>' attribute. + * @see #getName() + * @generated + */ + void setName(String value); + + /** + * Returns the value of the '<em><b>Catalog</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Catalog</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Catalog</em>' attribute. + * @see #setCatalog(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlBaseTable_Catalog() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + String getCatalog(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBaseTable#getCatalog <em>Catalog</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Catalog</em>' attribute. + * @see #getCatalog() + * @generated + */ + void setCatalog(String value); + + /** + * Returns the value of the '<em><b>Schema</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Schema</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Schema</em>' attribute. + * @see #setSchema(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlBaseTable_Schema() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + String getSchema(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBaseTable#getSchema <em>Schema</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Schema</em>' attribute. + * @see #getSchema() + * @generated + */ + void setSchema(String value); + + /** + * Returns the value of the '<em><b>Unique Constraints</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlUniqueConstraint}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Unique Constraints</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Unique Constraints</em>' containment reference list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlBaseTable_UniqueConstraints() + * @model containment="true" + * @generated + */ + EList<XmlUniqueConstraint> getUniqueConstraints(); + +} // XmlBaseTable diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlBasic.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlBasic.java new file mode 100644 index 0000000000..7a5db618fb --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlBasic.java @@ -0,0 +1,176 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Basic</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBasic#getFetch <em>Fetch</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBasic#getOptional <em>Optional</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBasic#isLob <em>Lob</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBasic#getTemporal <em>Temporal</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBasic#getEnumerated <em>Enumerated</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlBasic() + * @model kind="class" interface="true" abstract="true" + * @generated + */ +public interface XmlBasic extends XmlAttributeMapping, ColumnMapping +{ + /** + * Returns the value of the '<em><b>Fetch</b></em>' attribute. + * The default value is <code>"LAZY"</code>. + * The literals are from the enumeration {@link org.eclipse.jpt.eclipselink.core.resource.elorm.FetchType}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Fetch</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Fetch</em>' attribute. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.FetchType + * @see #setFetch(FetchType) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlBasic_Fetch() + * @model default="LAZY" + * @generated + */ + FetchType getFetch(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBasic#getFetch <em>Fetch</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Fetch</em>' attribute. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.FetchType + * @see #getFetch() + * @generated + */ + void setFetch(FetchType value); + + /** + * Returns the value of the '<em><b>Optional</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Optional</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Optional</em>' attribute. + * @see #setOptional(Boolean) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlBasic_Optional() + * @model dataType="org.eclipse.emf.ecore.xml.type.BooleanObject" + * @generated + */ + Boolean getOptional(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBasic#getOptional <em>Optional</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Optional</em>' attribute. + * @see #getOptional() + * @generated + */ + void setOptional(Boolean value); + + /** + * Returns the value of the '<em><b>Lob</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Lob</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Lob</em>' attribute. + * @see #setLob(boolean) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlBasic_Lob() + * @model dataType="org.eclipse.emf.ecore.xml.type.Boolean" + * @generated + */ + boolean isLob(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBasic#isLob <em>Lob</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Lob</em>' attribute. + * @see #isLob() + * @generated + */ + void setLob(boolean value); + + /** + * Returns the value of the '<em><b>Temporal</b></em>' attribute. + * The literals are from the enumeration {@link org.eclipse.jpt.eclipselink.core.resource.elorm.TemporalType}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Temporal</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Temporal</em>' attribute. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.TemporalType + * @see #setTemporal(TemporalType) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlBasic_Temporal() + * @model + * @generated + */ + TemporalType getTemporal(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBasic#getTemporal <em>Temporal</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Temporal</em>' attribute. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.TemporalType + * @see #getTemporal() + * @generated + */ + void setTemporal(TemporalType value); + + /** + * Returns the value of the '<em><b>Enumerated</b></em>' attribute. + * The literals are from the enumeration {@link org.eclipse.jpt.eclipselink.core.resource.elorm.EnumType}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Enumerated</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Enumerated</em>' attribute. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EnumType + * @see #setEnumerated(EnumType) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlBasic_Enumerated() + * @model + * @generated + */ + EnumType getEnumerated(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBasic#getEnumerated <em>Enumerated</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Enumerated</em>' attribute. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EnumType + * @see #getEnumerated() + * @generated + */ + void setEnumerated(EnumType value); + +} // XmlBasic diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlBasicImpl.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlBasicImpl.java new file mode 100644 index 0000000000..ca481a2637 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlBasicImpl.java @@ -0,0 +1,628 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Basic Impl</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlBasicImpl() + * @model kind="class" + * @generated + */ +public class XmlBasicImpl extends AbstractXmlAttributeMapping implements XmlBasic +{ + /** + * The cached value of the '{@link #getColumn() <em>Column</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getColumn() + * @generated + * @ordered + */ + protected XmlColumn column; + + /** + * The default value of the '{@link #getFetch() <em>Fetch</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getFetch() + * @generated + * @ordered + */ + protected static final FetchType FETCH_EDEFAULT = FetchType.LAZY; + + /** + * The cached value of the '{@link #getFetch() <em>Fetch</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getFetch() + * @generated + * @ordered + */ + protected FetchType fetch = FETCH_EDEFAULT; + + /** + * The default value of the '{@link #getOptional() <em>Optional</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getOptional() + * @generated + * @ordered + */ + protected static final Boolean OPTIONAL_EDEFAULT = null; + + /** + * The cached value of the '{@link #getOptional() <em>Optional</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getOptional() + * @generated + * @ordered + */ + protected Boolean optional = OPTIONAL_EDEFAULT; + + /** + * The default value of the '{@link #isLob() <em>Lob</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isLob() + * @generated + * @ordered + */ + protected static final boolean LOB_EDEFAULT = false; + + /** + * The cached value of the '{@link #isLob() <em>Lob</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isLob() + * @generated + * @ordered + */ + protected boolean lob = LOB_EDEFAULT; + + /** + * The default value of the '{@link #getTemporal() <em>Temporal</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTemporal() + * @generated + * @ordered + */ + protected static final TemporalType TEMPORAL_EDEFAULT = TemporalType.DATE; + + /** + * The cached value of the '{@link #getTemporal() <em>Temporal</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTemporal() + * @generated + * @ordered + */ + protected TemporalType temporal = TEMPORAL_EDEFAULT; + + /** + * The default value of the '{@link #getEnumerated() <em>Enumerated</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getEnumerated() + * @generated + * @ordered + */ + protected static final EnumType ENUMERATED_EDEFAULT = EnumType.ORDINAL; + + /** + * The cached value of the '{@link #getEnumerated() <em>Enumerated</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getEnumerated() + * @generated + * @ordered + */ + protected EnumType enumerated = ENUMERATED_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected XmlBasicImpl() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.XML_BASIC_IMPL; + } + + /** + * Returns the value of the '<em><b>Column</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Column</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Column</em>' containment reference. + * @see #setColumn(XmlColumn) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getColumnMapping_Column() + * @model containment="true" + * @generated + */ + public XmlColumn getColumn() + { + return column; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetColumn(XmlColumn newColumn, NotificationChain msgs) + { + XmlColumn oldColumn = column; + column = newColumn; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_BASIC_IMPL__COLUMN, oldColumn, newColumn); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBasicImpl#getColumn <em>Column</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Column</em>' containment reference. + * @see #getColumn() + * @generated + */ + public void setColumn(XmlColumn newColumn) + { + if (newColumn != column) + { + NotificationChain msgs = null; + if (column != null) + msgs = ((InternalEObject)column).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_BASIC_IMPL__COLUMN, null, msgs); + if (newColumn != null) + msgs = ((InternalEObject)newColumn).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_BASIC_IMPL__COLUMN, null, msgs); + msgs = basicSetColumn(newColumn, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_BASIC_IMPL__COLUMN, newColumn, newColumn)); + } + + /** + * Returns the value of the '<em><b>Fetch</b></em>' attribute. + * The default value is <code>"LAZY"</code>. + * The literals are from the enumeration {@link org.eclipse.jpt.eclipselink.core.resource.elorm.FetchType}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Fetch</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Fetch</em>' attribute. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.FetchType + * @see #setFetch(FetchType) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlBasic_Fetch() + * @model default="LAZY" + * @generated + */ + public FetchType getFetch() + { + return fetch; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBasicImpl#getFetch <em>Fetch</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Fetch</em>' attribute. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.FetchType + * @see #getFetch() + * @generated + */ + public void setFetch(FetchType newFetch) + { + FetchType oldFetch = fetch; + fetch = newFetch == null ? FETCH_EDEFAULT : newFetch; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_BASIC_IMPL__FETCH, oldFetch, fetch)); + } + + /** + * Returns the value of the '<em><b>Optional</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Optional</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Optional</em>' attribute. + * @see #setOptional(Boolean) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlBasic_Optional() + * @model dataType="org.eclipse.emf.ecore.xml.type.BooleanObject" + * @generated + */ + public Boolean getOptional() + { + return optional; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBasicImpl#getOptional <em>Optional</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Optional</em>' attribute. + * @see #getOptional() + * @generated + */ + public void setOptional(Boolean newOptional) + { + Boolean oldOptional = optional; + optional = newOptional; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_BASIC_IMPL__OPTIONAL, oldOptional, optional)); + } + + /** + * Returns the value of the '<em><b>Lob</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Lob</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Lob</em>' attribute. + * @see #setLob(boolean) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlBasic_Lob() + * @model dataType="org.eclipse.emf.ecore.xml.type.Boolean" + * @generated + */ + public boolean isLob() + { + return lob; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBasicImpl#isLob <em>Lob</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Lob</em>' attribute. + * @see #isLob() + * @generated + */ + public void setLob(boolean newLob) + { + boolean oldLob = lob; + lob = newLob; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_BASIC_IMPL__LOB, oldLob, lob)); + } + + /** + * Returns the value of the '<em><b>Temporal</b></em>' attribute. + * The literals are from the enumeration {@link org.eclipse.jpt.eclipselink.core.resource.elorm.TemporalType}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Temporal</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Temporal</em>' attribute. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.TemporalType + * @see #setTemporal(TemporalType) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlBasic_Temporal() + * @model + * @generated + */ + public TemporalType getTemporal() + { + return temporal; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBasicImpl#getTemporal <em>Temporal</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Temporal</em>' attribute. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.TemporalType + * @see #getTemporal() + * @generated + */ + public void setTemporal(TemporalType newTemporal) + { + TemporalType oldTemporal = temporal; + temporal = newTemporal == null ? TEMPORAL_EDEFAULT : newTemporal; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_BASIC_IMPL__TEMPORAL, oldTemporal, temporal)); + } + + /** + * Returns the value of the '<em><b>Enumerated</b></em>' attribute. + * The literals are from the enumeration {@link org.eclipse.jpt.eclipselink.core.resource.elorm.EnumType}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Enumerated</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Enumerated</em>' attribute. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EnumType + * @see #setEnumerated(EnumType) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlBasic_Enumerated() + * @model + * @generated + */ + public EnumType getEnumerated() + { + return enumerated; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlBasicImpl#getEnumerated <em>Enumerated</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Enumerated</em>' attribute. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EnumType + * @see #getEnumerated() + * @generated + */ + public void setEnumerated(EnumType newEnumerated) + { + EnumType oldEnumerated = enumerated; + enumerated = newEnumerated == null ? ENUMERATED_EDEFAULT : newEnumerated; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_BASIC_IMPL__ENUMERATED, oldEnumerated, enumerated)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_BASIC_IMPL__COLUMN: + return basicSetColumn(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_BASIC_IMPL__COLUMN: + return getColumn(); + case EclipseLinkOrmPackage.XML_BASIC_IMPL__FETCH: + return getFetch(); + case EclipseLinkOrmPackage.XML_BASIC_IMPL__OPTIONAL: + return getOptional(); + case EclipseLinkOrmPackage.XML_BASIC_IMPL__LOB: + return isLob() ? Boolean.TRUE : Boolean.FALSE; + case EclipseLinkOrmPackage.XML_BASIC_IMPL__TEMPORAL: + return getTemporal(); + case EclipseLinkOrmPackage.XML_BASIC_IMPL__ENUMERATED: + return getEnumerated(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_BASIC_IMPL__COLUMN: + setColumn((XmlColumn)newValue); + return; + case EclipseLinkOrmPackage.XML_BASIC_IMPL__FETCH: + setFetch((FetchType)newValue); + return; + case EclipseLinkOrmPackage.XML_BASIC_IMPL__OPTIONAL: + setOptional((Boolean)newValue); + return; + case EclipseLinkOrmPackage.XML_BASIC_IMPL__LOB: + setLob(((Boolean)newValue).booleanValue()); + return; + case EclipseLinkOrmPackage.XML_BASIC_IMPL__TEMPORAL: + setTemporal((TemporalType)newValue); + return; + case EclipseLinkOrmPackage.XML_BASIC_IMPL__ENUMERATED: + setEnumerated((EnumType)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_BASIC_IMPL__COLUMN: + setColumn((XmlColumn)null); + return; + case EclipseLinkOrmPackage.XML_BASIC_IMPL__FETCH: + setFetch(FETCH_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_BASIC_IMPL__OPTIONAL: + setOptional(OPTIONAL_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_BASIC_IMPL__LOB: + setLob(LOB_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_BASIC_IMPL__TEMPORAL: + setTemporal(TEMPORAL_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_BASIC_IMPL__ENUMERATED: + setEnumerated(ENUMERATED_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_BASIC_IMPL__COLUMN: + return column != null; + case EclipseLinkOrmPackage.XML_BASIC_IMPL__FETCH: + return fetch != FETCH_EDEFAULT; + case EclipseLinkOrmPackage.XML_BASIC_IMPL__OPTIONAL: + return OPTIONAL_EDEFAULT == null ? optional != null : !OPTIONAL_EDEFAULT.equals(optional); + case EclipseLinkOrmPackage.XML_BASIC_IMPL__LOB: + return lob != LOB_EDEFAULT; + case EclipseLinkOrmPackage.XML_BASIC_IMPL__TEMPORAL: + return temporal != TEMPORAL_EDEFAULT; + case EclipseLinkOrmPackage.XML_BASIC_IMPL__ENUMERATED: + return enumerated != ENUMERATED_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) + { + if (baseClass == ColumnMapping.class) + { + switch (derivedFeatureID) + { + case EclipseLinkOrmPackage.XML_BASIC_IMPL__COLUMN: return EclipseLinkOrmPackage.COLUMN_MAPPING__COLUMN; + default: return -1; + } + } + if (baseClass == XmlBasic.class) + { + switch (derivedFeatureID) + { + case EclipseLinkOrmPackage.XML_BASIC_IMPL__FETCH: return EclipseLinkOrmPackage.XML_BASIC__FETCH; + case EclipseLinkOrmPackage.XML_BASIC_IMPL__OPTIONAL: return EclipseLinkOrmPackage.XML_BASIC__OPTIONAL; + case EclipseLinkOrmPackage.XML_BASIC_IMPL__LOB: return EclipseLinkOrmPackage.XML_BASIC__LOB; + case EclipseLinkOrmPackage.XML_BASIC_IMPL__TEMPORAL: return EclipseLinkOrmPackage.XML_BASIC__TEMPORAL; + case EclipseLinkOrmPackage.XML_BASIC_IMPL__ENUMERATED: return EclipseLinkOrmPackage.XML_BASIC__ENUMERATED; + default: return -1; + } + } + return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) + { + if (baseClass == ColumnMapping.class) + { + switch (baseFeatureID) + { + case EclipseLinkOrmPackage.COLUMN_MAPPING__COLUMN: return EclipseLinkOrmPackage.XML_BASIC_IMPL__COLUMN; + default: return -1; + } + } + if (baseClass == XmlBasic.class) + { + switch (baseFeatureID) + { + case EclipseLinkOrmPackage.XML_BASIC__FETCH: return EclipseLinkOrmPackage.XML_BASIC_IMPL__FETCH; + case EclipseLinkOrmPackage.XML_BASIC__OPTIONAL: return EclipseLinkOrmPackage.XML_BASIC_IMPL__OPTIONAL; + case EclipseLinkOrmPackage.XML_BASIC__LOB: return EclipseLinkOrmPackage.XML_BASIC_IMPL__LOB; + case EclipseLinkOrmPackage.XML_BASIC__TEMPORAL: return EclipseLinkOrmPackage.XML_BASIC_IMPL__TEMPORAL; + case EclipseLinkOrmPackage.XML_BASIC__ENUMERATED: return EclipseLinkOrmPackage.XML_BASIC_IMPL__ENUMERATED; + default: return -1; + } + } + return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (fetch: "); + result.append(fetch); + result.append(", optional: "); + result.append(optional); + result.append(", lob: "); + result.append(lob); + result.append(", temporal: "); + result.append(temporal); + result.append(", enumerated: "); + result.append(enumerated); + result.append(')'); + return result.toString(); + } + +} // XmlBasicImpl diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlColumn.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlColumn.java new file mode 100644 index 0000000000..61533330c4 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlColumn.java @@ -0,0 +1,112 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Column</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlColumn#getLength <em>Length</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlColumn#getPrecision <em>Precision</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlColumn#getScale <em>Scale</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlColumn() + * @model kind="class" interface="true" abstract="true" + * @generated + */ +public interface XmlColumn extends XmlAbstractColumn +{ + /** + * Returns the value of the '<em><b>Length</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Length</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Length</em>' attribute. + * @see #setLength(Integer) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlColumn_Length() + * @model dataType="org.eclipse.emf.ecore.xml.type.IntObject" + * @generated + */ + Integer getLength(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlColumn#getLength <em>Length</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Length</em>' attribute. + * @see #getLength() + * @generated + */ + void setLength(Integer value); + + /** + * Returns the value of the '<em><b>Precision</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Precision</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Precision</em>' attribute. + * @see #setPrecision(Integer) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlColumn_Precision() + * @model dataType="org.eclipse.emf.ecore.xml.type.IntObject" + * @generated + */ + Integer getPrecision(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlColumn#getPrecision <em>Precision</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Precision</em>' attribute. + * @see #getPrecision() + * @generated + */ + void setPrecision(Integer value); + + /** + * Returns the value of the '<em><b>Scale</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Scale</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Scale</em>' attribute. + * @see #setScale(Integer) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlColumn_Scale() + * @model dataType="org.eclipse.emf.ecore.xml.type.IntObject" + * @generated + */ + Integer getScale(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlColumn#getScale <em>Scale</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Scale</em>' attribute. + * @see #getScale() + * @generated + */ + void setScale(Integer value); + +} // XmlColumn diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlColumnImpl.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlColumnImpl.java new file mode 100644 index 0000000000..01d26ae51d --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlColumnImpl.java @@ -0,0 +1,366 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Column Impl</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlColumnImpl() + * @model kind="class" + * @generated + */ +public class XmlColumnImpl extends AbstractXmlAbstractColumn implements XmlColumn +{ + /** + * The default value of the '{@link #getLength() <em>Length</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getLength() + * @generated + * @ordered + */ + protected static final Integer LENGTH_EDEFAULT = null; + + /** + * The cached value of the '{@link #getLength() <em>Length</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getLength() + * @generated + * @ordered + */ + protected Integer length = LENGTH_EDEFAULT; + + /** + * The default value of the '{@link #getPrecision() <em>Precision</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPrecision() + * @generated + * @ordered + */ + protected static final Integer PRECISION_EDEFAULT = null; + + /** + * The cached value of the '{@link #getPrecision() <em>Precision</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPrecision() + * @generated + * @ordered + */ + protected Integer precision = PRECISION_EDEFAULT; + + /** + * The default value of the '{@link #getScale() <em>Scale</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getScale() + * @generated + * @ordered + */ + protected static final Integer SCALE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getScale() <em>Scale</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getScale() + * @generated + * @ordered + */ + protected Integer scale = SCALE_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected XmlColumnImpl() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.XML_COLUMN_IMPL; + } + + /** + * Returns the value of the '<em><b>Length</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Length</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Length</em>' attribute. + * @see #setLength(Integer) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlColumn_Length() + * @model dataType="org.eclipse.emf.ecore.xml.type.IntObject" + * @generated + */ + public Integer getLength() + { + return length; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlColumnImpl#getLength <em>Length</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Length</em>' attribute. + * @see #getLength() + * @generated + */ + public void setLength(Integer newLength) + { + Integer oldLength = length; + length = newLength; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_COLUMN_IMPL__LENGTH, oldLength, length)); + } + + /** + * Returns the value of the '<em><b>Precision</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Precision</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Precision</em>' attribute. + * @see #setPrecision(Integer) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlColumn_Precision() + * @model dataType="org.eclipse.emf.ecore.xml.type.IntObject" + * @generated + */ + public Integer getPrecision() + { + return precision; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlColumnImpl#getPrecision <em>Precision</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Precision</em>' attribute. + * @see #getPrecision() + * @generated + */ + public void setPrecision(Integer newPrecision) + { + Integer oldPrecision = precision; + precision = newPrecision; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_COLUMN_IMPL__PRECISION, oldPrecision, precision)); + } + + /** + * Returns the value of the '<em><b>Scale</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Scale</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Scale</em>' attribute. + * @see #setScale(Integer) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlColumn_Scale() + * @model dataType="org.eclipse.emf.ecore.xml.type.IntObject" + * @generated + */ + public Integer getScale() + { + return scale; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlColumnImpl#getScale <em>Scale</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Scale</em>' attribute. + * @see #getScale() + * @generated + */ + public void setScale(Integer newScale) + { + Integer oldScale = scale; + scale = newScale; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_COLUMN_IMPL__SCALE, oldScale, scale)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_COLUMN_IMPL__LENGTH: + return getLength(); + case EclipseLinkOrmPackage.XML_COLUMN_IMPL__PRECISION: + return getPrecision(); + case EclipseLinkOrmPackage.XML_COLUMN_IMPL__SCALE: + return getScale(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_COLUMN_IMPL__LENGTH: + setLength((Integer)newValue); + return; + case EclipseLinkOrmPackage.XML_COLUMN_IMPL__PRECISION: + setPrecision((Integer)newValue); + return; + case EclipseLinkOrmPackage.XML_COLUMN_IMPL__SCALE: + setScale((Integer)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_COLUMN_IMPL__LENGTH: + setLength(LENGTH_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_COLUMN_IMPL__PRECISION: + setPrecision(PRECISION_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_COLUMN_IMPL__SCALE: + setScale(SCALE_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_COLUMN_IMPL__LENGTH: + return LENGTH_EDEFAULT == null ? length != null : !LENGTH_EDEFAULT.equals(length); + case EclipseLinkOrmPackage.XML_COLUMN_IMPL__PRECISION: + return PRECISION_EDEFAULT == null ? precision != null : !PRECISION_EDEFAULT.equals(precision); + case EclipseLinkOrmPackage.XML_COLUMN_IMPL__SCALE: + return SCALE_EDEFAULT == null ? scale != null : !SCALE_EDEFAULT.equals(scale); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) + { + if (baseClass == XmlColumn.class) + { + switch (derivedFeatureID) + { + case EclipseLinkOrmPackage.XML_COLUMN_IMPL__LENGTH: return EclipseLinkOrmPackage.XML_COLUMN__LENGTH; + case EclipseLinkOrmPackage.XML_COLUMN_IMPL__PRECISION: return EclipseLinkOrmPackage.XML_COLUMN__PRECISION; + case EclipseLinkOrmPackage.XML_COLUMN_IMPL__SCALE: return EclipseLinkOrmPackage.XML_COLUMN__SCALE; + default: return -1; + } + } + return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) + { + if (baseClass == XmlColumn.class) + { + switch (baseFeatureID) + { + case EclipseLinkOrmPackage.XML_COLUMN__LENGTH: return EclipseLinkOrmPackage.XML_COLUMN_IMPL__LENGTH; + case EclipseLinkOrmPackage.XML_COLUMN__PRECISION: return EclipseLinkOrmPackage.XML_COLUMN_IMPL__PRECISION; + case EclipseLinkOrmPackage.XML_COLUMN__SCALE: return EclipseLinkOrmPackage.XML_COLUMN_IMPL__SCALE; + default: return -1; + } + } + return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (length: "); + result.append(length); + result.append(", precision: "); + result.append(precision); + result.append(", scale: "); + result.append(scale); + result.append(')'); + return result.toString(); + } + +} // XmlColumnImpl diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlDiscriminatorColumn.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlDiscriminatorColumn.java new file mode 100644 index 0000000000..07ca58a687 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlDiscriminatorColumn.java @@ -0,0 +1,268 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Discriminator Column</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlDiscriminatorColumn#getDiscriminatorType <em>Discriminator Type</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlDiscriminatorColumn#getLength <em>Length</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlDiscriminatorColumn() + * @model kind="class" + * @generated + */ +public class XmlDiscriminatorColumn extends AbstractXmlNamedColumn +{ + /** + * The default value of the '{@link #getDiscriminatorType() <em>Discriminator Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDiscriminatorType() + * @generated + * @ordered + */ + protected static final DiscriminatorType DISCRIMINATOR_TYPE_EDEFAULT = DiscriminatorType.STRING; + + /** + * The cached value of the '{@link #getDiscriminatorType() <em>Discriminator Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDiscriminatorType() + * @generated + * @ordered + */ + protected DiscriminatorType discriminatorType = DISCRIMINATOR_TYPE_EDEFAULT; + + /** + * The default value of the '{@link #getLength() <em>Length</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getLength() + * @generated + * @ordered + */ + protected static final Integer LENGTH_EDEFAULT = null; + + /** + * The cached value of the '{@link #getLength() <em>Length</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getLength() + * @generated + * @ordered + */ + protected Integer length = LENGTH_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected XmlDiscriminatorColumn() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.XML_DISCRIMINATOR_COLUMN; + } + + /** + * Returns the value of the '<em><b>Discriminator Type</b></em>' attribute. + * The default value is <code>"STRING"</code>. + * The literals are from the enumeration {@link org.eclipse.jpt.eclipselink.core.resource.elorm.DiscriminatorType}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Discriminator Type</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Discriminator Type</em>' attribute. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.DiscriminatorType + * @see #setDiscriminatorType(DiscriminatorType) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlDiscriminatorColumn_DiscriminatorType() + * @model default="STRING" + * @generated + */ + public DiscriminatorType getDiscriminatorType() + { + return discriminatorType; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlDiscriminatorColumn#getDiscriminatorType <em>Discriminator Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Discriminator Type</em>' attribute. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.DiscriminatorType + * @see #getDiscriminatorType() + * @generated + */ + public void setDiscriminatorType(DiscriminatorType newDiscriminatorType) + { + DiscriminatorType oldDiscriminatorType = discriminatorType; + discriminatorType = newDiscriminatorType == null ? DISCRIMINATOR_TYPE_EDEFAULT : newDiscriminatorType; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_DISCRIMINATOR_COLUMN__DISCRIMINATOR_TYPE, oldDiscriminatorType, discriminatorType)); + } + + /** + * Returns the value of the '<em><b>Length</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Length</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Length</em>' attribute. + * @see #setLength(Integer) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlDiscriminatorColumn_Length() + * @model dataType="org.eclipse.emf.ecore.xml.type.IntObject" + * @generated + */ + public Integer getLength() + { + return length; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlDiscriminatorColumn#getLength <em>Length</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Length</em>' attribute. + * @see #getLength() + * @generated + */ + public void setLength(Integer newLength) + { + Integer oldLength = length; + length = newLength; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_DISCRIMINATOR_COLUMN__LENGTH, oldLength, length)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_DISCRIMINATOR_COLUMN__DISCRIMINATOR_TYPE: + return getDiscriminatorType(); + case EclipseLinkOrmPackage.XML_DISCRIMINATOR_COLUMN__LENGTH: + return getLength(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_DISCRIMINATOR_COLUMN__DISCRIMINATOR_TYPE: + setDiscriminatorType((DiscriminatorType)newValue); + return; + case EclipseLinkOrmPackage.XML_DISCRIMINATOR_COLUMN__LENGTH: + setLength((Integer)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_DISCRIMINATOR_COLUMN__DISCRIMINATOR_TYPE: + setDiscriminatorType(DISCRIMINATOR_TYPE_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_DISCRIMINATOR_COLUMN__LENGTH: + setLength(LENGTH_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_DISCRIMINATOR_COLUMN__DISCRIMINATOR_TYPE: + return discriminatorType != DISCRIMINATOR_TYPE_EDEFAULT; + case EclipseLinkOrmPackage.XML_DISCRIMINATOR_COLUMN__LENGTH: + return LENGTH_EDEFAULT == null ? length != null : !LENGTH_EDEFAULT.equals(length); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (discriminatorType: "); + result.append(discriminatorType); + result.append(", length: "); + result.append(length); + result.append(')'); + return result.toString(); + } + +} // XmlDiscriminatorColumn diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlEmbeddable.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlEmbeddable.java new file mode 100644 index 0000000000..a73ee411cb --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlEmbeddable.java @@ -0,0 +1,48 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.emf.ecore.EClass; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Embeddable</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEmbeddable() + * @model kind="class" + * @generated + */ +public class XmlEmbeddable extends AbstractXmlTypeMapping +{ + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected XmlEmbeddable() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.XML_EMBEDDABLE; + } + +} // XmlEmbeddable diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlEmbedded.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlEmbedded.java new file mode 100644 index 0000000000..c7284a825b --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlEmbedded.java @@ -0,0 +1,26 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Embedded</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEmbedded() + * @model kind="class" interface="true" abstract="true" + * @generated + */ +public interface XmlEmbedded extends BaseXmlEmbedded +{ +} // XmlEmbedded diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlEmbeddedId.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlEmbeddedId.java new file mode 100644 index 0000000000..c1c141ee07 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlEmbeddedId.java @@ -0,0 +1,26 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Embedded Id</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEmbeddedId() + * @model kind="class" interface="true" abstract="true" + * @generated + */ +public interface XmlEmbeddedId extends XmlAttributeMapping, BaseXmlEmbedded +{ +} // XmlEmbeddedId diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlEmbeddedIdImpl.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlEmbeddedIdImpl.java new file mode 100644 index 0000000000..41586195a7 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlEmbeddedIdImpl.java @@ -0,0 +1,227 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Embedded Id Impl</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEmbeddedIdImpl() + * @model kind="class" + * @generated + */ +public class XmlEmbeddedIdImpl extends AbstractXmlAttributeMapping implements XmlEmbeddedId +{ + /** + * The cached value of the '{@link #getAttributeOverrides() <em>Attribute Overrides</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getAttributeOverrides() + * @generated + * @ordered + */ + protected EList<XmlAttributeOverride> attributeOverrides; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected XmlEmbeddedIdImpl() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.XML_EMBEDDED_ID_IMPL; + } + + /** + * Returns the value of the '<em><b>Attribute Overrides</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAttributeOverride}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Attribute Overrides</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Attribute Overrides</em>' containment reference list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getBaseXmlEmbedded_AttributeOverrides() + * @model containment="true" + * @generated + */ + public EList<XmlAttributeOverride> getAttributeOverrides() + { + if (attributeOverrides == null) + { + attributeOverrides = new EObjectContainmentEList<XmlAttributeOverride>(XmlAttributeOverride.class, this, EclipseLinkOrmPackage.XML_EMBEDDED_ID_IMPL__ATTRIBUTE_OVERRIDES); + } + return attributeOverrides; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_EMBEDDED_ID_IMPL__ATTRIBUTE_OVERRIDES: + return ((InternalEList<?>)getAttributeOverrides()).basicRemove(otherEnd, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_EMBEDDED_ID_IMPL__ATTRIBUTE_OVERRIDES: + return getAttributeOverrides(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_EMBEDDED_ID_IMPL__ATTRIBUTE_OVERRIDES: + getAttributeOverrides().clear(); + getAttributeOverrides().addAll((Collection<? extends XmlAttributeOverride>)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_EMBEDDED_ID_IMPL__ATTRIBUTE_OVERRIDES: + getAttributeOverrides().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_EMBEDDED_ID_IMPL__ATTRIBUTE_OVERRIDES: + return attributeOverrides != null && !attributeOverrides.isEmpty(); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) + { + if (baseClass == BaseXmlEmbedded.class) + { + switch (derivedFeatureID) + { + case EclipseLinkOrmPackage.XML_EMBEDDED_ID_IMPL__ATTRIBUTE_OVERRIDES: return EclipseLinkOrmPackage.BASE_XML_EMBEDDED__ATTRIBUTE_OVERRIDES; + default: return -1; + } + } + if (baseClass == XmlEmbeddedId.class) + { + switch (derivedFeatureID) + { + default: return -1; + } + } + return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) + { + if (baseClass == BaseXmlEmbedded.class) + { + switch (baseFeatureID) + { + case EclipseLinkOrmPackage.BASE_XML_EMBEDDED__ATTRIBUTE_OVERRIDES: return EclipseLinkOrmPackage.XML_EMBEDDED_ID_IMPL__ATTRIBUTE_OVERRIDES; + default: return -1; + } + } + if (baseClass == XmlEmbeddedId.class) + { + switch (baseFeatureID) + { + default: return -1; + } + } + return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass); + } + +} // XmlEmbeddedIdImpl diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlEmbeddedImpl.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlEmbeddedImpl.java new file mode 100644 index 0000000000..6b8103beef --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlEmbeddedImpl.java @@ -0,0 +1,227 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Embedded Impl</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEmbeddedImpl() + * @model kind="class" + * @generated + */ +public class XmlEmbeddedImpl extends AbstractXmlAttributeMapping implements XmlEmbedded +{ + /** + * The cached value of the '{@link #getAttributeOverrides() <em>Attribute Overrides</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getAttributeOverrides() + * @generated + * @ordered + */ + protected EList<XmlAttributeOverride> attributeOverrides; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected XmlEmbeddedImpl() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.XML_EMBEDDED_IMPL; + } + + /** + * Returns the value of the '<em><b>Attribute Overrides</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAttributeOverride}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Attribute Overrides</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Attribute Overrides</em>' containment reference list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getBaseXmlEmbedded_AttributeOverrides() + * @model containment="true" + * @generated + */ + public EList<XmlAttributeOverride> getAttributeOverrides() + { + if (attributeOverrides == null) + { + attributeOverrides = new EObjectContainmentEList<XmlAttributeOverride>(XmlAttributeOverride.class, this, EclipseLinkOrmPackage.XML_EMBEDDED_IMPL__ATTRIBUTE_OVERRIDES); + } + return attributeOverrides; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_EMBEDDED_IMPL__ATTRIBUTE_OVERRIDES: + return ((InternalEList<?>)getAttributeOverrides()).basicRemove(otherEnd, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_EMBEDDED_IMPL__ATTRIBUTE_OVERRIDES: + return getAttributeOverrides(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_EMBEDDED_IMPL__ATTRIBUTE_OVERRIDES: + getAttributeOverrides().clear(); + getAttributeOverrides().addAll((Collection<? extends XmlAttributeOverride>)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_EMBEDDED_IMPL__ATTRIBUTE_OVERRIDES: + getAttributeOverrides().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_EMBEDDED_IMPL__ATTRIBUTE_OVERRIDES: + return attributeOverrides != null && !attributeOverrides.isEmpty(); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) + { + if (baseClass == BaseXmlEmbedded.class) + { + switch (derivedFeatureID) + { + case EclipseLinkOrmPackage.XML_EMBEDDED_IMPL__ATTRIBUTE_OVERRIDES: return EclipseLinkOrmPackage.BASE_XML_EMBEDDED__ATTRIBUTE_OVERRIDES; + default: return -1; + } + } + if (baseClass == XmlEmbedded.class) + { + switch (derivedFeatureID) + { + default: return -1; + } + } + return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) + { + if (baseClass == BaseXmlEmbedded.class) + { + switch (baseFeatureID) + { + case EclipseLinkOrmPackage.BASE_XML_EMBEDDED__ATTRIBUTE_OVERRIDES: return EclipseLinkOrmPackage.XML_EMBEDDED_IMPL__ATTRIBUTE_OVERRIDES; + default: return -1; + } + } + if (baseClass == XmlEmbedded.class) + { + switch (baseFeatureID) + { + default: return -1; + } + } + return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass); + } + +} // XmlEmbeddedImpl diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlEntity.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlEntity.java new file mode 100644 index 0000000000..59a16a7454 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlEntity.java @@ -0,0 +1,1915 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Entity</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getName <em>Name</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getTable <em>Table</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getSecondaryTables <em>Secondary Tables</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getPrimaryKeyJoinColumns <em>Primary Key Join Columns</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getIdClass <em>Id Class</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getInheritance <em>Inheritance</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getDiscriminatorValue <em>Discriminator Value</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getDiscriminatorColumn <em>Discriminator Column</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getSequenceGenerator <em>Sequence Generator</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getTableGenerator <em>Table Generator</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getNamedQueries <em>Named Queries</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getNamedNativeQueries <em>Named Native Queries</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getSqlResultSetMappings <em>Sql Result Set Mappings</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#isExcludeDefaultListeners <em>Exclude Default Listeners</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#isExcludeSuperclassListeners <em>Exclude Superclass Listeners</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getEntityListeners <em>Entity Listeners</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getPrePersist <em>Pre Persist</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getPostPersist <em>Post Persist</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getPreRemove <em>Pre Remove</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getPostRemove <em>Post Remove</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getPreUpdate <em>Pre Update</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getPostUpdate <em>Post Update</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getPostLoad <em>Post Load</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getAttributeOverrides <em>Attribute Overrides</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getAssociationOverrides <em>Association Overrides</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEntity() + * @model kind="class" + * @generated + */ +public class XmlEntity extends AbstractXmlTypeMapping +{ + /** + * The default value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected static final String NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected String name = NAME_EDEFAULT; + + /** + * The cached value of the '{@link #getTable() <em>Table</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTable() + * @generated + * @ordered + */ + protected XmlTable table; + + /** + * The cached value of the '{@link #getSecondaryTables() <em>Secondary Tables</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSecondaryTables() + * @generated + * @ordered + */ + protected EList<XmlSecondaryTable> secondaryTables; + + /** + * The cached value of the '{@link #getPrimaryKeyJoinColumns() <em>Primary Key Join Columns</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPrimaryKeyJoinColumns() + * @generated + * @ordered + */ + protected EList<XmlPrimaryKeyJoinColumn> primaryKeyJoinColumns; + + /** + * The cached value of the '{@link #getIdClass() <em>Id Class</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getIdClass() + * @generated + * @ordered + */ + protected XmlIdClass idClass; + + /** + * The cached value of the '{@link #getInheritance() <em>Inheritance</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getInheritance() + * @generated + * @ordered + */ + protected Inheritance inheritance; + + /** + * The default value of the '{@link #getDiscriminatorValue() <em>Discriminator Value</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDiscriminatorValue() + * @generated + * @ordered + */ + protected static final String DISCRIMINATOR_VALUE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getDiscriminatorValue() <em>Discriminator Value</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDiscriminatorValue() + * @generated + * @ordered + */ + protected String discriminatorValue = DISCRIMINATOR_VALUE_EDEFAULT; + + /** + * The cached value of the '{@link #getDiscriminatorColumn() <em>Discriminator Column</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDiscriminatorColumn() + * @generated + * @ordered + */ + protected XmlDiscriminatorColumn discriminatorColumn; + + /** + * The cached value of the '{@link #getSequenceGenerator() <em>Sequence Generator</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSequenceGenerator() + * @generated + * @ordered + */ + protected XmlSequenceGenerator sequenceGenerator; + + /** + * The cached value of the '{@link #getTableGenerator() <em>Table Generator</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTableGenerator() + * @generated + * @ordered + */ + protected XmlTableGenerator tableGenerator; + + /** + * The cached value of the '{@link #getNamedQueries() <em>Named Queries</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getNamedQueries() + * @generated + * @ordered + */ + protected EList<XmlNamedQuery> namedQueries; + + /** + * The cached value of the '{@link #getNamedNativeQueries() <em>Named Native Queries</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getNamedNativeQueries() + * @generated + * @ordered + */ + protected EList<XmlNamedNativeQuery> namedNativeQueries; + + /** + * The cached value of the '{@link #getSqlResultSetMappings() <em>Sql Result Set Mappings</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSqlResultSetMappings() + * @generated + * @ordered + */ + protected EList<SqlResultSetMapping> sqlResultSetMappings; + + /** + * The default value of the '{@link #isExcludeDefaultListeners() <em>Exclude Default Listeners</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isExcludeDefaultListeners() + * @generated + * @ordered + */ + protected static final boolean EXCLUDE_DEFAULT_LISTENERS_EDEFAULT = false; + + /** + * The cached value of the '{@link #isExcludeDefaultListeners() <em>Exclude Default Listeners</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isExcludeDefaultListeners() + * @generated + * @ordered + */ + protected boolean excludeDefaultListeners = EXCLUDE_DEFAULT_LISTENERS_EDEFAULT; + + /** + * The default value of the '{@link #isExcludeSuperclassListeners() <em>Exclude Superclass Listeners</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isExcludeSuperclassListeners() + * @generated + * @ordered + */ + protected static final boolean EXCLUDE_SUPERCLASS_LISTENERS_EDEFAULT = false; + + /** + * The cached value of the '{@link #isExcludeSuperclassListeners() <em>Exclude Superclass Listeners</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isExcludeSuperclassListeners() + * @generated + * @ordered + */ + protected boolean excludeSuperclassListeners = EXCLUDE_SUPERCLASS_LISTENERS_EDEFAULT; + + /** + * The cached value of the '{@link #getEntityListeners() <em>Entity Listeners</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getEntityListeners() + * @generated + * @ordered + */ + protected EntityListeners entityListeners; + + /** + * The cached value of the '{@link #getPrePersist() <em>Pre Persist</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPrePersist() + * @generated + * @ordered + */ + protected PrePersist prePersist; + + /** + * The cached value of the '{@link #getPostPersist() <em>Post Persist</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPostPersist() + * @generated + * @ordered + */ + protected PostPersist postPersist; + + /** + * The cached value of the '{@link #getPreRemove() <em>Pre Remove</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPreRemove() + * @generated + * @ordered + */ + protected PreRemove preRemove; + + /** + * The cached value of the '{@link #getPostRemove() <em>Post Remove</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPostRemove() + * @generated + * @ordered + */ + protected PostRemove postRemove; + + /** + * The cached value of the '{@link #getPreUpdate() <em>Pre Update</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPreUpdate() + * @generated + * @ordered + */ + protected PreUpdate preUpdate; + + /** + * The cached value of the '{@link #getPostUpdate() <em>Post Update</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPostUpdate() + * @generated + * @ordered + */ + protected PostUpdate postUpdate; + + /** + * The cached value of the '{@link #getPostLoad() <em>Post Load</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPostLoad() + * @generated + * @ordered + */ + protected PostLoad postLoad; + + /** + * The cached value of the '{@link #getAttributeOverrides() <em>Attribute Overrides</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getAttributeOverrides() + * @generated + * @ordered + */ + protected EList<XmlAttributeOverride> attributeOverrides; + + /** + * The cached value of the '{@link #getAssociationOverrides() <em>Association Overrides</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getAssociationOverrides() + * @generated + * @ordered + */ + protected EList<XmlAssociationOverride> associationOverrides; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected XmlEntity() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.XML_ENTITY; + } + + /** + * Returns the value of the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Name</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Name</em>' attribute. + * @see #setName(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEntity_Name() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + public String getName() + { + return name; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getName <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Name</em>' attribute. + * @see #getName() + * @generated + */ + public void setName(String newName) + { + String oldName = name; + name = newName; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ENTITY__NAME, oldName, name)); + } + + /** + * Returns the value of the '<em><b>Table</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Table</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Table</em>' containment reference. + * @see #setTable(XmlTable) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEntity_Table() + * @model containment="true" + * @generated + */ + public XmlTable getTable() + { + return table; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetTable(XmlTable newTable, NotificationChain msgs) + { + XmlTable oldTable = table; + table = newTable; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ENTITY__TABLE, oldTable, newTable); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getTable <em>Table</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Table</em>' containment reference. + * @see #getTable() + * @generated + */ + public void setTable(XmlTable newTable) + { + if (newTable != table) + { + NotificationChain msgs = null; + if (table != null) + msgs = ((InternalEObject)table).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_ENTITY__TABLE, null, msgs); + if (newTable != null) + msgs = ((InternalEObject)newTable).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_ENTITY__TABLE, null, msgs); + msgs = basicSetTable(newTable, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ENTITY__TABLE, newTable, newTable)); + } + + /** + * Returns the value of the '<em><b>Secondary Tables</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlSecondaryTable}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Secondary Tables</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Secondary Tables</em>' containment reference list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEntity_SecondaryTables() + * @model containment="true" + * @generated + */ + public EList<XmlSecondaryTable> getSecondaryTables() + { + if (secondaryTables == null) + { + secondaryTables = new EObjectContainmentEList<XmlSecondaryTable>(XmlSecondaryTable.class, this, EclipseLinkOrmPackage.XML_ENTITY__SECONDARY_TABLES); + } + return secondaryTables; + } + + /** + * Returns the value of the '<em><b>Primary Key Join Columns</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPrimaryKeyJoinColumn}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Primary Key Join Columns</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Primary Key Join Columns</em>' containment reference list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEntity_PrimaryKeyJoinColumns() + * @model containment="true" + * @generated + */ + public EList<XmlPrimaryKeyJoinColumn> getPrimaryKeyJoinColumns() + { + if (primaryKeyJoinColumns == null) + { + primaryKeyJoinColumns = new EObjectContainmentEList<XmlPrimaryKeyJoinColumn>(XmlPrimaryKeyJoinColumn.class, this, EclipseLinkOrmPackage.XML_ENTITY__PRIMARY_KEY_JOIN_COLUMNS); + } + return primaryKeyJoinColumns; + } + + /** + * Returns the value of the '<em><b>Id Class</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Id Class</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Id Class</em>' containment reference. + * @see #setIdClass(XmlIdClass) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEntity_IdClass() + * @model containment="true" + * @generated + */ + public XmlIdClass getIdClass() + { + return idClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetIdClass(XmlIdClass newIdClass, NotificationChain msgs) + { + XmlIdClass oldIdClass = idClass; + idClass = newIdClass; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ENTITY__ID_CLASS, oldIdClass, newIdClass); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getIdClass <em>Id Class</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Id Class</em>' containment reference. + * @see #getIdClass() + * @generated + */ + public void setIdClass(XmlIdClass newIdClass) + { + if (newIdClass != idClass) + { + NotificationChain msgs = null; + if (idClass != null) + msgs = ((InternalEObject)idClass).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_ENTITY__ID_CLASS, null, msgs); + if (newIdClass != null) + msgs = ((InternalEObject)newIdClass).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_ENTITY__ID_CLASS, null, msgs); + msgs = basicSetIdClass(newIdClass, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ENTITY__ID_CLASS, newIdClass, newIdClass)); + } + + /** + * Returns the value of the '<em><b>Inheritance</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Inheritance</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Inheritance</em>' containment reference. + * @see #setInheritance(Inheritance) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEntity_Inheritance() + * @model containment="true" + * @generated + */ + public Inheritance getInheritance() + { + return inheritance; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetInheritance(Inheritance newInheritance, NotificationChain msgs) + { + Inheritance oldInheritance = inheritance; + inheritance = newInheritance; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ENTITY__INHERITANCE, oldInheritance, newInheritance); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getInheritance <em>Inheritance</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Inheritance</em>' containment reference. + * @see #getInheritance() + * @generated + */ + public void setInheritance(Inheritance newInheritance) + { + if (newInheritance != inheritance) + { + NotificationChain msgs = null; + if (inheritance != null) + msgs = ((InternalEObject)inheritance).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_ENTITY__INHERITANCE, null, msgs); + if (newInheritance != null) + msgs = ((InternalEObject)newInheritance).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_ENTITY__INHERITANCE, null, msgs); + msgs = basicSetInheritance(newInheritance, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ENTITY__INHERITANCE, newInheritance, newInheritance)); + } + + /** + * Returns the value of the '<em><b>Discriminator Value</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Discriminator Value</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Discriminator Value</em>' attribute. + * @see #setDiscriminatorValue(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEntity_DiscriminatorValue() + * @model dataType="org.eclipse.jpt.eclipselink.core.resource.elorm.DiscriminatorValue" + * @generated + */ + public String getDiscriminatorValue() + { + return discriminatorValue; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getDiscriminatorValue <em>Discriminator Value</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Discriminator Value</em>' attribute. + * @see #getDiscriminatorValue() + * @generated + */ + public void setDiscriminatorValue(String newDiscriminatorValue) + { + String oldDiscriminatorValue = discriminatorValue; + discriminatorValue = newDiscriminatorValue; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ENTITY__DISCRIMINATOR_VALUE, oldDiscriminatorValue, discriminatorValue)); + } + + /** + * Returns the value of the '<em><b>Discriminator Column</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Discriminator Column</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Discriminator Column</em>' containment reference. + * @see #setDiscriminatorColumn(XmlDiscriminatorColumn) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEntity_DiscriminatorColumn() + * @model containment="true" + * @generated + */ + public XmlDiscriminatorColumn getDiscriminatorColumn() + { + return discriminatorColumn; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetDiscriminatorColumn(XmlDiscriminatorColumn newDiscriminatorColumn, NotificationChain msgs) + { + XmlDiscriminatorColumn oldDiscriminatorColumn = discriminatorColumn; + discriminatorColumn = newDiscriminatorColumn; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ENTITY__DISCRIMINATOR_COLUMN, oldDiscriminatorColumn, newDiscriminatorColumn); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getDiscriminatorColumn <em>Discriminator Column</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Discriminator Column</em>' containment reference. + * @see #getDiscriminatorColumn() + * @generated + */ + public void setDiscriminatorColumn(XmlDiscriminatorColumn newDiscriminatorColumn) + { + if (newDiscriminatorColumn != discriminatorColumn) + { + NotificationChain msgs = null; + if (discriminatorColumn != null) + msgs = ((InternalEObject)discriminatorColumn).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_ENTITY__DISCRIMINATOR_COLUMN, null, msgs); + if (newDiscriminatorColumn != null) + msgs = ((InternalEObject)newDiscriminatorColumn).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_ENTITY__DISCRIMINATOR_COLUMN, null, msgs); + msgs = basicSetDiscriminatorColumn(newDiscriminatorColumn, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ENTITY__DISCRIMINATOR_COLUMN, newDiscriminatorColumn, newDiscriminatorColumn)); + } + + /** + * Returns the value of the '<em><b>Sequence Generator</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Sequence Generator</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Sequence Generator</em>' containment reference. + * @see #setSequenceGenerator(XmlSequenceGenerator) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEntity_SequenceGenerator() + * @model containment="true" + * @generated + */ + public XmlSequenceGenerator getSequenceGenerator() + { + return sequenceGenerator; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetSequenceGenerator(XmlSequenceGenerator newSequenceGenerator, NotificationChain msgs) + { + XmlSequenceGenerator oldSequenceGenerator = sequenceGenerator; + sequenceGenerator = newSequenceGenerator; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ENTITY__SEQUENCE_GENERATOR, oldSequenceGenerator, newSequenceGenerator); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getSequenceGenerator <em>Sequence Generator</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Sequence Generator</em>' containment reference. + * @see #getSequenceGenerator() + * @generated + */ + public void setSequenceGenerator(XmlSequenceGenerator newSequenceGenerator) + { + if (newSequenceGenerator != sequenceGenerator) + { + NotificationChain msgs = null; + if (sequenceGenerator != null) + msgs = ((InternalEObject)sequenceGenerator).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_ENTITY__SEQUENCE_GENERATOR, null, msgs); + if (newSequenceGenerator != null) + msgs = ((InternalEObject)newSequenceGenerator).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_ENTITY__SEQUENCE_GENERATOR, null, msgs); + msgs = basicSetSequenceGenerator(newSequenceGenerator, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ENTITY__SEQUENCE_GENERATOR, newSequenceGenerator, newSequenceGenerator)); + } + + /** + * Returns the value of the '<em><b>Table Generator</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Table Generator</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Table Generator</em>' containment reference. + * @see #setTableGenerator(XmlTableGenerator) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEntity_TableGenerator() + * @model containment="true" + * @generated + */ + public XmlTableGenerator getTableGenerator() + { + return tableGenerator; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetTableGenerator(XmlTableGenerator newTableGenerator, NotificationChain msgs) + { + XmlTableGenerator oldTableGenerator = tableGenerator; + tableGenerator = newTableGenerator; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ENTITY__TABLE_GENERATOR, oldTableGenerator, newTableGenerator); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getTableGenerator <em>Table Generator</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Table Generator</em>' containment reference. + * @see #getTableGenerator() + * @generated + */ + public void setTableGenerator(XmlTableGenerator newTableGenerator) + { + if (newTableGenerator != tableGenerator) + { + NotificationChain msgs = null; + if (tableGenerator != null) + msgs = ((InternalEObject)tableGenerator).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_ENTITY__TABLE_GENERATOR, null, msgs); + if (newTableGenerator != null) + msgs = ((InternalEObject)newTableGenerator).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_ENTITY__TABLE_GENERATOR, null, msgs); + msgs = basicSetTableGenerator(newTableGenerator, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ENTITY__TABLE_GENERATOR, newTableGenerator, newTableGenerator)); + } + + /** + * Returns the value of the '<em><b>Named Queries</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlNamedQuery}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Named Queries</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Named Queries</em>' containment reference list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEntity_NamedQueries() + * @model containment="true" + * @generated + */ + public EList<XmlNamedQuery> getNamedQueries() + { + if (namedQueries == null) + { + namedQueries = new EObjectContainmentEList<XmlNamedQuery>(XmlNamedQuery.class, this, EclipseLinkOrmPackage.XML_ENTITY__NAMED_QUERIES); + } + return namedQueries; + } + + /** + * Returns the value of the '<em><b>Named Native Queries</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlNamedNativeQuery}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Named Native Queries</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Named Native Queries</em>' containment reference list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEntity_NamedNativeQueries() + * @model containment="true" + * @generated + */ + public EList<XmlNamedNativeQuery> getNamedNativeQueries() + { + if (namedNativeQueries == null) + { + namedNativeQueries = new EObjectContainmentEList<XmlNamedNativeQuery>(XmlNamedNativeQuery.class, this, EclipseLinkOrmPackage.XML_ENTITY__NAMED_NATIVE_QUERIES); + } + return namedNativeQueries; + } + + /** + * Returns the value of the '<em><b>Sql Result Set Mappings</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.jpt.eclipselink.core.resource.elorm.SqlResultSetMapping}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Sql Result Set Mappings</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Sql Result Set Mappings</em>' containment reference list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEntity_SqlResultSetMappings() + * @model containment="true" + * @generated + */ + public EList<SqlResultSetMapping> getSqlResultSetMappings() + { + if (sqlResultSetMappings == null) + { + sqlResultSetMappings = new EObjectContainmentEList<SqlResultSetMapping>(SqlResultSetMapping.class, this, EclipseLinkOrmPackage.XML_ENTITY__SQL_RESULT_SET_MAPPINGS); + } + return sqlResultSetMappings; + } + + /** + * Returns the value of the '<em><b>Exclude Default Listeners</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Exclude Default Listeners</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Exclude Default Listeners</em>' attribute. + * @see #setExcludeDefaultListeners(boolean) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEntity_ExcludeDefaultListeners() + * @model dataType="org.eclipse.emf.ecore.xml.type.Boolean" + * @generated + */ + public boolean isExcludeDefaultListeners() + { + return excludeDefaultListeners; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#isExcludeDefaultListeners <em>Exclude Default Listeners</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Exclude Default Listeners</em>' attribute. + * @see #isExcludeDefaultListeners() + * @generated + */ + public void setExcludeDefaultListeners(boolean newExcludeDefaultListeners) + { + boolean oldExcludeDefaultListeners = excludeDefaultListeners; + excludeDefaultListeners = newExcludeDefaultListeners; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ENTITY__EXCLUDE_DEFAULT_LISTENERS, oldExcludeDefaultListeners, excludeDefaultListeners)); + } + + /** + * Returns the value of the '<em><b>Exclude Superclass Listeners</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Exclude Superclass Listeners</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Exclude Superclass Listeners</em>' attribute. + * @see #setExcludeSuperclassListeners(boolean) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEntity_ExcludeSuperclassListeners() + * @model dataType="org.eclipse.emf.ecore.xml.type.Boolean" + * @generated + */ + public boolean isExcludeSuperclassListeners() + { + return excludeSuperclassListeners; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#isExcludeSuperclassListeners <em>Exclude Superclass Listeners</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Exclude Superclass Listeners</em>' attribute. + * @see #isExcludeSuperclassListeners() + * @generated + */ + public void setExcludeSuperclassListeners(boolean newExcludeSuperclassListeners) + { + boolean oldExcludeSuperclassListeners = excludeSuperclassListeners; + excludeSuperclassListeners = newExcludeSuperclassListeners; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ENTITY__EXCLUDE_SUPERCLASS_LISTENERS, oldExcludeSuperclassListeners, excludeSuperclassListeners)); + } + + /** + * Returns the value of the '<em><b>Entity Listeners</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Entity Listeners</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Entity Listeners</em>' containment reference. + * @see #setEntityListeners(EntityListeners) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEntity_EntityListeners() + * @model containment="true" + * @generated + */ + public EntityListeners getEntityListeners() + { + return entityListeners; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetEntityListeners(EntityListeners newEntityListeners, NotificationChain msgs) + { + EntityListeners oldEntityListeners = entityListeners; + entityListeners = newEntityListeners; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ENTITY__ENTITY_LISTENERS, oldEntityListeners, newEntityListeners); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getEntityListeners <em>Entity Listeners</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Entity Listeners</em>' containment reference. + * @see #getEntityListeners() + * @generated + */ + public void setEntityListeners(EntityListeners newEntityListeners) + { + if (newEntityListeners != entityListeners) + { + NotificationChain msgs = null; + if (entityListeners != null) + msgs = ((InternalEObject)entityListeners).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_ENTITY__ENTITY_LISTENERS, null, msgs); + if (newEntityListeners != null) + msgs = ((InternalEObject)newEntityListeners).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_ENTITY__ENTITY_LISTENERS, null, msgs); + msgs = basicSetEntityListeners(newEntityListeners, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ENTITY__ENTITY_LISTENERS, newEntityListeners, newEntityListeners)); + } + + /** + * Returns the value of the '<em><b>Pre Persist</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Pre Persist</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Pre Persist</em>' containment reference. + * @see #setPrePersist(PrePersist) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEntity_PrePersist() + * @model containment="true" + * @generated + */ + public PrePersist getPrePersist() + { + return prePersist; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetPrePersist(PrePersist newPrePersist, NotificationChain msgs) + { + PrePersist oldPrePersist = prePersist; + prePersist = newPrePersist; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ENTITY__PRE_PERSIST, oldPrePersist, newPrePersist); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getPrePersist <em>Pre Persist</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Pre Persist</em>' containment reference. + * @see #getPrePersist() + * @generated + */ + public void setPrePersist(PrePersist newPrePersist) + { + if (newPrePersist != prePersist) + { + NotificationChain msgs = null; + if (prePersist != null) + msgs = ((InternalEObject)prePersist).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_ENTITY__PRE_PERSIST, null, msgs); + if (newPrePersist != null) + msgs = ((InternalEObject)newPrePersist).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_ENTITY__PRE_PERSIST, null, msgs); + msgs = basicSetPrePersist(newPrePersist, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ENTITY__PRE_PERSIST, newPrePersist, newPrePersist)); + } + + /** + * Returns the value of the '<em><b>Post Persist</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Post Persist</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Post Persist</em>' containment reference. + * @see #setPostPersist(PostPersist) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEntity_PostPersist() + * @model containment="true" + * @generated + */ + public PostPersist getPostPersist() + { + return postPersist; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetPostPersist(PostPersist newPostPersist, NotificationChain msgs) + { + PostPersist oldPostPersist = postPersist; + postPersist = newPostPersist; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ENTITY__POST_PERSIST, oldPostPersist, newPostPersist); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getPostPersist <em>Post Persist</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Post Persist</em>' containment reference. + * @see #getPostPersist() + * @generated + */ + public void setPostPersist(PostPersist newPostPersist) + { + if (newPostPersist != postPersist) + { + NotificationChain msgs = null; + if (postPersist != null) + msgs = ((InternalEObject)postPersist).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_ENTITY__POST_PERSIST, null, msgs); + if (newPostPersist != null) + msgs = ((InternalEObject)newPostPersist).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_ENTITY__POST_PERSIST, null, msgs); + msgs = basicSetPostPersist(newPostPersist, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ENTITY__POST_PERSIST, newPostPersist, newPostPersist)); + } + + /** + * Returns the value of the '<em><b>Pre Remove</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Pre Remove</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Pre Remove</em>' containment reference. + * @see #setPreRemove(PreRemove) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEntity_PreRemove() + * @model containment="true" + * @generated + */ + public PreRemove getPreRemove() + { + return preRemove; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetPreRemove(PreRemove newPreRemove, NotificationChain msgs) + { + PreRemove oldPreRemove = preRemove; + preRemove = newPreRemove; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ENTITY__PRE_REMOVE, oldPreRemove, newPreRemove); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getPreRemove <em>Pre Remove</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Pre Remove</em>' containment reference. + * @see #getPreRemove() + * @generated + */ + public void setPreRemove(PreRemove newPreRemove) + { + if (newPreRemove != preRemove) + { + NotificationChain msgs = null; + if (preRemove != null) + msgs = ((InternalEObject)preRemove).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_ENTITY__PRE_REMOVE, null, msgs); + if (newPreRemove != null) + msgs = ((InternalEObject)newPreRemove).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_ENTITY__PRE_REMOVE, null, msgs); + msgs = basicSetPreRemove(newPreRemove, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ENTITY__PRE_REMOVE, newPreRemove, newPreRemove)); + } + + /** + * Returns the value of the '<em><b>Post Remove</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Post Remove</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Post Remove</em>' containment reference. + * @see #setPostRemove(PostRemove) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEntity_PostRemove() + * @model containment="true" + * @generated + */ + public PostRemove getPostRemove() + { + return postRemove; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetPostRemove(PostRemove newPostRemove, NotificationChain msgs) + { + PostRemove oldPostRemove = postRemove; + postRemove = newPostRemove; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ENTITY__POST_REMOVE, oldPostRemove, newPostRemove); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getPostRemove <em>Post Remove</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Post Remove</em>' containment reference. + * @see #getPostRemove() + * @generated + */ + public void setPostRemove(PostRemove newPostRemove) + { + if (newPostRemove != postRemove) + { + NotificationChain msgs = null; + if (postRemove != null) + msgs = ((InternalEObject)postRemove).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_ENTITY__POST_REMOVE, null, msgs); + if (newPostRemove != null) + msgs = ((InternalEObject)newPostRemove).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_ENTITY__POST_REMOVE, null, msgs); + msgs = basicSetPostRemove(newPostRemove, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ENTITY__POST_REMOVE, newPostRemove, newPostRemove)); + } + + /** + * Returns the value of the '<em><b>Pre Update</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Pre Update</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Pre Update</em>' containment reference. + * @see #setPreUpdate(PreUpdate) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEntity_PreUpdate() + * @model containment="true" + * @generated + */ + public PreUpdate getPreUpdate() + { + return preUpdate; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetPreUpdate(PreUpdate newPreUpdate, NotificationChain msgs) + { + PreUpdate oldPreUpdate = preUpdate; + preUpdate = newPreUpdate; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ENTITY__PRE_UPDATE, oldPreUpdate, newPreUpdate); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getPreUpdate <em>Pre Update</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Pre Update</em>' containment reference. + * @see #getPreUpdate() + * @generated + */ + public void setPreUpdate(PreUpdate newPreUpdate) + { + if (newPreUpdate != preUpdate) + { + NotificationChain msgs = null; + if (preUpdate != null) + msgs = ((InternalEObject)preUpdate).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_ENTITY__PRE_UPDATE, null, msgs); + if (newPreUpdate != null) + msgs = ((InternalEObject)newPreUpdate).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_ENTITY__PRE_UPDATE, null, msgs); + msgs = basicSetPreUpdate(newPreUpdate, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ENTITY__PRE_UPDATE, newPreUpdate, newPreUpdate)); + } + + /** + * Returns the value of the '<em><b>Post Update</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Post Update</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Post Update</em>' containment reference. + * @see #setPostUpdate(PostUpdate) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEntity_PostUpdate() + * @model containment="true" + * @generated + */ + public PostUpdate getPostUpdate() + { + return postUpdate; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetPostUpdate(PostUpdate newPostUpdate, NotificationChain msgs) + { + PostUpdate oldPostUpdate = postUpdate; + postUpdate = newPostUpdate; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ENTITY__POST_UPDATE, oldPostUpdate, newPostUpdate); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getPostUpdate <em>Post Update</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Post Update</em>' containment reference. + * @see #getPostUpdate() + * @generated + */ + public void setPostUpdate(PostUpdate newPostUpdate) + { + if (newPostUpdate != postUpdate) + { + NotificationChain msgs = null; + if (postUpdate != null) + msgs = ((InternalEObject)postUpdate).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_ENTITY__POST_UPDATE, null, msgs); + if (newPostUpdate != null) + msgs = ((InternalEObject)newPostUpdate).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_ENTITY__POST_UPDATE, null, msgs); + msgs = basicSetPostUpdate(newPostUpdate, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ENTITY__POST_UPDATE, newPostUpdate, newPostUpdate)); + } + + /** + * Returns the value of the '<em><b>Post Load</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Post Load</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Post Load</em>' containment reference. + * @see #setPostLoad(PostLoad) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEntity_PostLoad() + * @model containment="true" + * @generated + */ + public PostLoad getPostLoad() + { + return postLoad; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetPostLoad(PostLoad newPostLoad, NotificationChain msgs) + { + PostLoad oldPostLoad = postLoad; + postLoad = newPostLoad; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ENTITY__POST_LOAD, oldPostLoad, newPostLoad); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity#getPostLoad <em>Post Load</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Post Load</em>' containment reference. + * @see #getPostLoad() + * @generated + */ + public void setPostLoad(PostLoad newPostLoad) + { + if (newPostLoad != postLoad) + { + NotificationChain msgs = null; + if (postLoad != null) + msgs = ((InternalEObject)postLoad).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_ENTITY__POST_LOAD, null, msgs); + if (newPostLoad != null) + msgs = ((InternalEObject)newPostLoad).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_ENTITY__POST_LOAD, null, msgs); + msgs = basicSetPostLoad(newPostLoad, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ENTITY__POST_LOAD, newPostLoad, newPostLoad)); + } + + /** + * Returns the value of the '<em><b>Attribute Overrides</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAttributeOverride}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Attribute Overrides</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Attribute Overrides</em>' containment reference list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEntity_AttributeOverrides() + * @model containment="true" + * @generated + */ + public EList<XmlAttributeOverride> getAttributeOverrides() + { + if (attributeOverrides == null) + { + attributeOverrides = new EObjectContainmentEList<XmlAttributeOverride>(XmlAttributeOverride.class, this, EclipseLinkOrmPackage.XML_ENTITY__ATTRIBUTE_OVERRIDES); + } + return attributeOverrides; + } + + /** + * Returns the value of the '<em><b>Association Overrides</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlAssociationOverride}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Association Overrides</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Association Overrides</em>' containment reference list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEntity_AssociationOverrides() + * @model containment="true" + * @generated + */ + public EList<XmlAssociationOverride> getAssociationOverrides() + { + if (associationOverrides == null) + { + associationOverrides = new EObjectContainmentEList<XmlAssociationOverride>(XmlAssociationOverride.class, this, EclipseLinkOrmPackage.XML_ENTITY__ASSOCIATION_OVERRIDES); + } + return associationOverrides; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_ENTITY__TABLE: + return basicSetTable(null, msgs); + case EclipseLinkOrmPackage.XML_ENTITY__SECONDARY_TABLES: + return ((InternalEList<?>)getSecondaryTables()).basicRemove(otherEnd, msgs); + case EclipseLinkOrmPackage.XML_ENTITY__PRIMARY_KEY_JOIN_COLUMNS: + return ((InternalEList<?>)getPrimaryKeyJoinColumns()).basicRemove(otherEnd, msgs); + case EclipseLinkOrmPackage.XML_ENTITY__ID_CLASS: + return basicSetIdClass(null, msgs); + case EclipseLinkOrmPackage.XML_ENTITY__INHERITANCE: + return basicSetInheritance(null, msgs); + case EclipseLinkOrmPackage.XML_ENTITY__DISCRIMINATOR_COLUMN: + return basicSetDiscriminatorColumn(null, msgs); + case EclipseLinkOrmPackage.XML_ENTITY__SEQUENCE_GENERATOR: + return basicSetSequenceGenerator(null, msgs); + case EclipseLinkOrmPackage.XML_ENTITY__TABLE_GENERATOR: + return basicSetTableGenerator(null, msgs); + case EclipseLinkOrmPackage.XML_ENTITY__NAMED_QUERIES: + return ((InternalEList<?>)getNamedQueries()).basicRemove(otherEnd, msgs); + case EclipseLinkOrmPackage.XML_ENTITY__NAMED_NATIVE_QUERIES: + return ((InternalEList<?>)getNamedNativeQueries()).basicRemove(otherEnd, msgs); + case EclipseLinkOrmPackage.XML_ENTITY__SQL_RESULT_SET_MAPPINGS: + return ((InternalEList<?>)getSqlResultSetMappings()).basicRemove(otherEnd, msgs); + case EclipseLinkOrmPackage.XML_ENTITY__ENTITY_LISTENERS: + return basicSetEntityListeners(null, msgs); + case EclipseLinkOrmPackage.XML_ENTITY__PRE_PERSIST: + return basicSetPrePersist(null, msgs); + case EclipseLinkOrmPackage.XML_ENTITY__POST_PERSIST: + return basicSetPostPersist(null, msgs); + case EclipseLinkOrmPackage.XML_ENTITY__PRE_REMOVE: + return basicSetPreRemove(null, msgs); + case EclipseLinkOrmPackage.XML_ENTITY__POST_REMOVE: + return basicSetPostRemove(null, msgs); + case EclipseLinkOrmPackage.XML_ENTITY__PRE_UPDATE: + return basicSetPreUpdate(null, msgs); + case EclipseLinkOrmPackage.XML_ENTITY__POST_UPDATE: + return basicSetPostUpdate(null, msgs); + case EclipseLinkOrmPackage.XML_ENTITY__POST_LOAD: + return basicSetPostLoad(null, msgs); + case EclipseLinkOrmPackage.XML_ENTITY__ATTRIBUTE_OVERRIDES: + return ((InternalEList<?>)getAttributeOverrides()).basicRemove(otherEnd, msgs); + case EclipseLinkOrmPackage.XML_ENTITY__ASSOCIATION_OVERRIDES: + return ((InternalEList<?>)getAssociationOverrides()).basicRemove(otherEnd, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_ENTITY__NAME: + return getName(); + case EclipseLinkOrmPackage.XML_ENTITY__TABLE: + return getTable(); + case EclipseLinkOrmPackage.XML_ENTITY__SECONDARY_TABLES: + return getSecondaryTables(); + case EclipseLinkOrmPackage.XML_ENTITY__PRIMARY_KEY_JOIN_COLUMNS: + return getPrimaryKeyJoinColumns(); + case EclipseLinkOrmPackage.XML_ENTITY__ID_CLASS: + return getIdClass(); + case EclipseLinkOrmPackage.XML_ENTITY__INHERITANCE: + return getInheritance(); + case EclipseLinkOrmPackage.XML_ENTITY__DISCRIMINATOR_VALUE: + return getDiscriminatorValue(); + case EclipseLinkOrmPackage.XML_ENTITY__DISCRIMINATOR_COLUMN: + return getDiscriminatorColumn(); + case EclipseLinkOrmPackage.XML_ENTITY__SEQUENCE_GENERATOR: + return getSequenceGenerator(); + case EclipseLinkOrmPackage.XML_ENTITY__TABLE_GENERATOR: + return getTableGenerator(); + case EclipseLinkOrmPackage.XML_ENTITY__NAMED_QUERIES: + return getNamedQueries(); + case EclipseLinkOrmPackage.XML_ENTITY__NAMED_NATIVE_QUERIES: + return getNamedNativeQueries(); + case EclipseLinkOrmPackage.XML_ENTITY__SQL_RESULT_SET_MAPPINGS: + return getSqlResultSetMappings(); + case EclipseLinkOrmPackage.XML_ENTITY__EXCLUDE_DEFAULT_LISTENERS: + return isExcludeDefaultListeners() ? Boolean.TRUE : Boolean.FALSE; + case EclipseLinkOrmPackage.XML_ENTITY__EXCLUDE_SUPERCLASS_LISTENERS: + return isExcludeSuperclassListeners() ? Boolean.TRUE : Boolean.FALSE; + case EclipseLinkOrmPackage.XML_ENTITY__ENTITY_LISTENERS: + return getEntityListeners(); + case EclipseLinkOrmPackage.XML_ENTITY__PRE_PERSIST: + return getPrePersist(); + case EclipseLinkOrmPackage.XML_ENTITY__POST_PERSIST: + return getPostPersist(); + case EclipseLinkOrmPackage.XML_ENTITY__PRE_REMOVE: + return getPreRemove(); + case EclipseLinkOrmPackage.XML_ENTITY__POST_REMOVE: + return getPostRemove(); + case EclipseLinkOrmPackage.XML_ENTITY__PRE_UPDATE: + return getPreUpdate(); + case EclipseLinkOrmPackage.XML_ENTITY__POST_UPDATE: + return getPostUpdate(); + case EclipseLinkOrmPackage.XML_ENTITY__POST_LOAD: + return getPostLoad(); + case EclipseLinkOrmPackage.XML_ENTITY__ATTRIBUTE_OVERRIDES: + return getAttributeOverrides(); + case EclipseLinkOrmPackage.XML_ENTITY__ASSOCIATION_OVERRIDES: + return getAssociationOverrides(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_ENTITY__NAME: + setName((String)newValue); + return; + case EclipseLinkOrmPackage.XML_ENTITY__TABLE: + setTable((XmlTable)newValue); + return; + case EclipseLinkOrmPackage.XML_ENTITY__SECONDARY_TABLES: + getSecondaryTables().clear(); + getSecondaryTables().addAll((Collection<? extends XmlSecondaryTable>)newValue); + return; + case EclipseLinkOrmPackage.XML_ENTITY__PRIMARY_KEY_JOIN_COLUMNS: + getPrimaryKeyJoinColumns().clear(); + getPrimaryKeyJoinColumns().addAll((Collection<? extends XmlPrimaryKeyJoinColumn>)newValue); + return; + case EclipseLinkOrmPackage.XML_ENTITY__ID_CLASS: + setIdClass((XmlIdClass)newValue); + return; + case EclipseLinkOrmPackage.XML_ENTITY__INHERITANCE: + setInheritance((Inheritance)newValue); + return; + case EclipseLinkOrmPackage.XML_ENTITY__DISCRIMINATOR_VALUE: + setDiscriminatorValue((String)newValue); + return; + case EclipseLinkOrmPackage.XML_ENTITY__DISCRIMINATOR_COLUMN: + setDiscriminatorColumn((XmlDiscriminatorColumn)newValue); + return; + case EclipseLinkOrmPackage.XML_ENTITY__SEQUENCE_GENERATOR: + setSequenceGenerator((XmlSequenceGenerator)newValue); + return; + case EclipseLinkOrmPackage.XML_ENTITY__TABLE_GENERATOR: + setTableGenerator((XmlTableGenerator)newValue); + return; + case EclipseLinkOrmPackage.XML_ENTITY__NAMED_QUERIES: + getNamedQueries().clear(); + getNamedQueries().addAll((Collection<? extends XmlNamedQuery>)newValue); + return; + case EclipseLinkOrmPackage.XML_ENTITY__NAMED_NATIVE_QUERIES: + getNamedNativeQueries().clear(); + getNamedNativeQueries().addAll((Collection<? extends XmlNamedNativeQuery>)newValue); + return; + case EclipseLinkOrmPackage.XML_ENTITY__SQL_RESULT_SET_MAPPINGS: + getSqlResultSetMappings().clear(); + getSqlResultSetMappings().addAll((Collection<? extends SqlResultSetMapping>)newValue); + return; + case EclipseLinkOrmPackage.XML_ENTITY__EXCLUDE_DEFAULT_LISTENERS: + setExcludeDefaultListeners(((Boolean)newValue).booleanValue()); + return; + case EclipseLinkOrmPackage.XML_ENTITY__EXCLUDE_SUPERCLASS_LISTENERS: + setExcludeSuperclassListeners(((Boolean)newValue).booleanValue()); + return; + case EclipseLinkOrmPackage.XML_ENTITY__ENTITY_LISTENERS: + setEntityListeners((EntityListeners)newValue); + return; + case EclipseLinkOrmPackage.XML_ENTITY__PRE_PERSIST: + setPrePersist((PrePersist)newValue); + return; + case EclipseLinkOrmPackage.XML_ENTITY__POST_PERSIST: + setPostPersist((PostPersist)newValue); + return; + case EclipseLinkOrmPackage.XML_ENTITY__PRE_REMOVE: + setPreRemove((PreRemove)newValue); + return; + case EclipseLinkOrmPackage.XML_ENTITY__POST_REMOVE: + setPostRemove((PostRemove)newValue); + return; + case EclipseLinkOrmPackage.XML_ENTITY__PRE_UPDATE: + setPreUpdate((PreUpdate)newValue); + return; + case EclipseLinkOrmPackage.XML_ENTITY__POST_UPDATE: + setPostUpdate((PostUpdate)newValue); + return; + case EclipseLinkOrmPackage.XML_ENTITY__POST_LOAD: + setPostLoad((PostLoad)newValue); + return; + case EclipseLinkOrmPackage.XML_ENTITY__ATTRIBUTE_OVERRIDES: + getAttributeOverrides().clear(); + getAttributeOverrides().addAll((Collection<? extends XmlAttributeOverride>)newValue); + return; + case EclipseLinkOrmPackage.XML_ENTITY__ASSOCIATION_OVERRIDES: + getAssociationOverrides().clear(); + getAssociationOverrides().addAll((Collection<? extends XmlAssociationOverride>)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_ENTITY__NAME: + setName(NAME_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_ENTITY__TABLE: + setTable((XmlTable)null); + return; + case EclipseLinkOrmPackage.XML_ENTITY__SECONDARY_TABLES: + getSecondaryTables().clear(); + return; + case EclipseLinkOrmPackage.XML_ENTITY__PRIMARY_KEY_JOIN_COLUMNS: + getPrimaryKeyJoinColumns().clear(); + return; + case EclipseLinkOrmPackage.XML_ENTITY__ID_CLASS: + setIdClass((XmlIdClass)null); + return; + case EclipseLinkOrmPackage.XML_ENTITY__INHERITANCE: + setInheritance((Inheritance)null); + return; + case EclipseLinkOrmPackage.XML_ENTITY__DISCRIMINATOR_VALUE: + setDiscriminatorValue(DISCRIMINATOR_VALUE_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_ENTITY__DISCRIMINATOR_COLUMN: + setDiscriminatorColumn((XmlDiscriminatorColumn)null); + return; + case EclipseLinkOrmPackage.XML_ENTITY__SEQUENCE_GENERATOR: + setSequenceGenerator((XmlSequenceGenerator)null); + return; + case EclipseLinkOrmPackage.XML_ENTITY__TABLE_GENERATOR: + setTableGenerator((XmlTableGenerator)null); + return; + case EclipseLinkOrmPackage.XML_ENTITY__NAMED_QUERIES: + getNamedQueries().clear(); + return; + case EclipseLinkOrmPackage.XML_ENTITY__NAMED_NATIVE_QUERIES: + getNamedNativeQueries().clear(); + return; + case EclipseLinkOrmPackage.XML_ENTITY__SQL_RESULT_SET_MAPPINGS: + getSqlResultSetMappings().clear(); + return; + case EclipseLinkOrmPackage.XML_ENTITY__EXCLUDE_DEFAULT_LISTENERS: + setExcludeDefaultListeners(EXCLUDE_DEFAULT_LISTENERS_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_ENTITY__EXCLUDE_SUPERCLASS_LISTENERS: + setExcludeSuperclassListeners(EXCLUDE_SUPERCLASS_LISTENERS_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_ENTITY__ENTITY_LISTENERS: + setEntityListeners((EntityListeners)null); + return; + case EclipseLinkOrmPackage.XML_ENTITY__PRE_PERSIST: + setPrePersist((PrePersist)null); + return; + case EclipseLinkOrmPackage.XML_ENTITY__POST_PERSIST: + setPostPersist((PostPersist)null); + return; + case EclipseLinkOrmPackage.XML_ENTITY__PRE_REMOVE: + setPreRemove((PreRemove)null); + return; + case EclipseLinkOrmPackage.XML_ENTITY__POST_REMOVE: + setPostRemove((PostRemove)null); + return; + case EclipseLinkOrmPackage.XML_ENTITY__PRE_UPDATE: + setPreUpdate((PreUpdate)null); + return; + case EclipseLinkOrmPackage.XML_ENTITY__POST_UPDATE: + setPostUpdate((PostUpdate)null); + return; + case EclipseLinkOrmPackage.XML_ENTITY__POST_LOAD: + setPostLoad((PostLoad)null); + return; + case EclipseLinkOrmPackage.XML_ENTITY__ATTRIBUTE_OVERRIDES: + getAttributeOverrides().clear(); + return; + case EclipseLinkOrmPackage.XML_ENTITY__ASSOCIATION_OVERRIDES: + getAssociationOverrides().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_ENTITY__NAME: + return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name); + case EclipseLinkOrmPackage.XML_ENTITY__TABLE: + return table != null; + case EclipseLinkOrmPackage.XML_ENTITY__SECONDARY_TABLES: + return secondaryTables != null && !secondaryTables.isEmpty(); + case EclipseLinkOrmPackage.XML_ENTITY__PRIMARY_KEY_JOIN_COLUMNS: + return primaryKeyJoinColumns != null && !primaryKeyJoinColumns.isEmpty(); + case EclipseLinkOrmPackage.XML_ENTITY__ID_CLASS: + return idClass != null; + case EclipseLinkOrmPackage.XML_ENTITY__INHERITANCE: + return inheritance != null; + case EclipseLinkOrmPackage.XML_ENTITY__DISCRIMINATOR_VALUE: + return DISCRIMINATOR_VALUE_EDEFAULT == null ? discriminatorValue != null : !DISCRIMINATOR_VALUE_EDEFAULT.equals(discriminatorValue); + case EclipseLinkOrmPackage.XML_ENTITY__DISCRIMINATOR_COLUMN: + return discriminatorColumn != null; + case EclipseLinkOrmPackage.XML_ENTITY__SEQUENCE_GENERATOR: + return sequenceGenerator != null; + case EclipseLinkOrmPackage.XML_ENTITY__TABLE_GENERATOR: + return tableGenerator != null; + case EclipseLinkOrmPackage.XML_ENTITY__NAMED_QUERIES: + return namedQueries != null && !namedQueries.isEmpty(); + case EclipseLinkOrmPackage.XML_ENTITY__NAMED_NATIVE_QUERIES: + return namedNativeQueries != null && !namedNativeQueries.isEmpty(); + case EclipseLinkOrmPackage.XML_ENTITY__SQL_RESULT_SET_MAPPINGS: + return sqlResultSetMappings != null && !sqlResultSetMappings.isEmpty(); + case EclipseLinkOrmPackage.XML_ENTITY__EXCLUDE_DEFAULT_LISTENERS: + return excludeDefaultListeners != EXCLUDE_DEFAULT_LISTENERS_EDEFAULT; + case EclipseLinkOrmPackage.XML_ENTITY__EXCLUDE_SUPERCLASS_LISTENERS: + return excludeSuperclassListeners != EXCLUDE_SUPERCLASS_LISTENERS_EDEFAULT; + case EclipseLinkOrmPackage.XML_ENTITY__ENTITY_LISTENERS: + return entityListeners != null; + case EclipseLinkOrmPackage.XML_ENTITY__PRE_PERSIST: + return prePersist != null; + case EclipseLinkOrmPackage.XML_ENTITY__POST_PERSIST: + return postPersist != null; + case EclipseLinkOrmPackage.XML_ENTITY__PRE_REMOVE: + return preRemove != null; + case EclipseLinkOrmPackage.XML_ENTITY__POST_REMOVE: + return postRemove != null; + case EclipseLinkOrmPackage.XML_ENTITY__PRE_UPDATE: + return preUpdate != null; + case EclipseLinkOrmPackage.XML_ENTITY__POST_UPDATE: + return postUpdate != null; + case EclipseLinkOrmPackage.XML_ENTITY__POST_LOAD: + return postLoad != null; + case EclipseLinkOrmPackage.XML_ENTITY__ATTRIBUTE_OVERRIDES: + return attributeOverrides != null && !attributeOverrides.isEmpty(); + case EclipseLinkOrmPackage.XML_ENTITY__ASSOCIATION_OVERRIDES: + return associationOverrides != null && !associationOverrides.isEmpty(); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (name: "); + result.append(name); + result.append(", discriminatorValue: "); + result.append(discriminatorValue); + result.append(", excludeDefaultListeners: "); + result.append(excludeDefaultListeners); + result.append(", excludeSuperclassListeners: "); + result.append(excludeSuperclassListeners); + result.append(')'); + return result.toString(); + } + +} // XmlEntity diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlEntityMappings.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlEntityMappings.java new file mode 100644 index 0000000000..941d6162b7 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlEntityMappings.java @@ -0,0 +1,1077 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +import org.eclipse.jpt.core.resource.common.AbstractJpaEObject; +import org.eclipse.jpt.core.resource.common.JpaEObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Entity Mappings</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings#getVersion <em>Version</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings#getDescription <em>Description</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings#getPersistenceUnitMetadata <em>Persistence Unit Metadata</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings#getPackage <em>Package</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings#getSchema <em>Schema</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings#getCatalog <em>Catalog</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings#getAccess <em>Access</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings#getSequenceGenerators <em>Sequence Generators</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings#getTableGenerators <em>Table Generators</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings#getNamedQueries <em>Named Queries</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings#getNamedNativeQueries <em>Named Native Queries</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings#getSqlResultSetMappings <em>Sql Result Set Mappings</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings#getMappedSuperclasses <em>Mapped Superclasses</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings#getEntities <em>Entities</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings#getEmbeddables <em>Embeddables</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEntityMappings() + * @model kind="class" + * @extends JpaEObject + * @generated + */ +public class XmlEntityMappings extends AbstractJpaEObject implements JpaEObject +{ + /** + * The default value of the '{@link #getVersion() <em>Version</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getVersion() + * @generated + * @ordered + */ + protected static final String VERSION_EDEFAULT = "1.0"; + + /** + * The cached value of the '{@link #getVersion() <em>Version</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getVersion() + * @generated + * @ordered + */ + protected String version = VERSION_EDEFAULT; + + /** + * This is true if the Version attribute has been set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + protected boolean versionESet; + + /** + * The default value of the '{@link #getDescription() <em>Description</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDescription() + * @generated + * @ordered + */ + protected static final String DESCRIPTION_EDEFAULT = null; + + /** + * The cached value of the '{@link #getDescription() <em>Description</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDescription() + * @generated + * @ordered + */ + protected String description = DESCRIPTION_EDEFAULT; + + /** + * The cached value of the '{@link #getPersistenceUnitMetadata() <em>Persistence Unit Metadata</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPersistenceUnitMetadata() + * @generated + * @ordered + */ + protected XmlPersistenceUnitMetadata persistenceUnitMetadata; + + /** + * The default value of the '{@link #getPackage() <em>Package</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPackage() + * @generated + * @ordered + */ + protected static final String PACKAGE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getPackage() <em>Package</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPackage() + * @generated + * @ordered + */ + protected String package_ = PACKAGE_EDEFAULT; + + /** + * The default value of the '{@link #getSchema() <em>Schema</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSchema() + * @generated + * @ordered + */ + protected static final String SCHEMA_EDEFAULT = null; + + /** + * The cached value of the '{@link #getSchema() <em>Schema</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSchema() + * @generated + * @ordered + */ + protected String schema = SCHEMA_EDEFAULT; + + /** + * The default value of the '{@link #getCatalog() <em>Catalog</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getCatalog() + * @generated + * @ordered + */ + protected static final String CATALOG_EDEFAULT = null; + + /** + * The cached value of the '{@link #getCatalog() <em>Catalog</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getCatalog() + * @generated + * @ordered + */ + protected String catalog = CATALOG_EDEFAULT; + + /** + * The default value of the '{@link #getAccess() <em>Access</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getAccess() + * @generated + * @ordered + */ + protected static final AccessType ACCESS_EDEFAULT = AccessType.PROPERTY; + + /** + * The cached value of the '{@link #getAccess() <em>Access</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getAccess() + * @generated + * @ordered + */ + protected AccessType access = ACCESS_EDEFAULT; + + /** + * The cached value of the '{@link #getSequenceGenerators() <em>Sequence Generators</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSequenceGenerators() + * @generated + * @ordered + */ + protected EList<XmlSequenceGenerator> sequenceGenerators; + + /** + * The cached value of the '{@link #getTableGenerators() <em>Table Generators</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTableGenerators() + * @generated + * @ordered + */ + protected EList<XmlTableGenerator> tableGenerators; + + /** + * The cached value of the '{@link #getNamedQueries() <em>Named Queries</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getNamedQueries() + * @generated + * @ordered + */ + protected EList<XmlNamedQuery> namedQueries; + + /** + * The cached value of the '{@link #getNamedNativeQueries() <em>Named Native Queries</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getNamedNativeQueries() + * @generated + * @ordered + */ + protected EList<XmlNamedNativeQuery> namedNativeQueries; + + /** + * The cached value of the '{@link #getSqlResultSetMappings() <em>Sql Result Set Mappings</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSqlResultSetMappings() + * @generated + * @ordered + */ + protected EList<SqlResultSetMapping> sqlResultSetMappings; + + /** + * The cached value of the '{@link #getMappedSuperclasses() <em>Mapped Superclasses</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMappedSuperclasses() + * @generated + * @ordered + */ + protected EList<XmlMappedSuperclass> mappedSuperclasses; + + /** + * The cached value of the '{@link #getEntities() <em>Entities</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getEntities() + * @generated + * @ordered + */ + protected EList<XmlEntity> entities; + + /** + * The cached value of the '{@link #getEmbeddables() <em>Embeddables</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getEmbeddables() + * @generated + * @ordered + */ + protected EList<XmlEmbeddable> embeddables; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected XmlEntityMappings() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.XML_ENTITY_MAPPINGS; + } + + /** + * Returns the value of the '<em><b>Version</b></em>' attribute. + * The default value is <code>"1.0"</code>. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Version</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Version</em>' attribute. + * @see #isSetVersion() + * @see #unsetVersion() + * @see #setVersion(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEntityMappings_Version() + * @model default="1.0" unsettable="true" dataType="org.eclipse.jpt.eclipselink.core.resource.elorm.VersionType" required="true" + * @generated + */ + public String getVersion() + { + return version; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings#getVersion <em>Version</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Version</em>' attribute. + * @see #isSetVersion() + * @see #unsetVersion() + * @see #getVersion() + * @generated + */ + public void setVersion(String newVersion) + { + String oldVersion = version; + version = newVersion; + boolean oldVersionESet = versionESet; + versionESet = true; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__VERSION, oldVersion, version, !oldVersionESet)); + } + + /** + * Unsets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings#getVersion <em>Version</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isSetVersion() + * @see #getVersion() + * @see #setVersion(String) + * @generated + */ + public void unsetVersion() + { + String oldVersion = version; + boolean oldVersionESet = versionESet; + version = VERSION_EDEFAULT; + versionESet = false; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.UNSET, EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__VERSION, oldVersion, VERSION_EDEFAULT, oldVersionESet)); + } + + /** + * Returns whether the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings#getVersion <em>Version</em>}' attribute is set. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return whether the value of the '<em>Version</em>' attribute is set. + * @see #unsetVersion() + * @see #getVersion() + * @see #setVersion(String) + * @generated + */ + public boolean isSetVersion() + { + return versionESet; + } + + /** + * Returns the value of the '<em><b>Description</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Description</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Description</em>' attribute. + * @see #setDescription(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEntityMappings_Description() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + public String getDescription() + { + return description; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings#getDescription <em>Description</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Description</em>' attribute. + * @see #getDescription() + * @generated + */ + public void setDescription(String newDescription) + { + String oldDescription = description; + description = newDescription; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__DESCRIPTION, oldDescription, description)); + } + + /** + * Returns the value of the '<em><b>Persistence Unit Metadata</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Persistence Unit Metadata</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Persistence Unit Metadata</em>' containment reference. + * @see #setPersistenceUnitMetadata(XmlPersistenceUnitMetadata) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEntityMappings_PersistenceUnitMetadata() + * @model containment="true" + * @generated + */ + public XmlPersistenceUnitMetadata getPersistenceUnitMetadata() + { + return persistenceUnitMetadata; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetPersistenceUnitMetadata(XmlPersistenceUnitMetadata newPersistenceUnitMetadata, NotificationChain msgs) + { + XmlPersistenceUnitMetadata oldPersistenceUnitMetadata = persistenceUnitMetadata; + persistenceUnitMetadata = newPersistenceUnitMetadata; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__PERSISTENCE_UNIT_METADATA, oldPersistenceUnitMetadata, newPersistenceUnitMetadata); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings#getPersistenceUnitMetadata <em>Persistence Unit Metadata</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Persistence Unit Metadata</em>' containment reference. + * @see #getPersistenceUnitMetadata() + * @generated + */ + public void setPersistenceUnitMetadata(XmlPersistenceUnitMetadata newPersistenceUnitMetadata) + { + if (newPersistenceUnitMetadata != persistenceUnitMetadata) + { + NotificationChain msgs = null; + if (persistenceUnitMetadata != null) + msgs = ((InternalEObject)persistenceUnitMetadata).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__PERSISTENCE_UNIT_METADATA, null, msgs); + if (newPersistenceUnitMetadata != null) + msgs = ((InternalEObject)newPersistenceUnitMetadata).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__PERSISTENCE_UNIT_METADATA, null, msgs); + msgs = basicSetPersistenceUnitMetadata(newPersistenceUnitMetadata, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__PERSISTENCE_UNIT_METADATA, newPersistenceUnitMetadata, newPersistenceUnitMetadata)); + } + + /** + * Returns the value of the '<em><b>Package</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Package</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Package</em>' attribute. + * @see #setPackage(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEntityMappings_Package() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + public String getPackage() + { + return package_; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings#getPackage <em>Package</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Package</em>' attribute. + * @see #getPackage() + * @generated + */ + public void setPackage(String newPackage) + { + String oldPackage = package_; + package_ = newPackage; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__PACKAGE, oldPackage, package_)); + } + + /** + * Returns the value of the '<em><b>Schema</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Schema</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Schema</em>' attribute. + * @see #setSchema(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEntityMappings_Schema() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + public String getSchema() + { + return schema; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings#getSchema <em>Schema</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Schema</em>' attribute. + * @see #getSchema() + * @generated + */ + public void setSchema(String newSchema) + { + String oldSchema = schema; + schema = newSchema; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__SCHEMA, oldSchema, schema)); + } + + /** + * Returns the value of the '<em><b>Catalog</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Catalog</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Catalog</em>' attribute. + * @see #setCatalog(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEntityMappings_Catalog() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + public String getCatalog() + { + return catalog; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings#getCatalog <em>Catalog</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Catalog</em>' attribute. + * @see #getCatalog() + * @generated + */ + public void setCatalog(String newCatalog) + { + String oldCatalog = catalog; + catalog = newCatalog; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__CATALOG, oldCatalog, catalog)); + } + + /** + * Returns the value of the '<em><b>Access</b></em>' attribute. + * The default value is <code>"PROPERTY"</code>. + * The literals are from the enumeration {@link org.eclipse.jpt.eclipselink.core.resource.elorm.AccessType}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Access</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Access</em>' attribute. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.AccessType + * @see #setAccess(AccessType) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEntityMappings_Access() + * @model default="PROPERTY" + * @generated + */ + public AccessType getAccess() + { + return access; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntityMappings#getAccess <em>Access</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Access</em>' attribute. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.AccessType + * @see #getAccess() + * @generated + */ + public void setAccess(AccessType newAccess) + { + AccessType oldAccess = access; + access = newAccess == null ? ACCESS_EDEFAULT : newAccess; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__ACCESS, oldAccess, access)); + } + + /** + * Returns the value of the '<em><b>Sequence Generators</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlSequenceGenerator}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Sequence Generators</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Sequence Generators</em>' containment reference list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEntityMappings_SequenceGenerators() + * @model containment="true" + * @generated + */ + public EList<XmlSequenceGenerator> getSequenceGenerators() + { + if (sequenceGenerators == null) + { + sequenceGenerators = new EObjectContainmentEList<XmlSequenceGenerator>(XmlSequenceGenerator.class, this, EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__SEQUENCE_GENERATORS); + } + return sequenceGenerators; + } + + /** + * Returns the value of the '<em><b>Table Generators</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTableGenerator}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Table Generators</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Table Generators</em>' containment reference list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEntityMappings_TableGenerators() + * @model containment="true" + * @generated + */ + public EList<XmlTableGenerator> getTableGenerators() + { + if (tableGenerators == null) + { + tableGenerators = new EObjectContainmentEList<XmlTableGenerator>(XmlTableGenerator.class, this, EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__TABLE_GENERATORS); + } + return tableGenerators; + } + + /** + * Returns the value of the '<em><b>Named Queries</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlNamedQuery}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Named Queries</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Named Queries</em>' containment reference list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEntityMappings_NamedQueries() + * @model containment="true" + * @generated + */ + public EList<XmlNamedQuery> getNamedQueries() + { + if (namedQueries == null) + { + namedQueries = new EObjectContainmentEList<XmlNamedQuery>(XmlNamedQuery.class, this, EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__NAMED_QUERIES); + } + return namedQueries; + } + + /** + * Returns the value of the '<em><b>Named Native Queries</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlNamedNativeQuery}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Named Native Queries</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Named Native Queries</em>' containment reference list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEntityMappings_NamedNativeQueries() + * @model containment="true" + * @generated + */ + public EList<XmlNamedNativeQuery> getNamedNativeQueries() + { + if (namedNativeQueries == null) + { + namedNativeQueries = new EObjectContainmentEList<XmlNamedNativeQuery>(XmlNamedNativeQuery.class, this, EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__NAMED_NATIVE_QUERIES); + } + return namedNativeQueries; + } + + /** + * Returns the value of the '<em><b>Sql Result Set Mappings</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.jpt.eclipselink.core.resource.elorm.SqlResultSetMapping}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Sql Result Set Mappings</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Sql Result Set Mappings</em>' containment reference list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEntityMappings_SqlResultSetMappings() + * @model containment="true" + * @generated + */ + public EList<SqlResultSetMapping> getSqlResultSetMappings() + { + if (sqlResultSetMappings == null) + { + sqlResultSetMappings = new EObjectContainmentEList<SqlResultSetMapping>(SqlResultSetMapping.class, this, EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__SQL_RESULT_SET_MAPPINGS); + } + return sqlResultSetMappings; + } + + /** + * Returns the value of the '<em><b>Mapped Superclasses</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMappedSuperclass}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Mapped Superclasses</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Mapped Superclasses</em>' containment reference list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEntityMappings_MappedSuperclasses() + * @model containment="true" + * @generated + */ + public EList<XmlMappedSuperclass> getMappedSuperclasses() + { + if (mappedSuperclasses == null) + { + mappedSuperclasses = new EObjectContainmentEList<XmlMappedSuperclass>(XmlMappedSuperclass.class, this, EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__MAPPED_SUPERCLASSES); + } + return mappedSuperclasses; + } + + /** + * Returns the value of the '<em><b>Entities</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEntity}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Entities</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Entities</em>' containment reference list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEntityMappings_Entities() + * @model containment="true" + * @generated + */ + public EList<XmlEntity> getEntities() + { + if (entities == null) + { + entities = new EObjectContainmentEList<XmlEntity>(XmlEntity.class, this, EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__ENTITIES); + } + return entities; + } + + /** + * Returns the value of the '<em><b>Embeddables</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlEmbeddable}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Embeddables</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Embeddables</em>' containment reference list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlEntityMappings_Embeddables() + * @model containment="true" + * @generated + */ + public EList<XmlEmbeddable> getEmbeddables() + { + if (embeddables == null) + { + embeddables = new EObjectContainmentEList<XmlEmbeddable>(XmlEmbeddable.class, this, EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__EMBEDDABLES); + } + return embeddables; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__PERSISTENCE_UNIT_METADATA: + return basicSetPersistenceUnitMetadata(null, msgs); + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__SEQUENCE_GENERATORS: + return ((InternalEList<?>)getSequenceGenerators()).basicRemove(otherEnd, msgs); + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__TABLE_GENERATORS: + return ((InternalEList<?>)getTableGenerators()).basicRemove(otherEnd, msgs); + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__NAMED_QUERIES: + return ((InternalEList<?>)getNamedQueries()).basicRemove(otherEnd, msgs); + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__NAMED_NATIVE_QUERIES: + return ((InternalEList<?>)getNamedNativeQueries()).basicRemove(otherEnd, msgs); + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__SQL_RESULT_SET_MAPPINGS: + return ((InternalEList<?>)getSqlResultSetMappings()).basicRemove(otherEnd, msgs); + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__MAPPED_SUPERCLASSES: + return ((InternalEList<?>)getMappedSuperclasses()).basicRemove(otherEnd, msgs); + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__ENTITIES: + return ((InternalEList<?>)getEntities()).basicRemove(otherEnd, msgs); + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__EMBEDDABLES: + return ((InternalEList<?>)getEmbeddables()).basicRemove(otherEnd, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__VERSION: + return getVersion(); + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__DESCRIPTION: + return getDescription(); + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__PERSISTENCE_UNIT_METADATA: + return getPersistenceUnitMetadata(); + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__PACKAGE: + return getPackage(); + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__SCHEMA: + return getSchema(); + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__CATALOG: + return getCatalog(); + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__ACCESS: + return getAccess(); + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__SEQUENCE_GENERATORS: + return getSequenceGenerators(); + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__TABLE_GENERATORS: + return getTableGenerators(); + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__NAMED_QUERIES: + return getNamedQueries(); + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__NAMED_NATIVE_QUERIES: + return getNamedNativeQueries(); + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__SQL_RESULT_SET_MAPPINGS: + return getSqlResultSetMappings(); + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__MAPPED_SUPERCLASSES: + return getMappedSuperclasses(); + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__ENTITIES: + return getEntities(); + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__EMBEDDABLES: + return getEmbeddables(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__VERSION: + setVersion((String)newValue); + return; + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__DESCRIPTION: + setDescription((String)newValue); + return; + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__PERSISTENCE_UNIT_METADATA: + setPersistenceUnitMetadata((XmlPersistenceUnitMetadata)newValue); + return; + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__PACKAGE: + setPackage((String)newValue); + return; + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__SCHEMA: + setSchema((String)newValue); + return; + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__CATALOG: + setCatalog((String)newValue); + return; + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__ACCESS: + setAccess((AccessType)newValue); + return; + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__SEQUENCE_GENERATORS: + getSequenceGenerators().clear(); + getSequenceGenerators().addAll((Collection<? extends XmlSequenceGenerator>)newValue); + return; + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__TABLE_GENERATORS: + getTableGenerators().clear(); + getTableGenerators().addAll((Collection<? extends XmlTableGenerator>)newValue); + return; + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__NAMED_QUERIES: + getNamedQueries().clear(); + getNamedQueries().addAll((Collection<? extends XmlNamedQuery>)newValue); + return; + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__NAMED_NATIVE_QUERIES: + getNamedNativeQueries().clear(); + getNamedNativeQueries().addAll((Collection<? extends XmlNamedNativeQuery>)newValue); + return; + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__SQL_RESULT_SET_MAPPINGS: + getSqlResultSetMappings().clear(); + getSqlResultSetMappings().addAll((Collection<? extends SqlResultSetMapping>)newValue); + return; + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__MAPPED_SUPERCLASSES: + getMappedSuperclasses().clear(); + getMappedSuperclasses().addAll((Collection<? extends XmlMappedSuperclass>)newValue); + return; + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__ENTITIES: + getEntities().clear(); + getEntities().addAll((Collection<? extends XmlEntity>)newValue); + return; + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__EMBEDDABLES: + getEmbeddables().clear(); + getEmbeddables().addAll((Collection<? extends XmlEmbeddable>)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__VERSION: + unsetVersion(); + return; + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__DESCRIPTION: + setDescription(DESCRIPTION_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__PERSISTENCE_UNIT_METADATA: + setPersistenceUnitMetadata((XmlPersistenceUnitMetadata)null); + return; + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__PACKAGE: + setPackage(PACKAGE_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__SCHEMA: + setSchema(SCHEMA_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__CATALOG: + setCatalog(CATALOG_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__ACCESS: + setAccess(ACCESS_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__SEQUENCE_GENERATORS: + getSequenceGenerators().clear(); + return; + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__TABLE_GENERATORS: + getTableGenerators().clear(); + return; + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__NAMED_QUERIES: + getNamedQueries().clear(); + return; + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__NAMED_NATIVE_QUERIES: + getNamedNativeQueries().clear(); + return; + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__SQL_RESULT_SET_MAPPINGS: + getSqlResultSetMappings().clear(); + return; + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__MAPPED_SUPERCLASSES: + getMappedSuperclasses().clear(); + return; + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__ENTITIES: + getEntities().clear(); + return; + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__EMBEDDABLES: + getEmbeddables().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__VERSION: + return isSetVersion(); + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__DESCRIPTION: + return DESCRIPTION_EDEFAULT == null ? description != null : !DESCRIPTION_EDEFAULT.equals(description); + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__PERSISTENCE_UNIT_METADATA: + return persistenceUnitMetadata != null; + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__PACKAGE: + return PACKAGE_EDEFAULT == null ? package_ != null : !PACKAGE_EDEFAULT.equals(package_); + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__SCHEMA: + return SCHEMA_EDEFAULT == null ? schema != null : !SCHEMA_EDEFAULT.equals(schema); + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__CATALOG: + return CATALOG_EDEFAULT == null ? catalog != null : !CATALOG_EDEFAULT.equals(catalog); + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__ACCESS: + return access != ACCESS_EDEFAULT; + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__SEQUENCE_GENERATORS: + return sequenceGenerators != null && !sequenceGenerators.isEmpty(); + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__TABLE_GENERATORS: + return tableGenerators != null && !tableGenerators.isEmpty(); + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__NAMED_QUERIES: + return namedQueries != null && !namedQueries.isEmpty(); + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__NAMED_NATIVE_QUERIES: + return namedNativeQueries != null && !namedNativeQueries.isEmpty(); + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__SQL_RESULT_SET_MAPPINGS: + return sqlResultSetMappings != null && !sqlResultSetMappings.isEmpty(); + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__MAPPED_SUPERCLASSES: + return mappedSuperclasses != null && !mappedSuperclasses.isEmpty(); + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__ENTITIES: + return entities != null && !entities.isEmpty(); + case EclipseLinkOrmPackage.XML_ENTITY_MAPPINGS__EMBEDDABLES: + return embeddables != null && !embeddables.isEmpty(); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (version: "); + if (versionESet) result.append(version); else result.append("<unset>"); + result.append(", description: "); + result.append(description); + result.append(", package: "); + result.append(package_); + result.append(", schema: "); + result.append(schema); + result.append(", catalog: "); + result.append(catalog); + result.append(", access: "); + result.append(access); + result.append(')'); + return result.toString(); + } + +} // XmlEntityMappings diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlGeneratedValue.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlGeneratedValue.java new file mode 100644 index 0000000000..798f8a711f --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlGeneratedValue.java @@ -0,0 +1,91 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.jpt.core.resource.common.JpaEObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Generated Value</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlGeneratedValue#getGenerator <em>Generator</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlGeneratedValue#getStrategy <em>Strategy</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlGeneratedValue() + * @model kind="class" interface="true" abstract="true" + * @extends JpaEObject + * @generated + */ +public interface XmlGeneratedValue extends JpaEObject +{ + /** + * Returns the value of the '<em><b>Generator</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Generator</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Generator</em>' attribute. + * @see #setGenerator(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlGeneratedValue_Generator() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + String getGenerator(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlGeneratedValue#getGenerator <em>Generator</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Generator</em>' attribute. + * @see #getGenerator() + * @generated + */ + void setGenerator(String value); + + /** + * Returns the value of the '<em><b>Strategy</b></em>' attribute. + * The default value is <code>"TABLE"</code>. + * The literals are from the enumeration {@link org.eclipse.jpt.eclipselink.core.resource.elorm.GenerationType}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Strategy</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Strategy</em>' attribute. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.GenerationType + * @see #setStrategy(GenerationType) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlGeneratedValue_Strategy() + * @model default="TABLE" + * @generated + */ + GenerationType getStrategy(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlGeneratedValue#getStrategy <em>Strategy</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Strategy</em>' attribute. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.GenerationType + * @see #getStrategy() + * @generated + */ + void setStrategy(GenerationType value); + +} // XmlGeneratedValue diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlGeneratedValueImpl.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlGeneratedValueImpl.java new file mode 100644 index 0000000000..83503a6a8d --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlGeneratedValueImpl.java @@ -0,0 +1,263 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.jpt.core.resource.common.AbstractJpaEObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Generated Value Impl</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlGeneratedValueImpl() + * @model kind="class" + * @generated + */ +public class XmlGeneratedValueImpl extends AbstractJpaEObject implements XmlGeneratedValue +{ + /** + * The default value of the '{@link #getGenerator() <em>Generator</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getGenerator() + * @generated + * @ordered + */ + protected static final String GENERATOR_EDEFAULT = null; + + /** + * The cached value of the '{@link #getGenerator() <em>Generator</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getGenerator() + * @generated + * @ordered + */ + protected String generator = GENERATOR_EDEFAULT; + + /** + * The default value of the '{@link #getStrategy() <em>Strategy</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getStrategy() + * @generated + * @ordered + */ + protected static final GenerationType STRATEGY_EDEFAULT = GenerationType.TABLE; + + /** + * The cached value of the '{@link #getStrategy() <em>Strategy</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getStrategy() + * @generated + * @ordered + */ + protected GenerationType strategy = STRATEGY_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected XmlGeneratedValueImpl() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.XML_GENERATED_VALUE_IMPL; + } + + /** + * Returns the value of the '<em><b>Generator</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Generator</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Generator</em>' attribute. + * @see #setGenerator(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlGeneratedValue_Generator() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + public String getGenerator() + { + return generator; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlGeneratedValueImpl#getGenerator <em>Generator</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Generator</em>' attribute. + * @see #getGenerator() + * @generated + */ + public void setGenerator(String newGenerator) + { + String oldGenerator = generator; + generator = newGenerator; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_GENERATED_VALUE_IMPL__GENERATOR, oldGenerator, generator)); + } + + /** + * Returns the value of the '<em><b>Strategy</b></em>' attribute. + * The default value is <code>"TABLE"</code>. + * The literals are from the enumeration {@link org.eclipse.jpt.eclipselink.core.resource.elorm.GenerationType}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Strategy</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Strategy</em>' attribute. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.GenerationType + * @see #setStrategy(GenerationType) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlGeneratedValue_Strategy() + * @model default="TABLE" + * @generated + */ + public GenerationType getStrategy() + { + return strategy; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlGeneratedValueImpl#getStrategy <em>Strategy</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Strategy</em>' attribute. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.GenerationType + * @see #getStrategy() + * @generated + */ + public void setStrategy(GenerationType newStrategy) + { + GenerationType oldStrategy = strategy; + strategy = newStrategy == null ? STRATEGY_EDEFAULT : newStrategy; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_GENERATED_VALUE_IMPL__STRATEGY, oldStrategy, strategy)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_GENERATED_VALUE_IMPL__GENERATOR: + return getGenerator(); + case EclipseLinkOrmPackage.XML_GENERATED_VALUE_IMPL__STRATEGY: + return getStrategy(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_GENERATED_VALUE_IMPL__GENERATOR: + setGenerator((String)newValue); + return; + case EclipseLinkOrmPackage.XML_GENERATED_VALUE_IMPL__STRATEGY: + setStrategy((GenerationType)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_GENERATED_VALUE_IMPL__GENERATOR: + setGenerator(GENERATOR_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_GENERATED_VALUE_IMPL__STRATEGY: + setStrategy(STRATEGY_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_GENERATED_VALUE_IMPL__GENERATOR: + return GENERATOR_EDEFAULT == null ? generator != null : !GENERATOR_EDEFAULT.equals(generator); + case EclipseLinkOrmPackage.XML_GENERATED_VALUE_IMPL__STRATEGY: + return strategy != STRATEGY_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (generator: "); + result.append(generator); + result.append(", strategy: "); + result.append(strategy); + result.append(')'); + return result.toString(); + } + +} // XmlGeneratedValueImpl diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlGenerator.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlGenerator.java new file mode 100644 index 0000000000..61f095c6a7 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlGenerator.java @@ -0,0 +1,114 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.jpt.core.resource.common.JpaEObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Generator</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlGenerator#getName <em>Name</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlGenerator#getInitialValue <em>Initial Value</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlGenerator#getAllocationSize <em>Allocation Size</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlGenerator() + * @model kind="class" interface="true" abstract="true" + * @extends JpaEObject + * @generated + */ +public interface XmlGenerator extends JpaEObject +{ + /** + * Returns the value of the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Name</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Name</em>' attribute. + * @see #setName(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlGenerator_Name() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" required="true" + * @generated + */ + String getName(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlGenerator#getName <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Name</em>' attribute. + * @see #getName() + * @generated + */ + void setName(String value); + + /** + * Returns the value of the '<em><b>Initial Value</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Initial Value</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Initial Value</em>' attribute. + * @see #setInitialValue(Integer) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlGenerator_InitialValue() + * @model dataType="org.eclipse.emf.ecore.xml.type.IntObject" + * @generated + */ + Integer getInitialValue(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlGenerator#getInitialValue <em>Initial Value</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Initial Value</em>' attribute. + * @see #getInitialValue() + * @generated + */ + void setInitialValue(Integer value); + + /** + * Returns the value of the '<em><b>Allocation Size</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Allocation Size</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Allocation Size</em>' attribute. + * @see #setAllocationSize(Integer) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlGenerator_AllocationSize() + * @model dataType="org.eclipse.emf.ecore.xml.type.IntObject" + * @generated + */ + Integer getAllocationSize(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlGenerator#getAllocationSize <em>Allocation Size</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Allocation Size</em>' attribute. + * @see #getAllocationSize() + * @generated + */ + void setAllocationSize(Integer value); + +} // XmlGenerator diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlId.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlId.java new file mode 100644 index 0000000000..91efdbba6f --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlId.java @@ -0,0 +1,142 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Id</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlId#getGeneratedValue <em>Generated Value</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlId#getTemporal <em>Temporal</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlId#getTableGenerator <em>Table Generator</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlId#getSequenceGenerator <em>Sequence Generator</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlId() + * @model kind="class" interface="true" abstract="true" + * @generated + */ +public interface XmlId extends XmlAttributeMapping, ColumnMapping +{ + /** + * Returns the value of the '<em><b>Generated Value</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Generated Value</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Generated Value</em>' containment reference. + * @see #setGeneratedValue(XmlGeneratedValue) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlId_GeneratedValue() + * @model containment="true" + * @generated + */ + XmlGeneratedValue getGeneratedValue(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlId#getGeneratedValue <em>Generated Value</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Generated Value</em>' containment reference. + * @see #getGeneratedValue() + * @generated + */ + void setGeneratedValue(XmlGeneratedValue value); + + /** + * Returns the value of the '<em><b>Temporal</b></em>' attribute. + * The literals are from the enumeration {@link org.eclipse.jpt.eclipselink.core.resource.elorm.TemporalType}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Temporal</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Temporal</em>' attribute. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.TemporalType + * @see #setTemporal(TemporalType) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlId_Temporal() + * @model + * @generated + */ + TemporalType getTemporal(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlId#getTemporal <em>Temporal</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Temporal</em>' attribute. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.TemporalType + * @see #getTemporal() + * @generated + */ + void setTemporal(TemporalType value); + + /** + * Returns the value of the '<em><b>Table Generator</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Table Generator</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Table Generator</em>' containment reference. + * @see #setTableGenerator(XmlTableGenerator) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlId_TableGenerator() + * @model containment="true" + * @generated + */ + XmlTableGenerator getTableGenerator(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlId#getTableGenerator <em>Table Generator</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Table Generator</em>' containment reference. + * @see #getTableGenerator() + * @generated + */ + void setTableGenerator(XmlTableGenerator value); + + /** + * Returns the value of the '<em><b>Sequence Generator</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Sequence Generator</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Sequence Generator</em>' containment reference. + * @see #setSequenceGenerator(XmlSequenceGenerator) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlId_SequenceGenerator() + * @model containment="true" + * @generated + */ + XmlSequenceGenerator getSequenceGenerator(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlId#getSequenceGenerator <em>Sequence Generator</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Sequence Generator</em>' containment reference. + * @see #getSequenceGenerator() + * @generated + */ + void setSequenceGenerator(XmlSequenceGenerator value); + +} // XmlId diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlIdClass.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlIdClass.java new file mode 100644 index 0000000000..6758bc83e3 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlIdClass.java @@ -0,0 +1,200 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.jpt.core.resource.common.AbstractJpaEObject; +import org.eclipse.jpt.core.resource.common.JpaEObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Id Class</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlIdClass#getClassName <em>Class Name</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlIdClass() + * @model kind="class" + * @extends JpaEObject + * @generated + */ +public class XmlIdClass extends AbstractJpaEObject implements JpaEObject +{ + /** + * The default value of the '{@link #getClassName() <em>Class Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getClassName() + * @generated + * @ordered + */ + protected static final String CLASS_NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getClassName() <em>Class Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getClassName() + * @generated + * @ordered + */ + protected String className = CLASS_NAME_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected XmlIdClass() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.XML_ID_CLASS; + } + + /** + * Returns the value of the '<em><b>Class Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Class Name</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Class Name</em>' attribute. + * @see #setClassName(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlIdClass_ClassName() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" required="true" + * @generated + */ + public String getClassName() + { + return className; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlIdClass#getClassName <em>Class Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Class Name</em>' attribute. + * @see #getClassName() + * @generated + */ + public void setClassName(String newClassName) + { + String oldClassName = className; + className = newClassName; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ID_CLASS__CLASS_NAME, oldClassName, className)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_ID_CLASS__CLASS_NAME: + return getClassName(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_ID_CLASS__CLASS_NAME: + setClassName((String)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_ID_CLASS__CLASS_NAME: + setClassName(CLASS_NAME_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_ID_CLASS__CLASS_NAME: + return CLASS_NAME_EDEFAULT == null ? className != null : !CLASS_NAME_EDEFAULT.equals(className); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (className: "); + result.append(className); + result.append(')'); + return result.toString(); + } + +} // XmlIdClass diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlIdImpl.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlIdImpl.java new file mode 100644 index 0000000000..7e9eb5b4e4 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlIdImpl.java @@ -0,0 +1,597 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Id Impl</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlIdImpl() + * @model kind="class" + * @generated + */ +public class XmlIdImpl extends AbstractXmlAttributeMapping implements XmlId +{ + /** + * The cached value of the '{@link #getColumn() <em>Column</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getColumn() + * @generated + * @ordered + */ + protected XmlColumn column; + + /** + * The cached value of the '{@link #getGeneratedValue() <em>Generated Value</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getGeneratedValue() + * @generated + * @ordered + */ + protected XmlGeneratedValue generatedValue; + + /** + * The default value of the '{@link #getTemporal() <em>Temporal</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTemporal() + * @generated + * @ordered + */ + protected static final TemporalType TEMPORAL_EDEFAULT = TemporalType.DATE; + + /** + * The cached value of the '{@link #getTemporal() <em>Temporal</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTemporal() + * @generated + * @ordered + */ + protected TemporalType temporal = TEMPORAL_EDEFAULT; + + /** + * The cached value of the '{@link #getTableGenerator() <em>Table Generator</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTableGenerator() + * @generated + * @ordered + */ + protected XmlTableGenerator tableGenerator; + + /** + * The cached value of the '{@link #getSequenceGenerator() <em>Sequence Generator</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSequenceGenerator() + * @generated + * @ordered + */ + protected XmlSequenceGenerator sequenceGenerator; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected XmlIdImpl() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.XML_ID_IMPL; + } + + /** + * Returns the value of the '<em><b>Column</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Column</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Column</em>' containment reference. + * @see #setColumn(XmlColumn) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getColumnMapping_Column() + * @model containment="true" + * @generated + */ + public XmlColumn getColumn() + { + return column; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetColumn(XmlColumn newColumn, NotificationChain msgs) + { + XmlColumn oldColumn = column; + column = newColumn; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ID_IMPL__COLUMN, oldColumn, newColumn); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlIdImpl#getColumn <em>Column</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Column</em>' containment reference. + * @see #getColumn() + * @generated + */ + public void setColumn(XmlColumn newColumn) + { + if (newColumn != column) + { + NotificationChain msgs = null; + if (column != null) + msgs = ((InternalEObject)column).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_ID_IMPL__COLUMN, null, msgs); + if (newColumn != null) + msgs = ((InternalEObject)newColumn).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_ID_IMPL__COLUMN, null, msgs); + msgs = basicSetColumn(newColumn, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ID_IMPL__COLUMN, newColumn, newColumn)); + } + + /** + * Returns the value of the '<em><b>Generated Value</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Generated Value</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Generated Value</em>' containment reference. + * @see #setGeneratedValue(XmlGeneratedValue) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlId_GeneratedValue() + * @model containment="true" + * @generated + */ + public XmlGeneratedValue getGeneratedValue() + { + return generatedValue; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetGeneratedValue(XmlGeneratedValue newGeneratedValue, NotificationChain msgs) + { + XmlGeneratedValue oldGeneratedValue = generatedValue; + generatedValue = newGeneratedValue; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ID_IMPL__GENERATED_VALUE, oldGeneratedValue, newGeneratedValue); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlIdImpl#getGeneratedValue <em>Generated Value</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Generated Value</em>' containment reference. + * @see #getGeneratedValue() + * @generated + */ + public void setGeneratedValue(XmlGeneratedValue newGeneratedValue) + { + if (newGeneratedValue != generatedValue) + { + NotificationChain msgs = null; + if (generatedValue != null) + msgs = ((InternalEObject)generatedValue).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_ID_IMPL__GENERATED_VALUE, null, msgs); + if (newGeneratedValue != null) + msgs = ((InternalEObject)newGeneratedValue).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_ID_IMPL__GENERATED_VALUE, null, msgs); + msgs = basicSetGeneratedValue(newGeneratedValue, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ID_IMPL__GENERATED_VALUE, newGeneratedValue, newGeneratedValue)); + } + + /** + * Returns the value of the '<em><b>Temporal</b></em>' attribute. + * The literals are from the enumeration {@link org.eclipse.jpt.eclipselink.core.resource.elorm.TemporalType}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Temporal</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Temporal</em>' attribute. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.TemporalType + * @see #setTemporal(TemporalType) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlId_Temporal() + * @model + * @generated + */ + public TemporalType getTemporal() + { + return temporal; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlIdImpl#getTemporal <em>Temporal</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Temporal</em>' attribute. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.TemporalType + * @see #getTemporal() + * @generated + */ + public void setTemporal(TemporalType newTemporal) + { + TemporalType oldTemporal = temporal; + temporal = newTemporal == null ? TEMPORAL_EDEFAULT : newTemporal; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ID_IMPL__TEMPORAL, oldTemporal, temporal)); + } + + /** + * Returns the value of the '<em><b>Table Generator</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Table Generator</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Table Generator</em>' containment reference. + * @see #setTableGenerator(XmlTableGenerator) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlId_TableGenerator() + * @model containment="true" + * @generated + */ + public XmlTableGenerator getTableGenerator() + { + return tableGenerator; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetTableGenerator(XmlTableGenerator newTableGenerator, NotificationChain msgs) + { + XmlTableGenerator oldTableGenerator = tableGenerator; + tableGenerator = newTableGenerator; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ID_IMPL__TABLE_GENERATOR, oldTableGenerator, newTableGenerator); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlIdImpl#getTableGenerator <em>Table Generator</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Table Generator</em>' containment reference. + * @see #getTableGenerator() + * @generated + */ + public void setTableGenerator(XmlTableGenerator newTableGenerator) + { + if (newTableGenerator != tableGenerator) + { + NotificationChain msgs = null; + if (tableGenerator != null) + msgs = ((InternalEObject)tableGenerator).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_ID_IMPL__TABLE_GENERATOR, null, msgs); + if (newTableGenerator != null) + msgs = ((InternalEObject)newTableGenerator).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_ID_IMPL__TABLE_GENERATOR, null, msgs); + msgs = basicSetTableGenerator(newTableGenerator, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ID_IMPL__TABLE_GENERATOR, newTableGenerator, newTableGenerator)); + } + + /** + * Returns the value of the '<em><b>Sequence Generator</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Sequence Generator</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Sequence Generator</em>' containment reference. + * @see #setSequenceGenerator(XmlSequenceGenerator) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlId_SequenceGenerator() + * @model containment="true" + * @generated + */ + public XmlSequenceGenerator getSequenceGenerator() + { + return sequenceGenerator; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetSequenceGenerator(XmlSequenceGenerator newSequenceGenerator, NotificationChain msgs) + { + XmlSequenceGenerator oldSequenceGenerator = sequenceGenerator; + sequenceGenerator = newSequenceGenerator; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ID_IMPL__SEQUENCE_GENERATOR, oldSequenceGenerator, newSequenceGenerator); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlIdImpl#getSequenceGenerator <em>Sequence Generator</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Sequence Generator</em>' containment reference. + * @see #getSequenceGenerator() + * @generated + */ + public void setSequenceGenerator(XmlSequenceGenerator newSequenceGenerator) + { + if (newSequenceGenerator != sequenceGenerator) + { + NotificationChain msgs = null; + if (sequenceGenerator != null) + msgs = ((InternalEObject)sequenceGenerator).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_ID_IMPL__SEQUENCE_GENERATOR, null, msgs); + if (newSequenceGenerator != null) + msgs = ((InternalEObject)newSequenceGenerator).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_ID_IMPL__SEQUENCE_GENERATOR, null, msgs); + msgs = basicSetSequenceGenerator(newSequenceGenerator, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ID_IMPL__SEQUENCE_GENERATOR, newSequenceGenerator, newSequenceGenerator)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_ID_IMPL__COLUMN: + return basicSetColumn(null, msgs); + case EclipseLinkOrmPackage.XML_ID_IMPL__GENERATED_VALUE: + return basicSetGeneratedValue(null, msgs); + case EclipseLinkOrmPackage.XML_ID_IMPL__TABLE_GENERATOR: + return basicSetTableGenerator(null, msgs); + case EclipseLinkOrmPackage.XML_ID_IMPL__SEQUENCE_GENERATOR: + return basicSetSequenceGenerator(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_ID_IMPL__COLUMN: + return getColumn(); + case EclipseLinkOrmPackage.XML_ID_IMPL__GENERATED_VALUE: + return getGeneratedValue(); + case EclipseLinkOrmPackage.XML_ID_IMPL__TEMPORAL: + return getTemporal(); + case EclipseLinkOrmPackage.XML_ID_IMPL__TABLE_GENERATOR: + return getTableGenerator(); + case EclipseLinkOrmPackage.XML_ID_IMPL__SEQUENCE_GENERATOR: + return getSequenceGenerator(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_ID_IMPL__COLUMN: + setColumn((XmlColumn)newValue); + return; + case EclipseLinkOrmPackage.XML_ID_IMPL__GENERATED_VALUE: + setGeneratedValue((XmlGeneratedValue)newValue); + return; + case EclipseLinkOrmPackage.XML_ID_IMPL__TEMPORAL: + setTemporal((TemporalType)newValue); + return; + case EclipseLinkOrmPackage.XML_ID_IMPL__TABLE_GENERATOR: + setTableGenerator((XmlTableGenerator)newValue); + return; + case EclipseLinkOrmPackage.XML_ID_IMPL__SEQUENCE_GENERATOR: + setSequenceGenerator((XmlSequenceGenerator)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_ID_IMPL__COLUMN: + setColumn((XmlColumn)null); + return; + case EclipseLinkOrmPackage.XML_ID_IMPL__GENERATED_VALUE: + setGeneratedValue((XmlGeneratedValue)null); + return; + case EclipseLinkOrmPackage.XML_ID_IMPL__TEMPORAL: + setTemporal(TEMPORAL_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_ID_IMPL__TABLE_GENERATOR: + setTableGenerator((XmlTableGenerator)null); + return; + case EclipseLinkOrmPackage.XML_ID_IMPL__SEQUENCE_GENERATOR: + setSequenceGenerator((XmlSequenceGenerator)null); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_ID_IMPL__COLUMN: + return column != null; + case EclipseLinkOrmPackage.XML_ID_IMPL__GENERATED_VALUE: + return generatedValue != null; + case EclipseLinkOrmPackage.XML_ID_IMPL__TEMPORAL: + return temporal != TEMPORAL_EDEFAULT; + case EclipseLinkOrmPackage.XML_ID_IMPL__TABLE_GENERATOR: + return tableGenerator != null; + case EclipseLinkOrmPackage.XML_ID_IMPL__SEQUENCE_GENERATOR: + return sequenceGenerator != null; + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) + { + if (baseClass == ColumnMapping.class) + { + switch (derivedFeatureID) + { + case EclipseLinkOrmPackage.XML_ID_IMPL__COLUMN: return EclipseLinkOrmPackage.COLUMN_MAPPING__COLUMN; + default: return -1; + } + } + if (baseClass == XmlId.class) + { + switch (derivedFeatureID) + { + case EclipseLinkOrmPackage.XML_ID_IMPL__GENERATED_VALUE: return EclipseLinkOrmPackage.XML_ID__GENERATED_VALUE; + case EclipseLinkOrmPackage.XML_ID_IMPL__TEMPORAL: return EclipseLinkOrmPackage.XML_ID__TEMPORAL; + case EclipseLinkOrmPackage.XML_ID_IMPL__TABLE_GENERATOR: return EclipseLinkOrmPackage.XML_ID__TABLE_GENERATOR; + case EclipseLinkOrmPackage.XML_ID_IMPL__SEQUENCE_GENERATOR: return EclipseLinkOrmPackage.XML_ID__SEQUENCE_GENERATOR; + default: return -1; + } + } + return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) + { + if (baseClass == ColumnMapping.class) + { + switch (baseFeatureID) + { + case EclipseLinkOrmPackage.COLUMN_MAPPING__COLUMN: return EclipseLinkOrmPackage.XML_ID_IMPL__COLUMN; + default: return -1; + } + } + if (baseClass == XmlId.class) + { + switch (baseFeatureID) + { + case EclipseLinkOrmPackage.XML_ID__GENERATED_VALUE: return EclipseLinkOrmPackage.XML_ID_IMPL__GENERATED_VALUE; + case EclipseLinkOrmPackage.XML_ID__TEMPORAL: return EclipseLinkOrmPackage.XML_ID_IMPL__TEMPORAL; + case EclipseLinkOrmPackage.XML_ID__TABLE_GENERATOR: return EclipseLinkOrmPackage.XML_ID_IMPL__TABLE_GENERATOR; + case EclipseLinkOrmPackage.XML_ID__SEQUENCE_GENERATOR: return EclipseLinkOrmPackage.XML_ID_IMPL__SEQUENCE_GENERATOR; + default: return -1; + } + } + return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (temporal: "); + result.append(temporal); + result.append(')'); + return result.toString(); + } + +} // XmlIdImpl diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlJoinColumn.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlJoinColumn.java new file mode 100644 index 0000000000..051d266383 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlJoinColumn.java @@ -0,0 +1,58 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Join Column</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlJoinColumn#getReferencedColumnName <em>Referenced Column Name</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlJoinColumn() + * @model kind="class" interface="true" abstract="true" + * @generated + */ +public interface XmlJoinColumn extends XmlAbstractColumn +{ + /** + * Returns the value of the '<em><b>Referenced Column Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Referenced Column Name</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Referenced Column Name</em>' attribute. + * @see #setReferencedColumnName(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlJoinColumn_ReferencedColumnName() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + String getReferencedColumnName(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlJoinColumn#getReferencedColumnName <em>Referenced Column Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Referenced Column Name</em>' attribute. + * @see #getReferencedColumnName() + * @generated + */ + void setReferencedColumnName(String value); + +} // XmlJoinColumn diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlJoinColumnImpl.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlJoinColumnImpl.java new file mode 100644 index 0000000000..6229842ed0 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlJoinColumnImpl.java @@ -0,0 +1,228 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Join Column Impl</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlJoinColumnImpl() + * @model kind="class" + * @generated + */ +public class XmlJoinColumnImpl extends AbstractXmlAbstractColumn implements XmlJoinColumn +{ + /** + * The default value of the '{@link #getReferencedColumnName() <em>Referenced Column Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getReferencedColumnName() + * @generated + * @ordered + */ + protected static final String REFERENCED_COLUMN_NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getReferencedColumnName() <em>Referenced Column Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getReferencedColumnName() + * @generated + * @ordered + */ + protected String referencedColumnName = REFERENCED_COLUMN_NAME_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected XmlJoinColumnImpl() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.XML_JOIN_COLUMN_IMPL; + } + + /** + * Returns the value of the '<em><b>Referenced Column Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Referenced Column Name</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Referenced Column Name</em>' attribute. + * @see #setReferencedColumnName(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlJoinColumn_ReferencedColumnName() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + public String getReferencedColumnName() + { + return referencedColumnName; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlJoinColumnImpl#getReferencedColumnName <em>Referenced Column Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Referenced Column Name</em>' attribute. + * @see #getReferencedColumnName() + * @generated + */ + public void setReferencedColumnName(String newReferencedColumnName) + { + String oldReferencedColumnName = referencedColumnName; + referencedColumnName = newReferencedColumnName; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_JOIN_COLUMN_IMPL__REFERENCED_COLUMN_NAME, oldReferencedColumnName, referencedColumnName)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_JOIN_COLUMN_IMPL__REFERENCED_COLUMN_NAME: + return getReferencedColumnName(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_JOIN_COLUMN_IMPL__REFERENCED_COLUMN_NAME: + setReferencedColumnName((String)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_JOIN_COLUMN_IMPL__REFERENCED_COLUMN_NAME: + setReferencedColumnName(REFERENCED_COLUMN_NAME_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_JOIN_COLUMN_IMPL__REFERENCED_COLUMN_NAME: + return REFERENCED_COLUMN_NAME_EDEFAULT == null ? referencedColumnName != null : !REFERENCED_COLUMN_NAME_EDEFAULT.equals(referencedColumnName); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) + { + if (baseClass == XmlJoinColumn.class) + { + switch (derivedFeatureID) + { + case EclipseLinkOrmPackage.XML_JOIN_COLUMN_IMPL__REFERENCED_COLUMN_NAME: return EclipseLinkOrmPackage.XML_JOIN_COLUMN__REFERENCED_COLUMN_NAME; + default: return -1; + } + } + return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) + { + if (baseClass == XmlJoinColumn.class) + { + switch (baseFeatureID) + { + case EclipseLinkOrmPackage.XML_JOIN_COLUMN__REFERENCED_COLUMN_NAME: return EclipseLinkOrmPackage.XML_JOIN_COLUMN_IMPL__REFERENCED_COLUMN_NAME; + default: return -1; + } + } + return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (referencedColumnName: "); + result.append(referencedColumnName); + result.append(')'); + return result.toString(); + } + +} // XmlJoinColumnImpl diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlJoinTable.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlJoinTable.java new file mode 100644 index 0000000000..7c01550a46 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlJoinTable.java @@ -0,0 +1,66 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.emf.common.util.EList; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Join Table</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlJoinTable#getJoinColumns <em>Join Columns</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlJoinTable#getInverseJoinColumns <em>Inverse Join Columns</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlJoinTable() + * @model kind="class" interface="true" abstract="true" + * @generated + */ +public interface XmlJoinTable extends XmlBaseTable +{ + /** + * Returns the value of the '<em><b>Join Columns</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlJoinColumn}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Join Columns</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Join Columns</em>' containment reference list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlJoinTable_JoinColumns() + * @model containment="true" + * @generated + */ + EList<XmlJoinColumn> getJoinColumns(); + + /** + * Returns the value of the '<em><b>Inverse Join Columns</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlJoinColumn}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Inverse Join Columns</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Inverse Join Columns</em>' containment reference list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlJoinTable_InverseJoinColumns() + * @model containment="true" + * @generated + */ + EList<XmlJoinColumn> getInverseJoinColumns(); + +} // XmlJoinTable diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlJoinTableImpl.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlJoinTableImpl.java new file mode 100644 index 0000000000..62bc74e6fd --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlJoinTableImpl.java @@ -0,0 +1,261 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Join Table Impl</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlJoinTableImpl() + * @model kind="class" + * @generated + */ +public class XmlJoinTableImpl extends AbstractXmlBaseTable implements XmlJoinTable +{ + /** + * The cached value of the '{@link #getJoinColumns() <em>Join Columns</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getJoinColumns() + * @generated + * @ordered + */ + protected EList<XmlJoinColumn> joinColumns; + + /** + * The cached value of the '{@link #getInverseJoinColumns() <em>Inverse Join Columns</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getInverseJoinColumns() + * @generated + * @ordered + */ + protected EList<XmlJoinColumn> inverseJoinColumns; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected XmlJoinTableImpl() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.XML_JOIN_TABLE_IMPL; + } + + /** + * Returns the value of the '<em><b>Join Columns</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlJoinColumn}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Join Columns</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Join Columns</em>' containment reference list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlJoinTable_JoinColumns() + * @model containment="true" + * @generated + */ + public EList<XmlJoinColumn> getJoinColumns() + { + if (joinColumns == null) + { + joinColumns = new EObjectContainmentEList<XmlJoinColumn>(XmlJoinColumn.class, this, EclipseLinkOrmPackage.XML_JOIN_TABLE_IMPL__JOIN_COLUMNS); + } + return joinColumns; + } + + /** + * Returns the value of the '<em><b>Inverse Join Columns</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlJoinColumn}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Inverse Join Columns</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Inverse Join Columns</em>' containment reference list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlJoinTable_InverseJoinColumns() + * @model containment="true" + * @generated + */ + public EList<XmlJoinColumn> getInverseJoinColumns() + { + if (inverseJoinColumns == null) + { + inverseJoinColumns = new EObjectContainmentEList<XmlJoinColumn>(XmlJoinColumn.class, this, EclipseLinkOrmPackage.XML_JOIN_TABLE_IMPL__INVERSE_JOIN_COLUMNS); + } + return inverseJoinColumns; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_JOIN_TABLE_IMPL__JOIN_COLUMNS: + return ((InternalEList<?>)getJoinColumns()).basicRemove(otherEnd, msgs); + case EclipseLinkOrmPackage.XML_JOIN_TABLE_IMPL__INVERSE_JOIN_COLUMNS: + return ((InternalEList<?>)getInverseJoinColumns()).basicRemove(otherEnd, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_JOIN_TABLE_IMPL__JOIN_COLUMNS: + return getJoinColumns(); + case EclipseLinkOrmPackage.XML_JOIN_TABLE_IMPL__INVERSE_JOIN_COLUMNS: + return getInverseJoinColumns(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_JOIN_TABLE_IMPL__JOIN_COLUMNS: + getJoinColumns().clear(); + getJoinColumns().addAll((Collection<? extends XmlJoinColumn>)newValue); + return; + case EclipseLinkOrmPackage.XML_JOIN_TABLE_IMPL__INVERSE_JOIN_COLUMNS: + getInverseJoinColumns().clear(); + getInverseJoinColumns().addAll((Collection<? extends XmlJoinColumn>)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_JOIN_TABLE_IMPL__JOIN_COLUMNS: + getJoinColumns().clear(); + return; + case EclipseLinkOrmPackage.XML_JOIN_TABLE_IMPL__INVERSE_JOIN_COLUMNS: + getInverseJoinColumns().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_JOIN_TABLE_IMPL__JOIN_COLUMNS: + return joinColumns != null && !joinColumns.isEmpty(); + case EclipseLinkOrmPackage.XML_JOIN_TABLE_IMPL__INVERSE_JOIN_COLUMNS: + return inverseJoinColumns != null && !inverseJoinColumns.isEmpty(); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) + { + if (baseClass == XmlJoinTable.class) + { + switch (derivedFeatureID) + { + case EclipseLinkOrmPackage.XML_JOIN_TABLE_IMPL__JOIN_COLUMNS: return EclipseLinkOrmPackage.XML_JOIN_TABLE__JOIN_COLUMNS; + case EclipseLinkOrmPackage.XML_JOIN_TABLE_IMPL__INVERSE_JOIN_COLUMNS: return EclipseLinkOrmPackage.XML_JOIN_TABLE__INVERSE_JOIN_COLUMNS; + default: return -1; + } + } + return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) + { + if (baseClass == XmlJoinTable.class) + { + switch (baseFeatureID) + { + case EclipseLinkOrmPackage.XML_JOIN_TABLE__JOIN_COLUMNS: return EclipseLinkOrmPackage.XML_JOIN_TABLE_IMPL__JOIN_COLUMNS; + case EclipseLinkOrmPackage.XML_JOIN_TABLE__INVERSE_JOIN_COLUMNS: return EclipseLinkOrmPackage.XML_JOIN_TABLE_IMPL__INVERSE_JOIN_COLUMNS; + default: return -1; + } + } + return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass); + } + +} // XmlJoinTableImpl diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlManyToMany.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlManyToMany.java new file mode 100644 index 0000000000..f79577e9d6 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlManyToMany.java @@ -0,0 +1,26 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Many To Many</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlManyToMany() + * @model kind="class" interface="true" abstract="true" + * @generated + */ +public interface XmlManyToMany extends XmlMultiRelationshipMapping +{ +} // XmlManyToMany diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlManyToManyImpl.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlManyToManyImpl.java new file mode 100644 index 0000000000..087522e1fd --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlManyToManyImpl.java @@ -0,0 +1,735 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Many To Many Impl</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlManyToManyImpl() + * @model kind="class" + * @generated + */ +public class XmlManyToManyImpl extends AbstractXmlAttributeMapping implements XmlManyToMany +{ + /** + * The default value of the '{@link #getTargetEntity() <em>Target Entity</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTargetEntity() + * @generated + * @ordered + */ + protected static final String TARGET_ENTITY_EDEFAULT = null; + + /** + * The cached value of the '{@link #getTargetEntity() <em>Target Entity</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTargetEntity() + * @generated + * @ordered + */ + protected String targetEntity = TARGET_ENTITY_EDEFAULT; + + /** + * The default value of the '{@link #getFetch() <em>Fetch</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getFetch() + * @generated + * @ordered + */ + protected static final FetchType FETCH_EDEFAULT = FetchType.LAZY; + + /** + * The cached value of the '{@link #getFetch() <em>Fetch</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getFetch() + * @generated + * @ordered + */ + protected FetchType fetch = FETCH_EDEFAULT; + + /** + * The cached value of the '{@link #getJoinTable() <em>Join Table</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getJoinTable() + * @generated + * @ordered + */ + protected XmlJoinTable joinTable; + + /** + * The cached value of the '{@link #getCascade() <em>Cascade</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getCascade() + * @generated + * @ordered + */ + protected CascadeType cascade; + + /** + * The default value of the '{@link #getMappedBy() <em>Mapped By</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMappedBy() + * @generated + * @ordered + */ + protected static final String MAPPED_BY_EDEFAULT = null; + + /** + * The cached value of the '{@link #getMappedBy() <em>Mapped By</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMappedBy() + * @generated + * @ordered + */ + protected String mappedBy = MAPPED_BY_EDEFAULT; + + /** + * The default value of the '{@link #getOrderBy() <em>Order By</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getOrderBy() + * @generated + * @ordered + */ + protected static final String ORDER_BY_EDEFAULT = null; + + /** + * The cached value of the '{@link #getOrderBy() <em>Order By</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getOrderBy() + * @generated + * @ordered + */ + protected String orderBy = ORDER_BY_EDEFAULT; + + /** + * The cached value of the '{@link #getMapKey() <em>Map Key</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMapKey() + * @generated + * @ordered + */ + protected MapKey mapKey; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected XmlManyToManyImpl() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.XML_MANY_TO_MANY_IMPL; + } + + /** + * Returns the value of the '<em><b>Target Entity</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Target Entity</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Target Entity</em>' attribute. + * @see #setTargetEntity(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlRelationshipMapping_TargetEntity() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + public String getTargetEntity() + { + return targetEntity; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlManyToManyImpl#getTargetEntity <em>Target Entity</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Target Entity</em>' attribute. + * @see #getTargetEntity() + * @generated + */ + public void setTargetEntity(String newTargetEntity) + { + String oldTargetEntity = targetEntity; + targetEntity = newTargetEntity; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__TARGET_ENTITY, oldTargetEntity, targetEntity)); + } + + /** + * Returns the value of the '<em><b>Fetch</b></em>' attribute. + * The default value is <code>"LAZY"</code>. + * The literals are from the enumeration {@link org.eclipse.jpt.eclipselink.core.resource.elorm.FetchType}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Fetch</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Fetch</em>' attribute. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.FetchType + * @see #setFetch(FetchType) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlRelationshipMapping_Fetch() + * @model default="LAZY" + * @generated + */ + public FetchType getFetch() + { + return fetch; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlManyToManyImpl#getFetch <em>Fetch</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Fetch</em>' attribute. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.FetchType + * @see #getFetch() + * @generated + */ + public void setFetch(FetchType newFetch) + { + FetchType oldFetch = fetch; + fetch = newFetch == null ? FETCH_EDEFAULT : newFetch; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__FETCH, oldFetch, fetch)); + } + + /** + * Returns the value of the '<em><b>Join Table</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Join Table</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Join Table</em>' containment reference. + * @see #setJoinTable(XmlJoinTable) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlRelationshipMapping_JoinTable() + * @model containment="true" + * @generated + */ + public XmlJoinTable getJoinTable() + { + return joinTable; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetJoinTable(XmlJoinTable newJoinTable, NotificationChain msgs) + { + XmlJoinTable oldJoinTable = joinTable; + joinTable = newJoinTable; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__JOIN_TABLE, oldJoinTable, newJoinTable); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlManyToManyImpl#getJoinTable <em>Join Table</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Join Table</em>' containment reference. + * @see #getJoinTable() + * @generated + */ + public void setJoinTable(XmlJoinTable newJoinTable) + { + if (newJoinTable != joinTable) + { + NotificationChain msgs = null; + if (joinTable != null) + msgs = ((InternalEObject)joinTable).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__JOIN_TABLE, null, msgs); + if (newJoinTable != null) + msgs = ((InternalEObject)newJoinTable).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__JOIN_TABLE, null, msgs); + msgs = basicSetJoinTable(newJoinTable, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__JOIN_TABLE, newJoinTable, newJoinTable)); + } + + /** + * Returns the value of the '<em><b>Cascade</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Cascade</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Cascade</em>' containment reference. + * @see #setCascade(CascadeType) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlRelationshipMapping_Cascade() + * @model containment="true" + * @generated + */ + public CascadeType getCascade() + { + return cascade; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetCascade(CascadeType newCascade, NotificationChain msgs) + { + CascadeType oldCascade = cascade; + cascade = newCascade; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__CASCADE, oldCascade, newCascade); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlManyToManyImpl#getCascade <em>Cascade</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Cascade</em>' containment reference. + * @see #getCascade() + * @generated + */ + public void setCascade(CascadeType newCascade) + { + if (newCascade != cascade) + { + NotificationChain msgs = null; + if (cascade != null) + msgs = ((InternalEObject)cascade).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__CASCADE, null, msgs); + if (newCascade != null) + msgs = ((InternalEObject)newCascade).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__CASCADE, null, msgs); + msgs = basicSetCascade(newCascade, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__CASCADE, newCascade, newCascade)); + } + + /** + * Returns the value of the '<em><b>Mapped By</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Mapped By</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Mapped By</em>' attribute. + * @see #setMappedBy(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlMultiRelationshipMapping_MappedBy() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + public String getMappedBy() + { + return mappedBy; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlManyToManyImpl#getMappedBy <em>Mapped By</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Mapped By</em>' attribute. + * @see #getMappedBy() + * @generated + */ + public void setMappedBy(String newMappedBy) + { + String oldMappedBy = mappedBy; + mappedBy = newMappedBy; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__MAPPED_BY, oldMappedBy, mappedBy)); + } + + /** + * Returns the value of the '<em><b>Order By</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Order By</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Order By</em>' attribute. + * @see #setOrderBy(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlMultiRelationshipMapping_OrderBy() + * @model dataType="org.eclipse.jpt.eclipselink.core.resource.elorm.OrderBy" + * @generated + */ + public String getOrderBy() + { + return orderBy; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlManyToManyImpl#getOrderBy <em>Order By</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Order By</em>' attribute. + * @see #getOrderBy() + * @generated + */ + public void setOrderBy(String newOrderBy) + { + String oldOrderBy = orderBy; + orderBy = newOrderBy; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__ORDER_BY, oldOrderBy, orderBy)); + } + + /** + * Returns the value of the '<em><b>Map Key</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Map Key</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Map Key</em>' containment reference. + * @see #setMapKey(MapKey) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlMultiRelationshipMapping_MapKey() + * @model containment="true" + * @generated + */ + public MapKey getMapKey() + { + return mapKey; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetMapKey(MapKey newMapKey, NotificationChain msgs) + { + MapKey oldMapKey = mapKey; + mapKey = newMapKey; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__MAP_KEY, oldMapKey, newMapKey); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlManyToManyImpl#getMapKey <em>Map Key</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Map Key</em>' containment reference. + * @see #getMapKey() + * @generated + */ + public void setMapKey(MapKey newMapKey) + { + if (newMapKey != mapKey) + { + NotificationChain msgs = null; + if (mapKey != null) + msgs = ((InternalEObject)mapKey).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__MAP_KEY, null, msgs); + if (newMapKey != null) + msgs = ((InternalEObject)newMapKey).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__MAP_KEY, null, msgs); + msgs = basicSetMapKey(newMapKey, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__MAP_KEY, newMapKey, newMapKey)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__JOIN_TABLE: + return basicSetJoinTable(null, msgs); + case EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__CASCADE: + return basicSetCascade(null, msgs); + case EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__MAP_KEY: + return basicSetMapKey(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__TARGET_ENTITY: + return getTargetEntity(); + case EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__FETCH: + return getFetch(); + case EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__JOIN_TABLE: + return getJoinTable(); + case EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__CASCADE: + return getCascade(); + case EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__MAPPED_BY: + return getMappedBy(); + case EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__ORDER_BY: + return getOrderBy(); + case EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__MAP_KEY: + return getMapKey(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__TARGET_ENTITY: + setTargetEntity((String)newValue); + return; + case EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__FETCH: + setFetch((FetchType)newValue); + return; + case EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__JOIN_TABLE: + setJoinTable((XmlJoinTable)newValue); + return; + case EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__CASCADE: + setCascade((CascadeType)newValue); + return; + case EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__MAPPED_BY: + setMappedBy((String)newValue); + return; + case EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__ORDER_BY: + setOrderBy((String)newValue); + return; + case EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__MAP_KEY: + setMapKey((MapKey)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__TARGET_ENTITY: + setTargetEntity(TARGET_ENTITY_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__FETCH: + setFetch(FETCH_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__JOIN_TABLE: + setJoinTable((XmlJoinTable)null); + return; + case EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__CASCADE: + setCascade((CascadeType)null); + return; + case EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__MAPPED_BY: + setMappedBy(MAPPED_BY_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__ORDER_BY: + setOrderBy(ORDER_BY_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__MAP_KEY: + setMapKey((MapKey)null); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__TARGET_ENTITY: + return TARGET_ENTITY_EDEFAULT == null ? targetEntity != null : !TARGET_ENTITY_EDEFAULT.equals(targetEntity); + case EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__FETCH: + return fetch != FETCH_EDEFAULT; + case EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__JOIN_TABLE: + return joinTable != null; + case EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__CASCADE: + return cascade != null; + case EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__MAPPED_BY: + return MAPPED_BY_EDEFAULT == null ? mappedBy != null : !MAPPED_BY_EDEFAULT.equals(mappedBy); + case EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__ORDER_BY: + return ORDER_BY_EDEFAULT == null ? orderBy != null : !ORDER_BY_EDEFAULT.equals(orderBy); + case EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__MAP_KEY: + return mapKey != null; + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) + { + if (baseClass == XmlRelationshipMapping.class) + { + switch (derivedFeatureID) + { + case EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__TARGET_ENTITY: return EclipseLinkOrmPackage.XML_RELATIONSHIP_MAPPING__TARGET_ENTITY; + case EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__FETCH: return EclipseLinkOrmPackage.XML_RELATIONSHIP_MAPPING__FETCH; + case EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__JOIN_TABLE: return EclipseLinkOrmPackage.XML_RELATIONSHIP_MAPPING__JOIN_TABLE; + case EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__CASCADE: return EclipseLinkOrmPackage.XML_RELATIONSHIP_MAPPING__CASCADE; + default: return -1; + } + } + if (baseClass == XmlMultiRelationshipMapping.class) + { + switch (derivedFeatureID) + { + case EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__MAPPED_BY: return EclipseLinkOrmPackage.XML_MULTI_RELATIONSHIP_MAPPING__MAPPED_BY; + case EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__ORDER_BY: return EclipseLinkOrmPackage.XML_MULTI_RELATIONSHIP_MAPPING__ORDER_BY; + case EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__MAP_KEY: return EclipseLinkOrmPackage.XML_MULTI_RELATIONSHIP_MAPPING__MAP_KEY; + default: return -1; + } + } + if (baseClass == XmlManyToMany.class) + { + switch (derivedFeatureID) + { + default: return -1; + } + } + return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) + { + if (baseClass == XmlRelationshipMapping.class) + { + switch (baseFeatureID) + { + case EclipseLinkOrmPackage.XML_RELATIONSHIP_MAPPING__TARGET_ENTITY: return EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__TARGET_ENTITY; + case EclipseLinkOrmPackage.XML_RELATIONSHIP_MAPPING__FETCH: return EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__FETCH; + case EclipseLinkOrmPackage.XML_RELATIONSHIP_MAPPING__JOIN_TABLE: return EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__JOIN_TABLE; + case EclipseLinkOrmPackage.XML_RELATIONSHIP_MAPPING__CASCADE: return EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__CASCADE; + default: return -1; + } + } + if (baseClass == XmlMultiRelationshipMapping.class) + { + switch (baseFeatureID) + { + case EclipseLinkOrmPackage.XML_MULTI_RELATIONSHIP_MAPPING__MAPPED_BY: return EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__MAPPED_BY; + case EclipseLinkOrmPackage.XML_MULTI_RELATIONSHIP_MAPPING__ORDER_BY: return EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__ORDER_BY; + case EclipseLinkOrmPackage.XML_MULTI_RELATIONSHIP_MAPPING__MAP_KEY: return EclipseLinkOrmPackage.XML_MANY_TO_MANY_IMPL__MAP_KEY; + default: return -1; + } + } + if (baseClass == XmlManyToMany.class) + { + switch (baseFeatureID) + { + default: return -1; + } + } + return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (targetEntity: "); + result.append(targetEntity); + result.append(", fetch: "); + result.append(fetch); + result.append(", mappedBy: "); + result.append(mappedBy); + result.append(", orderBy: "); + result.append(orderBy); + result.append(')'); + return result.toString(); + } + +} // XmlManyToManyImpl diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlManyToOne.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlManyToOne.java new file mode 100644 index 0000000000..0a22fbfe83 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlManyToOne.java @@ -0,0 +1,26 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Many To One</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlManyToOne() + * @model kind="class" interface="true" abstract="true" + * @generated + */ +public interface XmlManyToOne extends XmlSingleRelationshipMapping +{ +} // XmlManyToOne diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlManyToOneImpl.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlManyToOneImpl.java new file mode 100644 index 0000000000..87936cd786 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlManyToOneImpl.java @@ -0,0 +1,638 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Many To One Impl</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlManyToOneImpl() + * @model kind="class" + * @generated + */ +public class XmlManyToOneImpl extends AbstractXmlAttributeMapping implements XmlManyToOne +{ + /** + * The default value of the '{@link #getTargetEntity() <em>Target Entity</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTargetEntity() + * @generated + * @ordered + */ + protected static final String TARGET_ENTITY_EDEFAULT = null; + + /** + * The cached value of the '{@link #getTargetEntity() <em>Target Entity</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTargetEntity() + * @generated + * @ordered + */ + protected String targetEntity = TARGET_ENTITY_EDEFAULT; + + /** + * The default value of the '{@link #getFetch() <em>Fetch</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getFetch() + * @generated + * @ordered + */ + protected static final FetchType FETCH_EDEFAULT = FetchType.LAZY; + + /** + * The cached value of the '{@link #getFetch() <em>Fetch</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getFetch() + * @generated + * @ordered + */ + protected FetchType fetch = FETCH_EDEFAULT; + + /** + * The cached value of the '{@link #getJoinTable() <em>Join Table</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getJoinTable() + * @generated + * @ordered + */ + protected XmlJoinTable joinTable; + + /** + * The cached value of the '{@link #getCascade() <em>Cascade</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getCascade() + * @generated + * @ordered + */ + protected CascadeType cascade; + + /** + * The default value of the '{@link #getOptional() <em>Optional</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getOptional() + * @generated + * @ordered + */ + protected static final Boolean OPTIONAL_EDEFAULT = null; + + /** + * The cached value of the '{@link #getOptional() <em>Optional</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getOptional() + * @generated + * @ordered + */ + protected Boolean optional = OPTIONAL_EDEFAULT; + + /** + * The cached value of the '{@link #getJoinColumns() <em>Join Columns</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getJoinColumns() + * @generated + * @ordered + */ + protected EList<XmlJoinColumn> joinColumns; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected XmlManyToOneImpl() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.XML_MANY_TO_ONE_IMPL; + } + + /** + * Returns the value of the '<em><b>Target Entity</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Target Entity</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Target Entity</em>' attribute. + * @see #setTargetEntity(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlRelationshipMapping_TargetEntity() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + public String getTargetEntity() + { + return targetEntity; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlManyToOneImpl#getTargetEntity <em>Target Entity</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Target Entity</em>' attribute. + * @see #getTargetEntity() + * @generated + */ + public void setTargetEntity(String newTargetEntity) + { + String oldTargetEntity = targetEntity; + targetEntity = newTargetEntity; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_MANY_TO_ONE_IMPL__TARGET_ENTITY, oldTargetEntity, targetEntity)); + } + + /** + * Returns the value of the '<em><b>Fetch</b></em>' attribute. + * The default value is <code>"LAZY"</code>. + * The literals are from the enumeration {@link org.eclipse.jpt.eclipselink.core.resource.elorm.FetchType}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Fetch</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Fetch</em>' attribute. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.FetchType + * @see #setFetch(FetchType) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlRelationshipMapping_Fetch() + * @model default="LAZY" + * @generated + */ + public FetchType getFetch() + { + return fetch; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlManyToOneImpl#getFetch <em>Fetch</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Fetch</em>' attribute. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.FetchType + * @see #getFetch() + * @generated + */ + public void setFetch(FetchType newFetch) + { + FetchType oldFetch = fetch; + fetch = newFetch == null ? FETCH_EDEFAULT : newFetch; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_MANY_TO_ONE_IMPL__FETCH, oldFetch, fetch)); + } + + /** + * Returns the value of the '<em><b>Join Table</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Join Table</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Join Table</em>' containment reference. + * @see #setJoinTable(XmlJoinTable) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlRelationshipMapping_JoinTable() + * @model containment="true" + * @generated + */ + public XmlJoinTable getJoinTable() + { + return joinTable; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetJoinTable(XmlJoinTable newJoinTable, NotificationChain msgs) + { + XmlJoinTable oldJoinTable = joinTable; + joinTable = newJoinTable; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_MANY_TO_ONE_IMPL__JOIN_TABLE, oldJoinTable, newJoinTable); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlManyToOneImpl#getJoinTable <em>Join Table</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Join Table</em>' containment reference. + * @see #getJoinTable() + * @generated + */ + public void setJoinTable(XmlJoinTable newJoinTable) + { + if (newJoinTable != joinTable) + { + NotificationChain msgs = null; + if (joinTable != null) + msgs = ((InternalEObject)joinTable).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_MANY_TO_ONE_IMPL__JOIN_TABLE, null, msgs); + if (newJoinTable != null) + msgs = ((InternalEObject)newJoinTable).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_MANY_TO_ONE_IMPL__JOIN_TABLE, null, msgs); + msgs = basicSetJoinTable(newJoinTable, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_MANY_TO_ONE_IMPL__JOIN_TABLE, newJoinTable, newJoinTable)); + } + + /** + * Returns the value of the '<em><b>Cascade</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Cascade</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Cascade</em>' containment reference. + * @see #setCascade(CascadeType) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlRelationshipMapping_Cascade() + * @model containment="true" + * @generated + */ + public CascadeType getCascade() + { + return cascade; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetCascade(CascadeType newCascade, NotificationChain msgs) + { + CascadeType oldCascade = cascade; + cascade = newCascade; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_MANY_TO_ONE_IMPL__CASCADE, oldCascade, newCascade); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlManyToOneImpl#getCascade <em>Cascade</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Cascade</em>' containment reference. + * @see #getCascade() + * @generated + */ + public void setCascade(CascadeType newCascade) + { + if (newCascade != cascade) + { + NotificationChain msgs = null; + if (cascade != null) + msgs = ((InternalEObject)cascade).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_MANY_TO_ONE_IMPL__CASCADE, null, msgs); + if (newCascade != null) + msgs = ((InternalEObject)newCascade).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_MANY_TO_ONE_IMPL__CASCADE, null, msgs); + msgs = basicSetCascade(newCascade, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_MANY_TO_ONE_IMPL__CASCADE, newCascade, newCascade)); + } + + /** + * Returns the value of the '<em><b>Optional</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Optional</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Optional</em>' attribute. + * @see #setOptional(Boolean) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlSingleRelationshipMapping_Optional() + * @model dataType="org.eclipse.emf.ecore.xml.type.BooleanObject" + * @generated + */ + public Boolean getOptional() + { + return optional; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlManyToOneImpl#getOptional <em>Optional</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Optional</em>' attribute. + * @see #getOptional() + * @generated + */ + public void setOptional(Boolean newOptional) + { + Boolean oldOptional = optional; + optional = newOptional; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_MANY_TO_ONE_IMPL__OPTIONAL, oldOptional, optional)); + } + + /** + * Returns the value of the '<em><b>Join Columns</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlJoinColumn}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Join Columns</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Join Columns</em>' containment reference list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlSingleRelationshipMapping_JoinColumns() + * @model containment="true" + * @generated + */ + public EList<XmlJoinColumn> getJoinColumns() + { + if (joinColumns == null) + { + joinColumns = new EObjectContainmentEList<XmlJoinColumn>(XmlJoinColumn.class, this, EclipseLinkOrmPackage.XML_MANY_TO_ONE_IMPL__JOIN_COLUMNS); + } + return joinColumns; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_MANY_TO_ONE_IMPL__JOIN_TABLE: + return basicSetJoinTable(null, msgs); + case EclipseLinkOrmPackage.XML_MANY_TO_ONE_IMPL__CASCADE: + return basicSetCascade(null, msgs); + case EclipseLinkOrmPackage.XML_MANY_TO_ONE_IMPL__JOIN_COLUMNS: + return ((InternalEList<?>)getJoinColumns()).basicRemove(otherEnd, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_MANY_TO_ONE_IMPL__TARGET_ENTITY: + return getTargetEntity(); + case EclipseLinkOrmPackage.XML_MANY_TO_ONE_IMPL__FETCH: + return getFetch(); + case EclipseLinkOrmPackage.XML_MANY_TO_ONE_IMPL__JOIN_TABLE: + return getJoinTable(); + case EclipseLinkOrmPackage.XML_MANY_TO_ONE_IMPL__CASCADE: + return getCascade(); + case EclipseLinkOrmPackage.XML_MANY_TO_ONE_IMPL__OPTIONAL: + return getOptional(); + case EclipseLinkOrmPackage.XML_MANY_TO_ONE_IMPL__JOIN_COLUMNS: + return getJoinColumns(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_MANY_TO_ONE_IMPL__TARGET_ENTITY: + setTargetEntity((String)newValue); + return; + case EclipseLinkOrmPackage.XML_MANY_TO_ONE_IMPL__FETCH: + setFetch((FetchType)newValue); + return; + case EclipseLinkOrmPackage.XML_MANY_TO_ONE_IMPL__JOIN_TABLE: + setJoinTable((XmlJoinTable)newValue); + return; + case EclipseLinkOrmPackage.XML_MANY_TO_ONE_IMPL__CASCADE: + setCascade((CascadeType)newValue); + return; + case EclipseLinkOrmPackage.XML_MANY_TO_ONE_IMPL__OPTIONAL: + setOptional((Boolean)newValue); + return; + case EclipseLinkOrmPackage.XML_MANY_TO_ONE_IMPL__JOIN_COLUMNS: + getJoinColumns().clear(); + getJoinColumns().addAll((Collection<? extends XmlJoinColumn>)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_MANY_TO_ONE_IMPL__TARGET_ENTITY: + setTargetEntity(TARGET_ENTITY_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_MANY_TO_ONE_IMPL__FETCH: + setFetch(FETCH_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_MANY_TO_ONE_IMPL__JOIN_TABLE: + setJoinTable((XmlJoinTable)null); + return; + case EclipseLinkOrmPackage.XML_MANY_TO_ONE_IMPL__CASCADE: + setCascade((CascadeType)null); + return; + case EclipseLinkOrmPackage.XML_MANY_TO_ONE_IMPL__OPTIONAL: + setOptional(OPTIONAL_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_MANY_TO_ONE_IMPL__JOIN_COLUMNS: + getJoinColumns().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_MANY_TO_ONE_IMPL__TARGET_ENTITY: + return TARGET_ENTITY_EDEFAULT == null ? targetEntity != null : !TARGET_ENTITY_EDEFAULT.equals(targetEntity); + case EclipseLinkOrmPackage.XML_MANY_TO_ONE_IMPL__FETCH: + return fetch != FETCH_EDEFAULT; + case EclipseLinkOrmPackage.XML_MANY_TO_ONE_IMPL__JOIN_TABLE: + return joinTable != null; + case EclipseLinkOrmPackage.XML_MANY_TO_ONE_IMPL__CASCADE: + return cascade != null; + case EclipseLinkOrmPackage.XML_MANY_TO_ONE_IMPL__OPTIONAL: + return OPTIONAL_EDEFAULT == null ? optional != null : !OPTIONAL_EDEFAULT.equals(optional); + case EclipseLinkOrmPackage.XML_MANY_TO_ONE_IMPL__JOIN_COLUMNS: + return joinColumns != null && !joinColumns.isEmpty(); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) + { + if (baseClass == XmlRelationshipMapping.class) + { + switch (derivedFeatureID) + { + case EclipseLinkOrmPackage.XML_MANY_TO_ONE_IMPL__TARGET_ENTITY: return EclipseLinkOrmPackage.XML_RELATIONSHIP_MAPPING__TARGET_ENTITY; + case EclipseLinkOrmPackage.XML_MANY_TO_ONE_IMPL__FETCH: return EclipseLinkOrmPackage.XML_RELATIONSHIP_MAPPING__FETCH; + case EclipseLinkOrmPackage.XML_MANY_TO_ONE_IMPL__JOIN_TABLE: return EclipseLinkOrmPackage.XML_RELATIONSHIP_MAPPING__JOIN_TABLE; + case EclipseLinkOrmPackage.XML_MANY_TO_ONE_IMPL__CASCADE: return EclipseLinkOrmPackage.XML_RELATIONSHIP_MAPPING__CASCADE; + default: return -1; + } + } + if (baseClass == XmlSingleRelationshipMapping.class) + { + switch (derivedFeatureID) + { + case EclipseLinkOrmPackage.XML_MANY_TO_ONE_IMPL__OPTIONAL: return EclipseLinkOrmPackage.XML_SINGLE_RELATIONSHIP_MAPPING__OPTIONAL; + case EclipseLinkOrmPackage.XML_MANY_TO_ONE_IMPL__JOIN_COLUMNS: return EclipseLinkOrmPackage.XML_SINGLE_RELATIONSHIP_MAPPING__JOIN_COLUMNS; + default: return -1; + } + } + if (baseClass == XmlManyToOne.class) + { + switch (derivedFeatureID) + { + default: return -1; + } + } + return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) + { + if (baseClass == XmlRelationshipMapping.class) + { + switch (baseFeatureID) + { + case EclipseLinkOrmPackage.XML_RELATIONSHIP_MAPPING__TARGET_ENTITY: return EclipseLinkOrmPackage.XML_MANY_TO_ONE_IMPL__TARGET_ENTITY; + case EclipseLinkOrmPackage.XML_RELATIONSHIP_MAPPING__FETCH: return EclipseLinkOrmPackage.XML_MANY_TO_ONE_IMPL__FETCH; + case EclipseLinkOrmPackage.XML_RELATIONSHIP_MAPPING__JOIN_TABLE: return EclipseLinkOrmPackage.XML_MANY_TO_ONE_IMPL__JOIN_TABLE; + case EclipseLinkOrmPackage.XML_RELATIONSHIP_MAPPING__CASCADE: return EclipseLinkOrmPackage.XML_MANY_TO_ONE_IMPL__CASCADE; + default: return -1; + } + } + if (baseClass == XmlSingleRelationshipMapping.class) + { + switch (baseFeatureID) + { + case EclipseLinkOrmPackage.XML_SINGLE_RELATIONSHIP_MAPPING__OPTIONAL: return EclipseLinkOrmPackage.XML_MANY_TO_ONE_IMPL__OPTIONAL; + case EclipseLinkOrmPackage.XML_SINGLE_RELATIONSHIP_MAPPING__JOIN_COLUMNS: return EclipseLinkOrmPackage.XML_MANY_TO_ONE_IMPL__JOIN_COLUMNS; + default: return -1; + } + } + if (baseClass == XmlManyToOne.class) + { + switch (baseFeatureID) + { + default: return -1; + } + } + return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (targetEntity: "); + result.append(targetEntity); + result.append(", fetch: "); + result.append(fetch); + result.append(", optional: "); + result.append(optional); + result.append(')'); + return result.toString(); + } + +} // XmlManyToOneImpl diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlMappedSuperclass.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlMappedSuperclass.java new file mode 100644 index 0000000000..32dc9d02cb --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlMappedSuperclass.java @@ -0,0 +1,1027 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Mapped Superclass</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMappedSuperclass#getIdClass <em>Id Class</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMappedSuperclass#isExcludeDefaultListeners <em>Exclude Default Listeners</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMappedSuperclass#isExcludeSuperclassListeners <em>Exclude Superclass Listeners</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMappedSuperclass#getEntityListeners <em>Entity Listeners</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMappedSuperclass#getPrePersist <em>Pre Persist</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMappedSuperclass#getPostPersist <em>Post Persist</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMappedSuperclass#getPreRemove <em>Pre Remove</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMappedSuperclass#getPostRemove <em>Post Remove</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMappedSuperclass#getPreUpdate <em>Pre Update</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMappedSuperclass#getPostUpdate <em>Post Update</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMappedSuperclass#getPostLoad <em>Post Load</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlMappedSuperclass() + * @model kind="class" + * @generated + */ +public class XmlMappedSuperclass extends AbstractXmlTypeMapping +{ + /** + * The cached value of the '{@link #getIdClass() <em>Id Class</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getIdClass() + * @generated + * @ordered + */ + protected XmlIdClass idClass; + + /** + * The default value of the '{@link #isExcludeDefaultListeners() <em>Exclude Default Listeners</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isExcludeDefaultListeners() + * @generated + * @ordered + */ + protected static final boolean EXCLUDE_DEFAULT_LISTENERS_EDEFAULT = false; + + /** + * The cached value of the '{@link #isExcludeDefaultListeners() <em>Exclude Default Listeners</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isExcludeDefaultListeners() + * @generated + * @ordered + */ + protected boolean excludeDefaultListeners = EXCLUDE_DEFAULT_LISTENERS_EDEFAULT; + + /** + * The default value of the '{@link #isExcludeSuperclassListeners() <em>Exclude Superclass Listeners</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isExcludeSuperclassListeners() + * @generated + * @ordered + */ + protected static final boolean EXCLUDE_SUPERCLASS_LISTENERS_EDEFAULT = false; + + /** + * The cached value of the '{@link #isExcludeSuperclassListeners() <em>Exclude Superclass Listeners</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isExcludeSuperclassListeners() + * @generated + * @ordered + */ + protected boolean excludeSuperclassListeners = EXCLUDE_SUPERCLASS_LISTENERS_EDEFAULT; + + /** + * The cached value of the '{@link #getEntityListeners() <em>Entity Listeners</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getEntityListeners() + * @generated + * @ordered + */ + protected EntityListeners entityListeners; + + /** + * The cached value of the '{@link #getPrePersist() <em>Pre Persist</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPrePersist() + * @generated + * @ordered + */ + protected PrePersist prePersist; + + /** + * The cached value of the '{@link #getPostPersist() <em>Post Persist</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPostPersist() + * @generated + * @ordered + */ + protected PostPersist postPersist; + + /** + * The cached value of the '{@link #getPreRemove() <em>Pre Remove</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPreRemove() + * @generated + * @ordered + */ + protected PreRemove preRemove; + + /** + * The cached value of the '{@link #getPostRemove() <em>Post Remove</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPostRemove() + * @generated + * @ordered + */ + protected PostRemove postRemove; + + /** + * The cached value of the '{@link #getPreUpdate() <em>Pre Update</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPreUpdate() + * @generated + * @ordered + */ + protected PreUpdate preUpdate; + + /** + * The cached value of the '{@link #getPostUpdate() <em>Post Update</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPostUpdate() + * @generated + * @ordered + */ + protected PostUpdate postUpdate; + + /** + * The cached value of the '{@link #getPostLoad() <em>Post Load</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPostLoad() + * @generated + * @ordered + */ + protected PostLoad postLoad; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected XmlMappedSuperclass() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.XML_MAPPED_SUPERCLASS; + } + + /** + * Returns the value of the '<em><b>Id Class</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Id Class</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Id Class</em>' containment reference. + * @see #setIdClass(XmlIdClass) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlMappedSuperclass_IdClass() + * @model containment="true" + * @generated + */ + public XmlIdClass getIdClass() + { + return idClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetIdClass(XmlIdClass newIdClass, NotificationChain msgs) + { + XmlIdClass oldIdClass = idClass; + idClass = newIdClass; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__ID_CLASS, oldIdClass, newIdClass); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMappedSuperclass#getIdClass <em>Id Class</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Id Class</em>' containment reference. + * @see #getIdClass() + * @generated + */ + public void setIdClass(XmlIdClass newIdClass) + { + if (newIdClass != idClass) + { + NotificationChain msgs = null; + if (idClass != null) + msgs = ((InternalEObject)idClass).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__ID_CLASS, null, msgs); + if (newIdClass != null) + msgs = ((InternalEObject)newIdClass).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__ID_CLASS, null, msgs); + msgs = basicSetIdClass(newIdClass, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__ID_CLASS, newIdClass, newIdClass)); + } + + /** + * Returns the value of the '<em><b>Exclude Default Listeners</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Exclude Default Listeners</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Exclude Default Listeners</em>' attribute. + * @see #setExcludeDefaultListeners(boolean) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlMappedSuperclass_ExcludeDefaultListeners() + * @model dataType="org.eclipse.emf.ecore.xml.type.Boolean" + * @generated + */ + public boolean isExcludeDefaultListeners() + { + return excludeDefaultListeners; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMappedSuperclass#isExcludeDefaultListeners <em>Exclude Default Listeners</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Exclude Default Listeners</em>' attribute. + * @see #isExcludeDefaultListeners() + * @generated + */ + public void setExcludeDefaultListeners(boolean newExcludeDefaultListeners) + { + boolean oldExcludeDefaultListeners = excludeDefaultListeners; + excludeDefaultListeners = newExcludeDefaultListeners; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__EXCLUDE_DEFAULT_LISTENERS, oldExcludeDefaultListeners, excludeDefaultListeners)); + } + + /** + * Returns the value of the '<em><b>Exclude Superclass Listeners</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Exclude Superclass Listeners</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Exclude Superclass Listeners</em>' attribute. + * @see #setExcludeSuperclassListeners(boolean) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlMappedSuperclass_ExcludeSuperclassListeners() + * @model dataType="org.eclipse.emf.ecore.xml.type.Boolean" + * @generated + */ + public boolean isExcludeSuperclassListeners() + { + return excludeSuperclassListeners; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMappedSuperclass#isExcludeSuperclassListeners <em>Exclude Superclass Listeners</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Exclude Superclass Listeners</em>' attribute. + * @see #isExcludeSuperclassListeners() + * @generated + */ + public void setExcludeSuperclassListeners(boolean newExcludeSuperclassListeners) + { + boolean oldExcludeSuperclassListeners = excludeSuperclassListeners; + excludeSuperclassListeners = newExcludeSuperclassListeners; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__EXCLUDE_SUPERCLASS_LISTENERS, oldExcludeSuperclassListeners, excludeSuperclassListeners)); + } + + /** + * Returns the value of the '<em><b>Entity Listeners</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Entity Listeners</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Entity Listeners</em>' containment reference. + * @see #setEntityListeners(EntityListeners) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlMappedSuperclass_EntityListeners() + * @model containment="true" + * @generated + */ + public EntityListeners getEntityListeners() + { + return entityListeners; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetEntityListeners(EntityListeners newEntityListeners, NotificationChain msgs) + { + EntityListeners oldEntityListeners = entityListeners; + entityListeners = newEntityListeners; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__ENTITY_LISTENERS, oldEntityListeners, newEntityListeners); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMappedSuperclass#getEntityListeners <em>Entity Listeners</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Entity Listeners</em>' containment reference. + * @see #getEntityListeners() + * @generated + */ + public void setEntityListeners(EntityListeners newEntityListeners) + { + if (newEntityListeners != entityListeners) + { + NotificationChain msgs = null; + if (entityListeners != null) + msgs = ((InternalEObject)entityListeners).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__ENTITY_LISTENERS, null, msgs); + if (newEntityListeners != null) + msgs = ((InternalEObject)newEntityListeners).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__ENTITY_LISTENERS, null, msgs); + msgs = basicSetEntityListeners(newEntityListeners, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__ENTITY_LISTENERS, newEntityListeners, newEntityListeners)); + } + + /** + * Returns the value of the '<em><b>Pre Persist</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Pre Persist</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Pre Persist</em>' containment reference. + * @see #setPrePersist(PrePersist) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlMappedSuperclass_PrePersist() + * @model containment="true" + * @generated + */ + public PrePersist getPrePersist() + { + return prePersist; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetPrePersist(PrePersist newPrePersist, NotificationChain msgs) + { + PrePersist oldPrePersist = prePersist; + prePersist = newPrePersist; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__PRE_PERSIST, oldPrePersist, newPrePersist); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMappedSuperclass#getPrePersist <em>Pre Persist</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Pre Persist</em>' containment reference. + * @see #getPrePersist() + * @generated + */ + public void setPrePersist(PrePersist newPrePersist) + { + if (newPrePersist != prePersist) + { + NotificationChain msgs = null; + if (prePersist != null) + msgs = ((InternalEObject)prePersist).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__PRE_PERSIST, null, msgs); + if (newPrePersist != null) + msgs = ((InternalEObject)newPrePersist).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__PRE_PERSIST, null, msgs); + msgs = basicSetPrePersist(newPrePersist, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__PRE_PERSIST, newPrePersist, newPrePersist)); + } + + /** + * Returns the value of the '<em><b>Post Persist</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Post Persist</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Post Persist</em>' containment reference. + * @see #setPostPersist(PostPersist) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlMappedSuperclass_PostPersist() + * @model containment="true" + * @generated + */ + public PostPersist getPostPersist() + { + return postPersist; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetPostPersist(PostPersist newPostPersist, NotificationChain msgs) + { + PostPersist oldPostPersist = postPersist; + postPersist = newPostPersist; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__POST_PERSIST, oldPostPersist, newPostPersist); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMappedSuperclass#getPostPersist <em>Post Persist</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Post Persist</em>' containment reference. + * @see #getPostPersist() + * @generated + */ + public void setPostPersist(PostPersist newPostPersist) + { + if (newPostPersist != postPersist) + { + NotificationChain msgs = null; + if (postPersist != null) + msgs = ((InternalEObject)postPersist).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__POST_PERSIST, null, msgs); + if (newPostPersist != null) + msgs = ((InternalEObject)newPostPersist).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__POST_PERSIST, null, msgs); + msgs = basicSetPostPersist(newPostPersist, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__POST_PERSIST, newPostPersist, newPostPersist)); + } + + /** + * Returns the value of the '<em><b>Pre Remove</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Pre Remove</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Pre Remove</em>' containment reference. + * @see #setPreRemove(PreRemove) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlMappedSuperclass_PreRemove() + * @model containment="true" + * @generated + */ + public PreRemove getPreRemove() + { + return preRemove; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetPreRemove(PreRemove newPreRemove, NotificationChain msgs) + { + PreRemove oldPreRemove = preRemove; + preRemove = newPreRemove; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__PRE_REMOVE, oldPreRemove, newPreRemove); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMappedSuperclass#getPreRemove <em>Pre Remove</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Pre Remove</em>' containment reference. + * @see #getPreRemove() + * @generated + */ + public void setPreRemove(PreRemove newPreRemove) + { + if (newPreRemove != preRemove) + { + NotificationChain msgs = null; + if (preRemove != null) + msgs = ((InternalEObject)preRemove).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__PRE_REMOVE, null, msgs); + if (newPreRemove != null) + msgs = ((InternalEObject)newPreRemove).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__PRE_REMOVE, null, msgs); + msgs = basicSetPreRemove(newPreRemove, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__PRE_REMOVE, newPreRemove, newPreRemove)); + } + + /** + * Returns the value of the '<em><b>Post Remove</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Post Remove</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Post Remove</em>' containment reference. + * @see #setPostRemove(PostRemove) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlMappedSuperclass_PostRemove() + * @model containment="true" + * @generated + */ + public PostRemove getPostRemove() + { + return postRemove; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetPostRemove(PostRemove newPostRemove, NotificationChain msgs) + { + PostRemove oldPostRemove = postRemove; + postRemove = newPostRemove; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__POST_REMOVE, oldPostRemove, newPostRemove); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMappedSuperclass#getPostRemove <em>Post Remove</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Post Remove</em>' containment reference. + * @see #getPostRemove() + * @generated + */ + public void setPostRemove(PostRemove newPostRemove) + { + if (newPostRemove != postRemove) + { + NotificationChain msgs = null; + if (postRemove != null) + msgs = ((InternalEObject)postRemove).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__POST_REMOVE, null, msgs); + if (newPostRemove != null) + msgs = ((InternalEObject)newPostRemove).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__POST_REMOVE, null, msgs); + msgs = basicSetPostRemove(newPostRemove, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__POST_REMOVE, newPostRemove, newPostRemove)); + } + + /** + * Returns the value of the '<em><b>Pre Update</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Pre Update</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Pre Update</em>' containment reference. + * @see #setPreUpdate(PreUpdate) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlMappedSuperclass_PreUpdate() + * @model containment="true" + * @generated + */ + public PreUpdate getPreUpdate() + { + return preUpdate; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetPreUpdate(PreUpdate newPreUpdate, NotificationChain msgs) + { + PreUpdate oldPreUpdate = preUpdate; + preUpdate = newPreUpdate; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__PRE_UPDATE, oldPreUpdate, newPreUpdate); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMappedSuperclass#getPreUpdate <em>Pre Update</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Pre Update</em>' containment reference. + * @see #getPreUpdate() + * @generated + */ + public void setPreUpdate(PreUpdate newPreUpdate) + { + if (newPreUpdate != preUpdate) + { + NotificationChain msgs = null; + if (preUpdate != null) + msgs = ((InternalEObject)preUpdate).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__PRE_UPDATE, null, msgs); + if (newPreUpdate != null) + msgs = ((InternalEObject)newPreUpdate).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__PRE_UPDATE, null, msgs); + msgs = basicSetPreUpdate(newPreUpdate, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__PRE_UPDATE, newPreUpdate, newPreUpdate)); + } + + /** + * Returns the value of the '<em><b>Post Update</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Post Update</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Post Update</em>' containment reference. + * @see #setPostUpdate(PostUpdate) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlMappedSuperclass_PostUpdate() + * @model containment="true" + * @generated + */ + public PostUpdate getPostUpdate() + { + return postUpdate; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetPostUpdate(PostUpdate newPostUpdate, NotificationChain msgs) + { + PostUpdate oldPostUpdate = postUpdate; + postUpdate = newPostUpdate; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__POST_UPDATE, oldPostUpdate, newPostUpdate); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMappedSuperclass#getPostUpdate <em>Post Update</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Post Update</em>' containment reference. + * @see #getPostUpdate() + * @generated + */ + public void setPostUpdate(PostUpdate newPostUpdate) + { + if (newPostUpdate != postUpdate) + { + NotificationChain msgs = null; + if (postUpdate != null) + msgs = ((InternalEObject)postUpdate).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__POST_UPDATE, null, msgs); + if (newPostUpdate != null) + msgs = ((InternalEObject)newPostUpdate).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__POST_UPDATE, null, msgs); + msgs = basicSetPostUpdate(newPostUpdate, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__POST_UPDATE, newPostUpdate, newPostUpdate)); + } + + /** + * Returns the value of the '<em><b>Post Load</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Post Load</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Post Load</em>' containment reference. + * @see #setPostLoad(PostLoad) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlMappedSuperclass_PostLoad() + * @model containment="true" + * @generated + */ + public PostLoad getPostLoad() + { + return postLoad; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetPostLoad(PostLoad newPostLoad, NotificationChain msgs) + { + PostLoad oldPostLoad = postLoad; + postLoad = newPostLoad; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__POST_LOAD, oldPostLoad, newPostLoad); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMappedSuperclass#getPostLoad <em>Post Load</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Post Load</em>' containment reference. + * @see #getPostLoad() + * @generated + */ + public void setPostLoad(PostLoad newPostLoad) + { + if (newPostLoad != postLoad) + { + NotificationChain msgs = null; + if (postLoad != null) + msgs = ((InternalEObject)postLoad).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__POST_LOAD, null, msgs); + if (newPostLoad != null) + msgs = ((InternalEObject)newPostLoad).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__POST_LOAD, null, msgs); + msgs = basicSetPostLoad(newPostLoad, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__POST_LOAD, newPostLoad, newPostLoad)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__ID_CLASS: + return basicSetIdClass(null, msgs); + case EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__ENTITY_LISTENERS: + return basicSetEntityListeners(null, msgs); + case EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__PRE_PERSIST: + return basicSetPrePersist(null, msgs); + case EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__POST_PERSIST: + return basicSetPostPersist(null, msgs); + case EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__PRE_REMOVE: + return basicSetPreRemove(null, msgs); + case EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__POST_REMOVE: + return basicSetPostRemove(null, msgs); + case EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__PRE_UPDATE: + return basicSetPreUpdate(null, msgs); + case EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__POST_UPDATE: + return basicSetPostUpdate(null, msgs); + case EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__POST_LOAD: + return basicSetPostLoad(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__ID_CLASS: + return getIdClass(); + case EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__EXCLUDE_DEFAULT_LISTENERS: + return isExcludeDefaultListeners() ? Boolean.TRUE : Boolean.FALSE; + case EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__EXCLUDE_SUPERCLASS_LISTENERS: + return isExcludeSuperclassListeners() ? Boolean.TRUE : Boolean.FALSE; + case EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__ENTITY_LISTENERS: + return getEntityListeners(); + case EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__PRE_PERSIST: + return getPrePersist(); + case EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__POST_PERSIST: + return getPostPersist(); + case EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__PRE_REMOVE: + return getPreRemove(); + case EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__POST_REMOVE: + return getPostRemove(); + case EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__PRE_UPDATE: + return getPreUpdate(); + case EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__POST_UPDATE: + return getPostUpdate(); + case EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__POST_LOAD: + return getPostLoad(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__ID_CLASS: + setIdClass((XmlIdClass)newValue); + return; + case EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__EXCLUDE_DEFAULT_LISTENERS: + setExcludeDefaultListeners(((Boolean)newValue).booleanValue()); + return; + case EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__EXCLUDE_SUPERCLASS_LISTENERS: + setExcludeSuperclassListeners(((Boolean)newValue).booleanValue()); + return; + case EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__ENTITY_LISTENERS: + setEntityListeners((EntityListeners)newValue); + return; + case EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__PRE_PERSIST: + setPrePersist((PrePersist)newValue); + return; + case EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__POST_PERSIST: + setPostPersist((PostPersist)newValue); + return; + case EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__PRE_REMOVE: + setPreRemove((PreRemove)newValue); + return; + case EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__POST_REMOVE: + setPostRemove((PostRemove)newValue); + return; + case EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__PRE_UPDATE: + setPreUpdate((PreUpdate)newValue); + return; + case EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__POST_UPDATE: + setPostUpdate((PostUpdate)newValue); + return; + case EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__POST_LOAD: + setPostLoad((PostLoad)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__ID_CLASS: + setIdClass((XmlIdClass)null); + return; + case EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__EXCLUDE_DEFAULT_LISTENERS: + setExcludeDefaultListeners(EXCLUDE_DEFAULT_LISTENERS_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__EXCLUDE_SUPERCLASS_LISTENERS: + setExcludeSuperclassListeners(EXCLUDE_SUPERCLASS_LISTENERS_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__ENTITY_LISTENERS: + setEntityListeners((EntityListeners)null); + return; + case EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__PRE_PERSIST: + setPrePersist((PrePersist)null); + return; + case EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__POST_PERSIST: + setPostPersist((PostPersist)null); + return; + case EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__PRE_REMOVE: + setPreRemove((PreRemove)null); + return; + case EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__POST_REMOVE: + setPostRemove((PostRemove)null); + return; + case EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__PRE_UPDATE: + setPreUpdate((PreUpdate)null); + return; + case EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__POST_UPDATE: + setPostUpdate((PostUpdate)null); + return; + case EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__POST_LOAD: + setPostLoad((PostLoad)null); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__ID_CLASS: + return idClass != null; + case EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__EXCLUDE_DEFAULT_LISTENERS: + return excludeDefaultListeners != EXCLUDE_DEFAULT_LISTENERS_EDEFAULT; + case EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__EXCLUDE_SUPERCLASS_LISTENERS: + return excludeSuperclassListeners != EXCLUDE_SUPERCLASS_LISTENERS_EDEFAULT; + case EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__ENTITY_LISTENERS: + return entityListeners != null; + case EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__PRE_PERSIST: + return prePersist != null; + case EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__POST_PERSIST: + return postPersist != null; + case EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__PRE_REMOVE: + return preRemove != null; + case EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__POST_REMOVE: + return postRemove != null; + case EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__PRE_UPDATE: + return preUpdate != null; + case EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__POST_UPDATE: + return postUpdate != null; + case EclipseLinkOrmPackage.XML_MAPPED_SUPERCLASS__POST_LOAD: + return postLoad != null; + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (excludeDefaultListeners: "); + result.append(excludeDefaultListeners); + result.append(", excludeSuperclassListeners: "); + result.append(excludeSuperclassListeners); + result.append(')'); + return result.toString(); + } + +} // XmlMappedSuperclass diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlMultiRelationshipMapping.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlMultiRelationshipMapping.java new file mode 100644 index 0000000000..a89a440999 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlMultiRelationshipMapping.java @@ -0,0 +1,112 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Multi Relationship Mapping</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMultiRelationshipMapping#getMappedBy <em>Mapped By</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMultiRelationshipMapping#getOrderBy <em>Order By</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMultiRelationshipMapping#getMapKey <em>Map Key</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlMultiRelationshipMapping() + * @model kind="class" interface="true" abstract="true" + * @generated + */ +public interface XmlMultiRelationshipMapping extends XmlRelationshipMapping +{ + /** + * Returns the value of the '<em><b>Mapped By</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Mapped By</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Mapped By</em>' attribute. + * @see #setMappedBy(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlMultiRelationshipMapping_MappedBy() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + String getMappedBy(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMultiRelationshipMapping#getMappedBy <em>Mapped By</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Mapped By</em>' attribute. + * @see #getMappedBy() + * @generated + */ + void setMappedBy(String value); + + /** + * Returns the value of the '<em><b>Order By</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Order By</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Order By</em>' attribute. + * @see #setOrderBy(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlMultiRelationshipMapping_OrderBy() + * @model dataType="org.eclipse.jpt.eclipselink.core.resource.elorm.OrderBy" + * @generated + */ + String getOrderBy(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMultiRelationshipMapping#getOrderBy <em>Order By</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Order By</em>' attribute. + * @see #getOrderBy() + * @generated + */ + void setOrderBy(String value); + + /** + * Returns the value of the '<em><b>Map Key</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Map Key</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Map Key</em>' containment reference. + * @see #setMapKey(MapKey) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlMultiRelationshipMapping_MapKey() + * @model containment="true" + * @generated + */ + MapKey getMapKey(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlMultiRelationshipMapping#getMapKey <em>Map Key</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Map Key</em>' containment reference. + * @see #getMapKey() + * @generated + */ + void setMapKey(MapKey value); + +} // XmlMultiRelationshipMapping diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlNamedColumn.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlNamedColumn.java new file mode 100644 index 0000000000..e0cbf3af48 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlNamedColumn.java @@ -0,0 +1,87 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.jpt.core.resource.common.JpaEObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Named Column</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlNamedColumn#getColumnDefinition <em>Column Definition</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlNamedColumn#getName <em>Name</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlNamedColumn() + * @model kind="class" interface="true" abstract="true" + * @extends JpaEObject + * @generated + */ +public interface XmlNamedColumn extends JpaEObject +{ + /** + * Returns the value of the '<em><b>Column Definition</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Column Definition</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Column Definition</em>' attribute. + * @see #setColumnDefinition(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlNamedColumn_ColumnDefinition() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + String getColumnDefinition(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlNamedColumn#getColumnDefinition <em>Column Definition</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Column Definition</em>' attribute. + * @see #getColumnDefinition() + * @generated + */ + void setColumnDefinition(String value); + + /** + * Returns the value of the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Name</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Name</em>' attribute. + * @see #setName(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlNamedColumn_Name() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + String getName(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlNamedColumn#getName <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Name</em>' attribute. + * @see #getName() + * @generated + */ + void setName(String value); + +} // XmlNamedColumn diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlNamedNativeQuery.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlNamedNativeQuery.java new file mode 100644 index 0000000000..2a9089e6bf --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlNamedNativeQuery.java @@ -0,0 +1,470 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +import org.eclipse.jpt.core.resource.common.AbstractJpaEObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Named Native Query</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlNamedNativeQuery#getResultClass <em>Result Class</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlNamedNativeQuery#getResultSetMapping <em>Result Set Mapping</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlNamedNativeQuery() + * @model kind="class" + * @generated + */ +public class XmlNamedNativeQuery extends AbstractJpaEObject implements XmlQuery +{ + /** + * The default value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected static final String NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected String name = NAME_EDEFAULT; + + /** + * The default value of the '{@link #getQuery() <em>Query</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getQuery() + * @generated + * @ordered + */ + protected static final String QUERY_EDEFAULT = null; + + /** + * The cached value of the '{@link #getQuery() <em>Query</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getQuery() + * @generated + * @ordered + */ + protected String query = QUERY_EDEFAULT; + + /** + * The cached value of the '{@link #getHints() <em>Hints</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getHints() + * @generated + * @ordered + */ + protected EList<XmlQueryHint> hints; + + /** + * The default value of the '{@link #getResultClass() <em>Result Class</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getResultClass() + * @generated + * @ordered + */ + protected static final String RESULT_CLASS_EDEFAULT = null; + + /** + * The cached value of the '{@link #getResultClass() <em>Result Class</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getResultClass() + * @generated + * @ordered + */ + protected String resultClass = RESULT_CLASS_EDEFAULT; + + /** + * The default value of the '{@link #getResultSetMapping() <em>Result Set Mapping</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getResultSetMapping() + * @generated + * @ordered + */ + protected static final String RESULT_SET_MAPPING_EDEFAULT = null; + + /** + * The cached value of the '{@link #getResultSetMapping() <em>Result Set Mapping</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getResultSetMapping() + * @generated + * @ordered + */ + protected String resultSetMapping = RESULT_SET_MAPPING_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected XmlNamedNativeQuery() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.XML_NAMED_NATIVE_QUERY; + } + + /** + * Returns the value of the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Name</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Name</em>' attribute. + * @see #setName(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlQuery_Name() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" required="true" + * @generated + */ + public String getName() + { + return name; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlNamedNativeQuery#getName <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Name</em>' attribute. + * @see #getName() + * @generated + */ + public void setName(String newName) + { + String oldName = name; + name = newName; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_NAMED_NATIVE_QUERY__NAME, oldName, name)); + } + + /** + * Returns the value of the '<em><b>Query</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Query</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Query</em>' attribute. + * @see #setQuery(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlQuery_Query() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" required="true" + * @generated + */ + public String getQuery() + { + return query; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlNamedNativeQuery#getQuery <em>Query</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Query</em>' attribute. + * @see #getQuery() + * @generated + */ + public void setQuery(String newQuery) + { + String oldQuery = query; + query = newQuery; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_NAMED_NATIVE_QUERY__QUERY, oldQuery, query)); + } + + /** + * Returns the value of the '<em><b>Hints</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlQueryHint}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Hints</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Hints</em>' containment reference list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlQuery_Hints() + * @model containment="true" + * @generated + */ + public EList<XmlQueryHint> getHints() + { + if (hints == null) + { + hints = new EObjectContainmentEList<XmlQueryHint>(XmlQueryHint.class, this, EclipseLinkOrmPackage.XML_NAMED_NATIVE_QUERY__HINTS); + } + return hints; + } + + /** + * Returns the value of the '<em><b>Result Class</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Result Class</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Result Class</em>' attribute. + * @see #setResultClass(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlNamedNativeQuery_ResultClass() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + public String getResultClass() + { + return resultClass; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlNamedNativeQuery#getResultClass <em>Result Class</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Result Class</em>' attribute. + * @see #getResultClass() + * @generated + */ + public void setResultClass(String newResultClass) + { + String oldResultClass = resultClass; + resultClass = newResultClass; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_NAMED_NATIVE_QUERY__RESULT_CLASS, oldResultClass, resultClass)); + } + + /** + * Returns the value of the '<em><b>Result Set Mapping</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Result Set Mapping</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Result Set Mapping</em>' attribute. + * @see #setResultSetMapping(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlNamedNativeQuery_ResultSetMapping() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + public String getResultSetMapping() + { + return resultSetMapping; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlNamedNativeQuery#getResultSetMapping <em>Result Set Mapping</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Result Set Mapping</em>' attribute. + * @see #getResultSetMapping() + * @generated + */ + public void setResultSetMapping(String newResultSetMapping) + { + String oldResultSetMapping = resultSetMapping; + resultSetMapping = newResultSetMapping; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_NAMED_NATIVE_QUERY__RESULT_SET_MAPPING, oldResultSetMapping, resultSetMapping)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_NAMED_NATIVE_QUERY__HINTS: + return ((InternalEList<?>)getHints()).basicRemove(otherEnd, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_NAMED_NATIVE_QUERY__NAME: + return getName(); + case EclipseLinkOrmPackage.XML_NAMED_NATIVE_QUERY__QUERY: + return getQuery(); + case EclipseLinkOrmPackage.XML_NAMED_NATIVE_QUERY__HINTS: + return getHints(); + case EclipseLinkOrmPackage.XML_NAMED_NATIVE_QUERY__RESULT_CLASS: + return getResultClass(); + case EclipseLinkOrmPackage.XML_NAMED_NATIVE_QUERY__RESULT_SET_MAPPING: + return getResultSetMapping(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_NAMED_NATIVE_QUERY__NAME: + setName((String)newValue); + return; + case EclipseLinkOrmPackage.XML_NAMED_NATIVE_QUERY__QUERY: + setQuery((String)newValue); + return; + case EclipseLinkOrmPackage.XML_NAMED_NATIVE_QUERY__HINTS: + getHints().clear(); + getHints().addAll((Collection<? extends XmlQueryHint>)newValue); + return; + case EclipseLinkOrmPackage.XML_NAMED_NATIVE_QUERY__RESULT_CLASS: + setResultClass((String)newValue); + return; + case EclipseLinkOrmPackage.XML_NAMED_NATIVE_QUERY__RESULT_SET_MAPPING: + setResultSetMapping((String)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_NAMED_NATIVE_QUERY__NAME: + setName(NAME_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_NAMED_NATIVE_QUERY__QUERY: + setQuery(QUERY_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_NAMED_NATIVE_QUERY__HINTS: + getHints().clear(); + return; + case EclipseLinkOrmPackage.XML_NAMED_NATIVE_QUERY__RESULT_CLASS: + setResultClass(RESULT_CLASS_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_NAMED_NATIVE_QUERY__RESULT_SET_MAPPING: + setResultSetMapping(RESULT_SET_MAPPING_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_NAMED_NATIVE_QUERY__NAME: + return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name); + case EclipseLinkOrmPackage.XML_NAMED_NATIVE_QUERY__QUERY: + return QUERY_EDEFAULT == null ? query != null : !QUERY_EDEFAULT.equals(query); + case EclipseLinkOrmPackage.XML_NAMED_NATIVE_QUERY__HINTS: + return hints != null && !hints.isEmpty(); + case EclipseLinkOrmPackage.XML_NAMED_NATIVE_QUERY__RESULT_CLASS: + return RESULT_CLASS_EDEFAULT == null ? resultClass != null : !RESULT_CLASS_EDEFAULT.equals(resultClass); + case EclipseLinkOrmPackage.XML_NAMED_NATIVE_QUERY__RESULT_SET_MAPPING: + return RESULT_SET_MAPPING_EDEFAULT == null ? resultSetMapping != null : !RESULT_SET_MAPPING_EDEFAULT.equals(resultSetMapping); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (name: "); + result.append(name); + result.append(", query: "); + result.append(query); + result.append(", resultClass: "); + result.append(resultClass); + result.append(", resultSetMapping: "); + result.append(resultSetMapping); + result.append(')'); + return result.toString(); + } + +} // XmlNamedNativeQuery diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlNamedQuery.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlNamedQuery.java new file mode 100644 index 0000000000..d7675da855 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlNamedQuery.java @@ -0,0 +1,329 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +import org.eclipse.jpt.core.resource.common.AbstractJpaEObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Named Query</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlNamedQuery() + * @model kind="class" + * @generated + */ +public class XmlNamedQuery extends AbstractJpaEObject implements XmlQuery +{ + /** + * The default value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected static final String NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected String name = NAME_EDEFAULT; + + /** + * The default value of the '{@link #getQuery() <em>Query</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getQuery() + * @generated + * @ordered + */ + protected static final String QUERY_EDEFAULT = null; + + /** + * The cached value of the '{@link #getQuery() <em>Query</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getQuery() + * @generated + * @ordered + */ + protected String query = QUERY_EDEFAULT; + + /** + * The cached value of the '{@link #getHints() <em>Hints</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getHints() + * @generated + * @ordered + */ + protected EList<XmlQueryHint> hints; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected XmlNamedQuery() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.XML_NAMED_QUERY; + } + + /** + * Returns the value of the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Name</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Name</em>' attribute. + * @see #setName(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlQuery_Name() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" required="true" + * @generated + */ + public String getName() + { + return name; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlNamedQuery#getName <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Name</em>' attribute. + * @see #getName() + * @generated + */ + public void setName(String newName) + { + String oldName = name; + name = newName; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_NAMED_QUERY__NAME, oldName, name)); + } + + /** + * Returns the value of the '<em><b>Query</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Query</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Query</em>' attribute. + * @see #setQuery(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlQuery_Query() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" required="true" + * @generated + */ + public String getQuery() + { + return query; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlNamedQuery#getQuery <em>Query</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Query</em>' attribute. + * @see #getQuery() + * @generated + */ + public void setQuery(String newQuery) + { + String oldQuery = query; + query = newQuery; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_NAMED_QUERY__QUERY, oldQuery, query)); + } + + /** + * Returns the value of the '<em><b>Hints</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlQueryHint}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Hints</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Hints</em>' containment reference list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlQuery_Hints() + * @model containment="true" + * @generated + */ + public EList<XmlQueryHint> getHints() + { + if (hints == null) + { + hints = new EObjectContainmentEList<XmlQueryHint>(XmlQueryHint.class, this, EclipseLinkOrmPackage.XML_NAMED_QUERY__HINTS); + } + return hints; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_NAMED_QUERY__HINTS: + return ((InternalEList<?>)getHints()).basicRemove(otherEnd, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_NAMED_QUERY__NAME: + return getName(); + case EclipseLinkOrmPackage.XML_NAMED_QUERY__QUERY: + return getQuery(); + case EclipseLinkOrmPackage.XML_NAMED_QUERY__HINTS: + return getHints(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_NAMED_QUERY__NAME: + setName((String)newValue); + return; + case EclipseLinkOrmPackage.XML_NAMED_QUERY__QUERY: + setQuery((String)newValue); + return; + case EclipseLinkOrmPackage.XML_NAMED_QUERY__HINTS: + getHints().clear(); + getHints().addAll((Collection<? extends XmlQueryHint>)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_NAMED_QUERY__NAME: + setName(NAME_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_NAMED_QUERY__QUERY: + setQuery(QUERY_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_NAMED_QUERY__HINTS: + getHints().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_NAMED_QUERY__NAME: + return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name); + case EclipseLinkOrmPackage.XML_NAMED_QUERY__QUERY: + return QUERY_EDEFAULT == null ? query != null : !QUERY_EDEFAULT.equals(query); + case EclipseLinkOrmPackage.XML_NAMED_QUERY__HINTS: + return hints != null && !hints.isEmpty(); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (name: "); + result.append(name); + result.append(", query: "); + result.append(query); + result.append(')'); + return result.toString(); + } + +} // XmlNamedQuery diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlNullAttributeMapping.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlNullAttributeMapping.java new file mode 100644 index 0000000000..7121434ed3 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlNullAttributeMapping.java @@ -0,0 +1,26 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Null Attribute Mapping</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlNullAttributeMapping() + * @model kind="class" interface="true" abstract="true" + * @generated + */ +public interface XmlNullAttributeMapping extends XmlAttributeMapping +{ +} // XmlNullAttributeMapping diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlOneToMany.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlOneToMany.java new file mode 100644 index 0000000000..a60a581e60 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlOneToMany.java @@ -0,0 +1,49 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.emf.common.util.EList; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml One To Many</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlOneToMany#getJoinColumns <em>Join Columns</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlOneToMany() + * @model kind="class" interface="true" abstract="true" + * @generated + */ +public interface XmlOneToMany extends XmlMultiRelationshipMapping +{ + /** + * Returns the value of the '<em><b>Join Columns</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlJoinColumn}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Join Columns</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Join Columns</em>' containment reference list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlOneToMany_JoinColumns() + * @model containment="true" + * @generated + */ + EList<XmlJoinColumn> getJoinColumns(); + +} // XmlOneToMany diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlOneToManyImpl.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlOneToManyImpl.java new file mode 100644 index 0000000000..5abfda246a --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlOneToManyImpl.java @@ -0,0 +1,791 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml One To Many Impl</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlOneToManyImpl() + * @model kind="class" + * @generated + */ +public class XmlOneToManyImpl extends AbstractXmlAttributeMapping implements XmlOneToMany +{ + /** + * The default value of the '{@link #getTargetEntity() <em>Target Entity</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTargetEntity() + * @generated + * @ordered + */ + protected static final String TARGET_ENTITY_EDEFAULT = null; + + /** + * The cached value of the '{@link #getTargetEntity() <em>Target Entity</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTargetEntity() + * @generated + * @ordered + */ + protected String targetEntity = TARGET_ENTITY_EDEFAULT; + + /** + * The default value of the '{@link #getFetch() <em>Fetch</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getFetch() + * @generated + * @ordered + */ + protected static final FetchType FETCH_EDEFAULT = FetchType.LAZY; + + /** + * The cached value of the '{@link #getFetch() <em>Fetch</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getFetch() + * @generated + * @ordered + */ + protected FetchType fetch = FETCH_EDEFAULT; + + /** + * The cached value of the '{@link #getJoinTable() <em>Join Table</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getJoinTable() + * @generated + * @ordered + */ + protected XmlJoinTable joinTable; + + /** + * The cached value of the '{@link #getCascade() <em>Cascade</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getCascade() + * @generated + * @ordered + */ + protected CascadeType cascade; + + /** + * The default value of the '{@link #getMappedBy() <em>Mapped By</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMappedBy() + * @generated + * @ordered + */ + protected static final String MAPPED_BY_EDEFAULT = null; + + /** + * The cached value of the '{@link #getMappedBy() <em>Mapped By</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMappedBy() + * @generated + * @ordered + */ + protected String mappedBy = MAPPED_BY_EDEFAULT; + + /** + * The default value of the '{@link #getOrderBy() <em>Order By</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getOrderBy() + * @generated + * @ordered + */ + protected static final String ORDER_BY_EDEFAULT = null; + + /** + * The cached value of the '{@link #getOrderBy() <em>Order By</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getOrderBy() + * @generated + * @ordered + */ + protected String orderBy = ORDER_BY_EDEFAULT; + + /** + * The cached value of the '{@link #getMapKey() <em>Map Key</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMapKey() + * @generated + * @ordered + */ + protected MapKey mapKey; + + /** + * The cached value of the '{@link #getJoinColumns() <em>Join Columns</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getJoinColumns() + * @generated + * @ordered + */ + protected EList<XmlJoinColumn> joinColumns; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected XmlOneToManyImpl() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.XML_ONE_TO_MANY_IMPL; + } + + /** + * Returns the value of the '<em><b>Target Entity</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Target Entity</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Target Entity</em>' attribute. + * @see #setTargetEntity(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlRelationshipMapping_TargetEntity() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + public String getTargetEntity() + { + return targetEntity; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlOneToManyImpl#getTargetEntity <em>Target Entity</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Target Entity</em>' attribute. + * @see #getTargetEntity() + * @generated + */ + public void setTargetEntity(String newTargetEntity) + { + String oldTargetEntity = targetEntity; + targetEntity = newTargetEntity; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__TARGET_ENTITY, oldTargetEntity, targetEntity)); + } + + /** + * Returns the value of the '<em><b>Fetch</b></em>' attribute. + * The default value is <code>"LAZY"</code>. + * The literals are from the enumeration {@link org.eclipse.jpt.eclipselink.core.resource.elorm.FetchType}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Fetch</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Fetch</em>' attribute. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.FetchType + * @see #setFetch(FetchType) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlRelationshipMapping_Fetch() + * @model default="LAZY" + * @generated + */ + public FetchType getFetch() + { + return fetch; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlOneToManyImpl#getFetch <em>Fetch</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Fetch</em>' attribute. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.FetchType + * @see #getFetch() + * @generated + */ + public void setFetch(FetchType newFetch) + { + FetchType oldFetch = fetch; + fetch = newFetch == null ? FETCH_EDEFAULT : newFetch; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__FETCH, oldFetch, fetch)); + } + + /** + * Returns the value of the '<em><b>Join Table</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Join Table</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Join Table</em>' containment reference. + * @see #setJoinTable(XmlJoinTable) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlRelationshipMapping_JoinTable() + * @model containment="true" + * @generated + */ + public XmlJoinTable getJoinTable() + { + return joinTable; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetJoinTable(XmlJoinTable newJoinTable, NotificationChain msgs) + { + XmlJoinTable oldJoinTable = joinTable; + joinTable = newJoinTable; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__JOIN_TABLE, oldJoinTable, newJoinTable); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlOneToManyImpl#getJoinTable <em>Join Table</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Join Table</em>' containment reference. + * @see #getJoinTable() + * @generated + */ + public void setJoinTable(XmlJoinTable newJoinTable) + { + if (newJoinTable != joinTable) + { + NotificationChain msgs = null; + if (joinTable != null) + msgs = ((InternalEObject)joinTable).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__JOIN_TABLE, null, msgs); + if (newJoinTable != null) + msgs = ((InternalEObject)newJoinTable).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__JOIN_TABLE, null, msgs); + msgs = basicSetJoinTable(newJoinTable, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__JOIN_TABLE, newJoinTable, newJoinTable)); + } + + /** + * Returns the value of the '<em><b>Cascade</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Cascade</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Cascade</em>' containment reference. + * @see #setCascade(CascadeType) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlRelationshipMapping_Cascade() + * @model containment="true" + * @generated + */ + public CascadeType getCascade() + { + return cascade; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetCascade(CascadeType newCascade, NotificationChain msgs) + { + CascadeType oldCascade = cascade; + cascade = newCascade; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__CASCADE, oldCascade, newCascade); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlOneToManyImpl#getCascade <em>Cascade</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Cascade</em>' containment reference. + * @see #getCascade() + * @generated + */ + public void setCascade(CascadeType newCascade) + { + if (newCascade != cascade) + { + NotificationChain msgs = null; + if (cascade != null) + msgs = ((InternalEObject)cascade).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__CASCADE, null, msgs); + if (newCascade != null) + msgs = ((InternalEObject)newCascade).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__CASCADE, null, msgs); + msgs = basicSetCascade(newCascade, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__CASCADE, newCascade, newCascade)); + } + + /** + * Returns the value of the '<em><b>Mapped By</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Mapped By</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Mapped By</em>' attribute. + * @see #setMappedBy(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlMultiRelationshipMapping_MappedBy() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + public String getMappedBy() + { + return mappedBy; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlOneToManyImpl#getMappedBy <em>Mapped By</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Mapped By</em>' attribute. + * @see #getMappedBy() + * @generated + */ + public void setMappedBy(String newMappedBy) + { + String oldMappedBy = mappedBy; + mappedBy = newMappedBy; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__MAPPED_BY, oldMappedBy, mappedBy)); + } + + /** + * Returns the value of the '<em><b>Order By</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Order By</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Order By</em>' attribute. + * @see #setOrderBy(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlMultiRelationshipMapping_OrderBy() + * @model dataType="org.eclipse.jpt.eclipselink.core.resource.elorm.OrderBy" + * @generated + */ + public String getOrderBy() + { + return orderBy; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlOneToManyImpl#getOrderBy <em>Order By</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Order By</em>' attribute. + * @see #getOrderBy() + * @generated + */ + public void setOrderBy(String newOrderBy) + { + String oldOrderBy = orderBy; + orderBy = newOrderBy; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__ORDER_BY, oldOrderBy, orderBy)); + } + + /** + * Returns the value of the '<em><b>Map Key</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Map Key</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Map Key</em>' containment reference. + * @see #setMapKey(MapKey) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlMultiRelationshipMapping_MapKey() + * @model containment="true" + * @generated + */ + public MapKey getMapKey() + { + return mapKey; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetMapKey(MapKey newMapKey, NotificationChain msgs) + { + MapKey oldMapKey = mapKey; + mapKey = newMapKey; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__MAP_KEY, oldMapKey, newMapKey); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlOneToManyImpl#getMapKey <em>Map Key</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Map Key</em>' containment reference. + * @see #getMapKey() + * @generated + */ + public void setMapKey(MapKey newMapKey) + { + if (newMapKey != mapKey) + { + NotificationChain msgs = null; + if (mapKey != null) + msgs = ((InternalEObject)mapKey).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__MAP_KEY, null, msgs); + if (newMapKey != null) + msgs = ((InternalEObject)newMapKey).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__MAP_KEY, null, msgs); + msgs = basicSetMapKey(newMapKey, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__MAP_KEY, newMapKey, newMapKey)); + } + + /** + * Returns the value of the '<em><b>Join Columns</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlJoinColumn}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Join Columns</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Join Columns</em>' containment reference list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlOneToMany_JoinColumns() + * @model containment="true" + * @generated + */ + public EList<XmlJoinColumn> getJoinColumns() + { + if (joinColumns == null) + { + joinColumns = new EObjectContainmentEList<XmlJoinColumn>(XmlJoinColumn.class, this, EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__JOIN_COLUMNS); + } + return joinColumns; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__JOIN_TABLE: + return basicSetJoinTable(null, msgs); + case EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__CASCADE: + return basicSetCascade(null, msgs); + case EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__MAP_KEY: + return basicSetMapKey(null, msgs); + case EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__JOIN_COLUMNS: + return ((InternalEList<?>)getJoinColumns()).basicRemove(otherEnd, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__TARGET_ENTITY: + return getTargetEntity(); + case EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__FETCH: + return getFetch(); + case EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__JOIN_TABLE: + return getJoinTable(); + case EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__CASCADE: + return getCascade(); + case EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__MAPPED_BY: + return getMappedBy(); + case EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__ORDER_BY: + return getOrderBy(); + case EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__MAP_KEY: + return getMapKey(); + case EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__JOIN_COLUMNS: + return getJoinColumns(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__TARGET_ENTITY: + setTargetEntity((String)newValue); + return; + case EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__FETCH: + setFetch((FetchType)newValue); + return; + case EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__JOIN_TABLE: + setJoinTable((XmlJoinTable)newValue); + return; + case EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__CASCADE: + setCascade((CascadeType)newValue); + return; + case EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__MAPPED_BY: + setMappedBy((String)newValue); + return; + case EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__ORDER_BY: + setOrderBy((String)newValue); + return; + case EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__MAP_KEY: + setMapKey((MapKey)newValue); + return; + case EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__JOIN_COLUMNS: + getJoinColumns().clear(); + getJoinColumns().addAll((Collection<? extends XmlJoinColumn>)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__TARGET_ENTITY: + setTargetEntity(TARGET_ENTITY_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__FETCH: + setFetch(FETCH_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__JOIN_TABLE: + setJoinTable((XmlJoinTable)null); + return; + case EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__CASCADE: + setCascade((CascadeType)null); + return; + case EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__MAPPED_BY: + setMappedBy(MAPPED_BY_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__ORDER_BY: + setOrderBy(ORDER_BY_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__MAP_KEY: + setMapKey((MapKey)null); + return; + case EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__JOIN_COLUMNS: + getJoinColumns().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__TARGET_ENTITY: + return TARGET_ENTITY_EDEFAULT == null ? targetEntity != null : !TARGET_ENTITY_EDEFAULT.equals(targetEntity); + case EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__FETCH: + return fetch != FETCH_EDEFAULT; + case EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__JOIN_TABLE: + return joinTable != null; + case EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__CASCADE: + return cascade != null; + case EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__MAPPED_BY: + return MAPPED_BY_EDEFAULT == null ? mappedBy != null : !MAPPED_BY_EDEFAULT.equals(mappedBy); + case EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__ORDER_BY: + return ORDER_BY_EDEFAULT == null ? orderBy != null : !ORDER_BY_EDEFAULT.equals(orderBy); + case EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__MAP_KEY: + return mapKey != null; + case EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__JOIN_COLUMNS: + return joinColumns != null && !joinColumns.isEmpty(); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) + { + if (baseClass == XmlRelationshipMapping.class) + { + switch (derivedFeatureID) + { + case EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__TARGET_ENTITY: return EclipseLinkOrmPackage.XML_RELATIONSHIP_MAPPING__TARGET_ENTITY; + case EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__FETCH: return EclipseLinkOrmPackage.XML_RELATIONSHIP_MAPPING__FETCH; + case EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__JOIN_TABLE: return EclipseLinkOrmPackage.XML_RELATIONSHIP_MAPPING__JOIN_TABLE; + case EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__CASCADE: return EclipseLinkOrmPackage.XML_RELATIONSHIP_MAPPING__CASCADE; + default: return -1; + } + } + if (baseClass == XmlMultiRelationshipMapping.class) + { + switch (derivedFeatureID) + { + case EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__MAPPED_BY: return EclipseLinkOrmPackage.XML_MULTI_RELATIONSHIP_MAPPING__MAPPED_BY; + case EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__ORDER_BY: return EclipseLinkOrmPackage.XML_MULTI_RELATIONSHIP_MAPPING__ORDER_BY; + case EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__MAP_KEY: return EclipseLinkOrmPackage.XML_MULTI_RELATIONSHIP_MAPPING__MAP_KEY; + default: return -1; + } + } + if (baseClass == XmlOneToMany.class) + { + switch (derivedFeatureID) + { + case EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__JOIN_COLUMNS: return EclipseLinkOrmPackage.XML_ONE_TO_MANY__JOIN_COLUMNS; + default: return -1; + } + } + return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) + { + if (baseClass == XmlRelationshipMapping.class) + { + switch (baseFeatureID) + { + case EclipseLinkOrmPackage.XML_RELATIONSHIP_MAPPING__TARGET_ENTITY: return EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__TARGET_ENTITY; + case EclipseLinkOrmPackage.XML_RELATIONSHIP_MAPPING__FETCH: return EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__FETCH; + case EclipseLinkOrmPackage.XML_RELATIONSHIP_MAPPING__JOIN_TABLE: return EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__JOIN_TABLE; + case EclipseLinkOrmPackage.XML_RELATIONSHIP_MAPPING__CASCADE: return EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__CASCADE; + default: return -1; + } + } + if (baseClass == XmlMultiRelationshipMapping.class) + { + switch (baseFeatureID) + { + case EclipseLinkOrmPackage.XML_MULTI_RELATIONSHIP_MAPPING__MAPPED_BY: return EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__MAPPED_BY; + case EclipseLinkOrmPackage.XML_MULTI_RELATIONSHIP_MAPPING__ORDER_BY: return EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__ORDER_BY; + case EclipseLinkOrmPackage.XML_MULTI_RELATIONSHIP_MAPPING__MAP_KEY: return EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__MAP_KEY; + default: return -1; + } + } + if (baseClass == XmlOneToMany.class) + { + switch (baseFeatureID) + { + case EclipseLinkOrmPackage.XML_ONE_TO_MANY__JOIN_COLUMNS: return EclipseLinkOrmPackage.XML_ONE_TO_MANY_IMPL__JOIN_COLUMNS; + default: return -1; + } + } + return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (targetEntity: "); + result.append(targetEntity); + result.append(", fetch: "); + result.append(fetch); + result.append(", mappedBy: "); + result.append(mappedBy); + result.append(", orderBy: "); + result.append(orderBy); + result.append(')'); + return result.toString(); + } + +} // XmlOneToManyImpl diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlOneToOne.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlOneToOne.java new file mode 100644 index 0000000000..04615f0ff8 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlOneToOne.java @@ -0,0 +1,76 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.emf.common.util.EList; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml One To One</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlOneToOne#getMappedBy <em>Mapped By</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlOneToOne#getPrimaryKeyJoinColumns <em>Primary Key Join Columns</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlOneToOne() + * @model kind="class" interface="true" abstract="true" + * @generated + */ +public interface XmlOneToOne extends XmlSingleRelationshipMapping +{ + /** + * Returns the value of the '<em><b>Mapped By</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Mapped By</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Mapped By</em>' attribute. + * @see #setMappedBy(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlOneToOne_MappedBy() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + String getMappedBy(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlOneToOne#getMappedBy <em>Mapped By</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Mapped By</em>' attribute. + * @see #getMappedBy() + * @generated + */ + void setMappedBy(String value); + + /** + * Returns the value of the '<em><b>Primary Key Join Columns</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPrimaryKeyJoinColumn}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Primary Key Join Columns</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Primary Key Join Columns</em>' containment reference list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlOneToOne_PrimaryKeyJoinColumns() + * @model containment="true" + * @generated + */ + EList<XmlPrimaryKeyJoinColumn> getPrimaryKeyJoinColumns(); + +} // XmlOneToOne diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlOneToOneImpl.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlOneToOneImpl.java new file mode 100644 index 0000000000..57b03a2a8a --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlOneToOneImpl.java @@ -0,0 +1,755 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml One To One Impl</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlOneToOneImpl() + * @model kind="class" + * @generated + */ +public class XmlOneToOneImpl extends AbstractXmlAttributeMapping implements XmlOneToOne +{ + /** + * The default value of the '{@link #getTargetEntity() <em>Target Entity</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTargetEntity() + * @generated + * @ordered + */ + protected static final String TARGET_ENTITY_EDEFAULT = null; + + /** + * The cached value of the '{@link #getTargetEntity() <em>Target Entity</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTargetEntity() + * @generated + * @ordered + */ + protected String targetEntity = TARGET_ENTITY_EDEFAULT; + + /** + * The default value of the '{@link #getFetch() <em>Fetch</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getFetch() + * @generated + * @ordered + */ + protected static final FetchType FETCH_EDEFAULT = FetchType.LAZY; + + /** + * The cached value of the '{@link #getFetch() <em>Fetch</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getFetch() + * @generated + * @ordered + */ + protected FetchType fetch = FETCH_EDEFAULT; + + /** + * The cached value of the '{@link #getJoinTable() <em>Join Table</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getJoinTable() + * @generated + * @ordered + */ + protected XmlJoinTable joinTable; + + /** + * The cached value of the '{@link #getCascade() <em>Cascade</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getCascade() + * @generated + * @ordered + */ + protected CascadeType cascade; + + /** + * The default value of the '{@link #getOptional() <em>Optional</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getOptional() + * @generated + * @ordered + */ + protected static final Boolean OPTIONAL_EDEFAULT = null; + + /** + * The cached value of the '{@link #getOptional() <em>Optional</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getOptional() + * @generated + * @ordered + */ + protected Boolean optional = OPTIONAL_EDEFAULT; + + /** + * The cached value of the '{@link #getJoinColumns() <em>Join Columns</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getJoinColumns() + * @generated + * @ordered + */ + protected EList<XmlJoinColumn> joinColumns; + + /** + * The default value of the '{@link #getMappedBy() <em>Mapped By</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMappedBy() + * @generated + * @ordered + */ + protected static final String MAPPED_BY_EDEFAULT = null; + + /** + * The cached value of the '{@link #getMappedBy() <em>Mapped By</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMappedBy() + * @generated + * @ordered + */ + protected String mappedBy = MAPPED_BY_EDEFAULT; + + /** + * The cached value of the '{@link #getPrimaryKeyJoinColumns() <em>Primary Key Join Columns</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPrimaryKeyJoinColumns() + * @generated + * @ordered + */ + protected EList<XmlPrimaryKeyJoinColumn> primaryKeyJoinColumns; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected XmlOneToOneImpl() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.XML_ONE_TO_ONE_IMPL; + } + + /** + * Returns the value of the '<em><b>Target Entity</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Target Entity</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Target Entity</em>' attribute. + * @see #setTargetEntity(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlRelationshipMapping_TargetEntity() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + public String getTargetEntity() + { + return targetEntity; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlOneToOneImpl#getTargetEntity <em>Target Entity</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Target Entity</em>' attribute. + * @see #getTargetEntity() + * @generated + */ + public void setTargetEntity(String newTargetEntity) + { + String oldTargetEntity = targetEntity; + targetEntity = newTargetEntity; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__TARGET_ENTITY, oldTargetEntity, targetEntity)); + } + + /** + * Returns the value of the '<em><b>Fetch</b></em>' attribute. + * The default value is <code>"LAZY"</code>. + * The literals are from the enumeration {@link org.eclipse.jpt.eclipselink.core.resource.elorm.FetchType}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Fetch</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Fetch</em>' attribute. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.FetchType + * @see #setFetch(FetchType) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlRelationshipMapping_Fetch() + * @model default="LAZY" + * @generated + */ + public FetchType getFetch() + { + return fetch; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlOneToOneImpl#getFetch <em>Fetch</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Fetch</em>' attribute. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.FetchType + * @see #getFetch() + * @generated + */ + public void setFetch(FetchType newFetch) + { + FetchType oldFetch = fetch; + fetch = newFetch == null ? FETCH_EDEFAULT : newFetch; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__FETCH, oldFetch, fetch)); + } + + /** + * Returns the value of the '<em><b>Join Table</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Join Table</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Join Table</em>' containment reference. + * @see #setJoinTable(XmlJoinTable) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlRelationshipMapping_JoinTable() + * @model containment="true" + * @generated + */ + public XmlJoinTable getJoinTable() + { + return joinTable; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetJoinTable(XmlJoinTable newJoinTable, NotificationChain msgs) + { + XmlJoinTable oldJoinTable = joinTable; + joinTable = newJoinTable; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__JOIN_TABLE, oldJoinTable, newJoinTable); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlOneToOneImpl#getJoinTable <em>Join Table</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Join Table</em>' containment reference. + * @see #getJoinTable() + * @generated + */ + public void setJoinTable(XmlJoinTable newJoinTable) + { + if (newJoinTable != joinTable) + { + NotificationChain msgs = null; + if (joinTable != null) + msgs = ((InternalEObject)joinTable).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__JOIN_TABLE, null, msgs); + if (newJoinTable != null) + msgs = ((InternalEObject)newJoinTable).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__JOIN_TABLE, null, msgs); + msgs = basicSetJoinTable(newJoinTable, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__JOIN_TABLE, newJoinTable, newJoinTable)); + } + + /** + * Returns the value of the '<em><b>Cascade</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Cascade</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Cascade</em>' containment reference. + * @see #setCascade(CascadeType) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlRelationshipMapping_Cascade() + * @model containment="true" + * @generated + */ + public CascadeType getCascade() + { + return cascade; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetCascade(CascadeType newCascade, NotificationChain msgs) + { + CascadeType oldCascade = cascade; + cascade = newCascade; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__CASCADE, oldCascade, newCascade); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlOneToOneImpl#getCascade <em>Cascade</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Cascade</em>' containment reference. + * @see #getCascade() + * @generated + */ + public void setCascade(CascadeType newCascade) + { + if (newCascade != cascade) + { + NotificationChain msgs = null; + if (cascade != null) + msgs = ((InternalEObject)cascade).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__CASCADE, null, msgs); + if (newCascade != null) + msgs = ((InternalEObject)newCascade).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__CASCADE, null, msgs); + msgs = basicSetCascade(newCascade, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__CASCADE, newCascade, newCascade)); + } + + /** + * Returns the value of the '<em><b>Optional</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Optional</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Optional</em>' attribute. + * @see #setOptional(Boolean) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlSingleRelationshipMapping_Optional() + * @model dataType="org.eclipse.emf.ecore.xml.type.BooleanObject" + * @generated + */ + public Boolean getOptional() + { + return optional; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlOneToOneImpl#getOptional <em>Optional</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Optional</em>' attribute. + * @see #getOptional() + * @generated + */ + public void setOptional(Boolean newOptional) + { + Boolean oldOptional = optional; + optional = newOptional; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__OPTIONAL, oldOptional, optional)); + } + + /** + * Returns the value of the '<em><b>Join Columns</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlJoinColumn}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Join Columns</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Join Columns</em>' containment reference list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlSingleRelationshipMapping_JoinColumns() + * @model containment="true" + * @generated + */ + public EList<XmlJoinColumn> getJoinColumns() + { + if (joinColumns == null) + { + joinColumns = new EObjectContainmentEList<XmlJoinColumn>(XmlJoinColumn.class, this, EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__JOIN_COLUMNS); + } + return joinColumns; + } + + /** + * Returns the value of the '<em><b>Mapped By</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Mapped By</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Mapped By</em>' attribute. + * @see #setMappedBy(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlOneToOne_MappedBy() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + public String getMappedBy() + { + return mappedBy; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlOneToOneImpl#getMappedBy <em>Mapped By</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Mapped By</em>' attribute. + * @see #getMappedBy() + * @generated + */ + public void setMappedBy(String newMappedBy) + { + String oldMappedBy = mappedBy; + mappedBy = newMappedBy; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__MAPPED_BY, oldMappedBy, mappedBy)); + } + + /** + * Returns the value of the '<em><b>Primary Key Join Columns</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPrimaryKeyJoinColumn}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Primary Key Join Columns</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Primary Key Join Columns</em>' containment reference list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlOneToOne_PrimaryKeyJoinColumns() + * @model containment="true" + * @generated + */ + public EList<XmlPrimaryKeyJoinColumn> getPrimaryKeyJoinColumns() + { + if (primaryKeyJoinColumns == null) + { + primaryKeyJoinColumns = new EObjectContainmentEList<XmlPrimaryKeyJoinColumn>(XmlPrimaryKeyJoinColumn.class, this, EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__PRIMARY_KEY_JOIN_COLUMNS); + } + return primaryKeyJoinColumns; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__JOIN_TABLE: + return basicSetJoinTable(null, msgs); + case EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__CASCADE: + return basicSetCascade(null, msgs); + case EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__JOIN_COLUMNS: + return ((InternalEList<?>)getJoinColumns()).basicRemove(otherEnd, msgs); + case EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__PRIMARY_KEY_JOIN_COLUMNS: + return ((InternalEList<?>)getPrimaryKeyJoinColumns()).basicRemove(otherEnd, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__TARGET_ENTITY: + return getTargetEntity(); + case EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__FETCH: + return getFetch(); + case EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__JOIN_TABLE: + return getJoinTable(); + case EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__CASCADE: + return getCascade(); + case EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__OPTIONAL: + return getOptional(); + case EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__JOIN_COLUMNS: + return getJoinColumns(); + case EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__MAPPED_BY: + return getMappedBy(); + case EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__PRIMARY_KEY_JOIN_COLUMNS: + return getPrimaryKeyJoinColumns(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__TARGET_ENTITY: + setTargetEntity((String)newValue); + return; + case EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__FETCH: + setFetch((FetchType)newValue); + return; + case EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__JOIN_TABLE: + setJoinTable((XmlJoinTable)newValue); + return; + case EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__CASCADE: + setCascade((CascadeType)newValue); + return; + case EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__OPTIONAL: + setOptional((Boolean)newValue); + return; + case EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__JOIN_COLUMNS: + getJoinColumns().clear(); + getJoinColumns().addAll((Collection<? extends XmlJoinColumn>)newValue); + return; + case EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__MAPPED_BY: + setMappedBy((String)newValue); + return; + case EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__PRIMARY_KEY_JOIN_COLUMNS: + getPrimaryKeyJoinColumns().clear(); + getPrimaryKeyJoinColumns().addAll((Collection<? extends XmlPrimaryKeyJoinColumn>)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__TARGET_ENTITY: + setTargetEntity(TARGET_ENTITY_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__FETCH: + setFetch(FETCH_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__JOIN_TABLE: + setJoinTable((XmlJoinTable)null); + return; + case EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__CASCADE: + setCascade((CascadeType)null); + return; + case EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__OPTIONAL: + setOptional(OPTIONAL_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__JOIN_COLUMNS: + getJoinColumns().clear(); + return; + case EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__MAPPED_BY: + setMappedBy(MAPPED_BY_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__PRIMARY_KEY_JOIN_COLUMNS: + getPrimaryKeyJoinColumns().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__TARGET_ENTITY: + return TARGET_ENTITY_EDEFAULT == null ? targetEntity != null : !TARGET_ENTITY_EDEFAULT.equals(targetEntity); + case EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__FETCH: + return fetch != FETCH_EDEFAULT; + case EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__JOIN_TABLE: + return joinTable != null; + case EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__CASCADE: + return cascade != null; + case EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__OPTIONAL: + return OPTIONAL_EDEFAULT == null ? optional != null : !OPTIONAL_EDEFAULT.equals(optional); + case EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__JOIN_COLUMNS: + return joinColumns != null && !joinColumns.isEmpty(); + case EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__MAPPED_BY: + return MAPPED_BY_EDEFAULT == null ? mappedBy != null : !MAPPED_BY_EDEFAULT.equals(mappedBy); + case EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__PRIMARY_KEY_JOIN_COLUMNS: + return primaryKeyJoinColumns != null && !primaryKeyJoinColumns.isEmpty(); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) + { + if (baseClass == XmlRelationshipMapping.class) + { + switch (derivedFeatureID) + { + case EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__TARGET_ENTITY: return EclipseLinkOrmPackage.XML_RELATIONSHIP_MAPPING__TARGET_ENTITY; + case EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__FETCH: return EclipseLinkOrmPackage.XML_RELATIONSHIP_MAPPING__FETCH; + case EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__JOIN_TABLE: return EclipseLinkOrmPackage.XML_RELATIONSHIP_MAPPING__JOIN_TABLE; + case EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__CASCADE: return EclipseLinkOrmPackage.XML_RELATIONSHIP_MAPPING__CASCADE; + default: return -1; + } + } + if (baseClass == XmlSingleRelationshipMapping.class) + { + switch (derivedFeatureID) + { + case EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__OPTIONAL: return EclipseLinkOrmPackage.XML_SINGLE_RELATIONSHIP_MAPPING__OPTIONAL; + case EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__JOIN_COLUMNS: return EclipseLinkOrmPackage.XML_SINGLE_RELATIONSHIP_MAPPING__JOIN_COLUMNS; + default: return -1; + } + } + if (baseClass == XmlOneToOne.class) + { + switch (derivedFeatureID) + { + case EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__MAPPED_BY: return EclipseLinkOrmPackage.XML_ONE_TO_ONE__MAPPED_BY; + case EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__PRIMARY_KEY_JOIN_COLUMNS: return EclipseLinkOrmPackage.XML_ONE_TO_ONE__PRIMARY_KEY_JOIN_COLUMNS; + default: return -1; + } + } + return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) + { + if (baseClass == XmlRelationshipMapping.class) + { + switch (baseFeatureID) + { + case EclipseLinkOrmPackage.XML_RELATIONSHIP_MAPPING__TARGET_ENTITY: return EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__TARGET_ENTITY; + case EclipseLinkOrmPackage.XML_RELATIONSHIP_MAPPING__FETCH: return EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__FETCH; + case EclipseLinkOrmPackage.XML_RELATIONSHIP_MAPPING__JOIN_TABLE: return EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__JOIN_TABLE; + case EclipseLinkOrmPackage.XML_RELATIONSHIP_MAPPING__CASCADE: return EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__CASCADE; + default: return -1; + } + } + if (baseClass == XmlSingleRelationshipMapping.class) + { + switch (baseFeatureID) + { + case EclipseLinkOrmPackage.XML_SINGLE_RELATIONSHIP_MAPPING__OPTIONAL: return EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__OPTIONAL; + case EclipseLinkOrmPackage.XML_SINGLE_RELATIONSHIP_MAPPING__JOIN_COLUMNS: return EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__JOIN_COLUMNS; + default: return -1; + } + } + if (baseClass == XmlOneToOne.class) + { + switch (baseFeatureID) + { + case EclipseLinkOrmPackage.XML_ONE_TO_ONE__MAPPED_BY: return EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__MAPPED_BY; + case EclipseLinkOrmPackage.XML_ONE_TO_ONE__PRIMARY_KEY_JOIN_COLUMNS: return EclipseLinkOrmPackage.XML_ONE_TO_ONE_IMPL__PRIMARY_KEY_JOIN_COLUMNS; + default: return -1; + } + } + return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (targetEntity: "); + result.append(targetEntity); + result.append(", fetch: "); + result.append(fetch); + result.append(", optional: "); + result.append(optional); + result.append(", mappedBy: "); + result.append(mappedBy); + result.append(')'); + return result.toString(); + } + +} // XmlOneToOneImpl diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlPersistenceUnitDefaults.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlPersistenceUnitDefaults.java new file mode 100644 index 0000000000..d3e597f99e --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlPersistenceUnitDefaults.java @@ -0,0 +1,507 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.jpt.core.resource.common.AbstractJpaEObject; +import org.eclipse.jpt.core.resource.common.JpaEObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Persistence Unit Defaults</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPersistenceUnitDefaults#getSchema <em>Schema</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPersistenceUnitDefaults#getCatalog <em>Catalog</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPersistenceUnitDefaults#getAccess <em>Access</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPersistenceUnitDefaults#isCascadePersist <em>Cascade Persist</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPersistenceUnitDefaults#getEntityListeners <em>Entity Listeners</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlPersistenceUnitDefaults() + * @model kind="class" + * @extends JpaEObject + * @generated + */ +public class XmlPersistenceUnitDefaults extends AbstractJpaEObject implements JpaEObject +{ + /** + * The default value of the '{@link #getSchema() <em>Schema</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSchema() + * @generated + * @ordered + */ + protected static final String SCHEMA_EDEFAULT = null; + + /** + * The cached value of the '{@link #getSchema() <em>Schema</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSchema() + * @generated + * @ordered + */ + protected String schema = SCHEMA_EDEFAULT; + + /** + * The default value of the '{@link #getCatalog() <em>Catalog</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getCatalog() + * @generated + * @ordered + */ + protected static final String CATALOG_EDEFAULT = null; + + /** + * The cached value of the '{@link #getCatalog() <em>Catalog</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getCatalog() + * @generated + * @ordered + */ + protected String catalog = CATALOG_EDEFAULT; + + /** + * The default value of the '{@link #getAccess() <em>Access</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getAccess() + * @generated + * @ordered + */ + protected static final AccessType ACCESS_EDEFAULT = AccessType.PROPERTY; + + /** + * The cached value of the '{@link #getAccess() <em>Access</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getAccess() + * @generated + * @ordered + */ + protected AccessType access = ACCESS_EDEFAULT; + + /** + * The default value of the '{@link #isCascadePersist() <em>Cascade Persist</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isCascadePersist() + * @generated + * @ordered + */ + protected static final boolean CASCADE_PERSIST_EDEFAULT = false; + + /** + * The cached value of the '{@link #isCascadePersist() <em>Cascade Persist</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isCascadePersist() + * @generated + * @ordered + */ + protected boolean cascadePersist = CASCADE_PERSIST_EDEFAULT; + + /** + * The cached value of the '{@link #getEntityListeners() <em>Entity Listeners</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getEntityListeners() + * @generated + * @ordered + */ + protected EntityListeners entityListeners; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected XmlPersistenceUnitDefaults() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.XML_PERSISTENCE_UNIT_DEFAULTS; + } + + /** + * Returns the value of the '<em><b>Schema</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Schema</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Schema</em>' attribute. + * @see #setSchema(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlPersistenceUnitDefaults_Schema() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + public String getSchema() + { + return schema; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPersistenceUnitDefaults#getSchema <em>Schema</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Schema</em>' attribute. + * @see #getSchema() + * @generated + */ + public void setSchema(String newSchema) + { + String oldSchema = schema; + schema = newSchema; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_PERSISTENCE_UNIT_DEFAULTS__SCHEMA, oldSchema, schema)); + } + + /** + * Returns the value of the '<em><b>Catalog</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Catalog</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Catalog</em>' attribute. + * @see #setCatalog(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlPersistenceUnitDefaults_Catalog() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + public String getCatalog() + { + return catalog; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPersistenceUnitDefaults#getCatalog <em>Catalog</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Catalog</em>' attribute. + * @see #getCatalog() + * @generated + */ + public void setCatalog(String newCatalog) + { + String oldCatalog = catalog; + catalog = newCatalog; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_PERSISTENCE_UNIT_DEFAULTS__CATALOG, oldCatalog, catalog)); + } + + /** + * Returns the value of the '<em><b>Access</b></em>' attribute. + * The default value is <code>"PROPERTY"</code>. + * The literals are from the enumeration {@link org.eclipse.jpt.eclipselink.core.resource.elorm.AccessType}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Access</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Access</em>' attribute. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.AccessType + * @see #setAccess(AccessType) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlPersistenceUnitDefaults_Access() + * @model default="PROPERTY" + * @generated + */ + public AccessType getAccess() + { + return access; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPersistenceUnitDefaults#getAccess <em>Access</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Access</em>' attribute. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.AccessType + * @see #getAccess() + * @generated + */ + public void setAccess(AccessType newAccess) + { + AccessType oldAccess = access; + access = newAccess == null ? ACCESS_EDEFAULT : newAccess; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_PERSISTENCE_UNIT_DEFAULTS__ACCESS, oldAccess, access)); + } + + /** + * Returns the value of the '<em><b>Cascade Persist</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Cascade Persist</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Cascade Persist</em>' attribute. + * @see #setCascadePersist(boolean) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlPersistenceUnitDefaults_CascadePersist() + * @model dataType="org.eclipse.emf.ecore.xml.type.Boolean" + * @generated + */ + public boolean isCascadePersist() + { + return cascadePersist; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPersistenceUnitDefaults#isCascadePersist <em>Cascade Persist</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Cascade Persist</em>' attribute. + * @see #isCascadePersist() + * @generated + */ + public void setCascadePersist(boolean newCascadePersist) + { + boolean oldCascadePersist = cascadePersist; + cascadePersist = newCascadePersist; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_PERSISTENCE_UNIT_DEFAULTS__CASCADE_PERSIST, oldCascadePersist, cascadePersist)); + } + + /** + * Returns the value of the '<em><b>Entity Listeners</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Entity Listeners</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Entity Listeners</em>' containment reference. + * @see #setEntityListeners(EntityListeners) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlPersistenceUnitDefaults_EntityListeners() + * @model containment="true" + * @generated + */ + public EntityListeners getEntityListeners() + { + return entityListeners; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetEntityListeners(EntityListeners newEntityListeners, NotificationChain msgs) + { + EntityListeners oldEntityListeners = entityListeners; + entityListeners = newEntityListeners; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_PERSISTENCE_UNIT_DEFAULTS__ENTITY_LISTENERS, oldEntityListeners, newEntityListeners); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPersistenceUnitDefaults#getEntityListeners <em>Entity Listeners</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Entity Listeners</em>' containment reference. + * @see #getEntityListeners() + * @generated + */ + public void setEntityListeners(EntityListeners newEntityListeners) + { + if (newEntityListeners != entityListeners) + { + NotificationChain msgs = null; + if (entityListeners != null) + msgs = ((InternalEObject)entityListeners).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_PERSISTENCE_UNIT_DEFAULTS__ENTITY_LISTENERS, null, msgs); + if (newEntityListeners != null) + msgs = ((InternalEObject)newEntityListeners).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_PERSISTENCE_UNIT_DEFAULTS__ENTITY_LISTENERS, null, msgs); + msgs = basicSetEntityListeners(newEntityListeners, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_PERSISTENCE_UNIT_DEFAULTS__ENTITY_LISTENERS, newEntityListeners, newEntityListeners)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_PERSISTENCE_UNIT_DEFAULTS__ENTITY_LISTENERS: + return basicSetEntityListeners(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_PERSISTENCE_UNIT_DEFAULTS__SCHEMA: + return getSchema(); + case EclipseLinkOrmPackage.XML_PERSISTENCE_UNIT_DEFAULTS__CATALOG: + return getCatalog(); + case EclipseLinkOrmPackage.XML_PERSISTENCE_UNIT_DEFAULTS__ACCESS: + return getAccess(); + case EclipseLinkOrmPackage.XML_PERSISTENCE_UNIT_DEFAULTS__CASCADE_PERSIST: + return isCascadePersist() ? Boolean.TRUE : Boolean.FALSE; + case EclipseLinkOrmPackage.XML_PERSISTENCE_UNIT_DEFAULTS__ENTITY_LISTENERS: + return getEntityListeners(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_PERSISTENCE_UNIT_DEFAULTS__SCHEMA: + setSchema((String)newValue); + return; + case EclipseLinkOrmPackage.XML_PERSISTENCE_UNIT_DEFAULTS__CATALOG: + setCatalog((String)newValue); + return; + case EclipseLinkOrmPackage.XML_PERSISTENCE_UNIT_DEFAULTS__ACCESS: + setAccess((AccessType)newValue); + return; + case EclipseLinkOrmPackage.XML_PERSISTENCE_UNIT_DEFAULTS__CASCADE_PERSIST: + setCascadePersist(((Boolean)newValue).booleanValue()); + return; + case EclipseLinkOrmPackage.XML_PERSISTENCE_UNIT_DEFAULTS__ENTITY_LISTENERS: + setEntityListeners((EntityListeners)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_PERSISTENCE_UNIT_DEFAULTS__SCHEMA: + setSchema(SCHEMA_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_PERSISTENCE_UNIT_DEFAULTS__CATALOG: + setCatalog(CATALOG_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_PERSISTENCE_UNIT_DEFAULTS__ACCESS: + setAccess(ACCESS_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_PERSISTENCE_UNIT_DEFAULTS__CASCADE_PERSIST: + setCascadePersist(CASCADE_PERSIST_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_PERSISTENCE_UNIT_DEFAULTS__ENTITY_LISTENERS: + setEntityListeners((EntityListeners)null); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_PERSISTENCE_UNIT_DEFAULTS__SCHEMA: + return SCHEMA_EDEFAULT == null ? schema != null : !SCHEMA_EDEFAULT.equals(schema); + case EclipseLinkOrmPackage.XML_PERSISTENCE_UNIT_DEFAULTS__CATALOG: + return CATALOG_EDEFAULT == null ? catalog != null : !CATALOG_EDEFAULT.equals(catalog); + case EclipseLinkOrmPackage.XML_PERSISTENCE_UNIT_DEFAULTS__ACCESS: + return access != ACCESS_EDEFAULT; + case EclipseLinkOrmPackage.XML_PERSISTENCE_UNIT_DEFAULTS__CASCADE_PERSIST: + return cascadePersist != CASCADE_PERSIST_EDEFAULT; + case EclipseLinkOrmPackage.XML_PERSISTENCE_UNIT_DEFAULTS__ENTITY_LISTENERS: + return entityListeners != null; + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (schema: "); + result.append(schema); + result.append(", catalog: "); + result.append(catalog); + result.append(", access: "); + result.append(access); + result.append(", cascadePersist: "); + result.append(cascadePersist); + result.append(')'); + return result.toString(); + } + +} // XmlPersistenceUnitDefaults diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlPersistenceUnitMetadata.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlPersistenceUnitMetadata.java new file mode 100644 index 0000000000..c1cb0b2270 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlPersistenceUnitMetadata.java @@ -0,0 +1,299 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.jpt.core.resource.common.AbstractJpaEObject; +import org.eclipse.jpt.core.resource.common.JpaEObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Persistence Unit Metadata</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPersistenceUnitMetadata#isXmlMappingMetadataComplete <em>Xml Mapping Metadata Complete</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPersistenceUnitMetadata#getPersistenceUnitDefaults <em>Persistence Unit Defaults</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlPersistenceUnitMetadata() + * @model kind="class" + * @extends JpaEObject + * @generated + */ +public class XmlPersistenceUnitMetadata extends AbstractJpaEObject implements JpaEObject +{ + /** + * The default value of the '{@link #isXmlMappingMetadataComplete() <em>Xml Mapping Metadata Complete</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isXmlMappingMetadataComplete() + * @generated + * @ordered + */ + protected static final boolean XML_MAPPING_METADATA_COMPLETE_EDEFAULT = false; + + /** + * The cached value of the '{@link #isXmlMappingMetadataComplete() <em>Xml Mapping Metadata Complete</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isXmlMappingMetadataComplete() + * @generated + * @ordered + */ + protected boolean xmlMappingMetadataComplete = XML_MAPPING_METADATA_COMPLETE_EDEFAULT; + + /** + * The cached value of the '{@link #getPersistenceUnitDefaults() <em>Persistence Unit Defaults</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPersistenceUnitDefaults() + * @generated + * @ordered + */ + protected XmlPersistenceUnitDefaults persistenceUnitDefaults; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected XmlPersistenceUnitMetadata() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.XML_PERSISTENCE_UNIT_METADATA; + } + + /** + * Returns the value of the '<em><b>Xml Mapping Metadata Complete</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Xml Mapping Metadata Complete</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Xml Mapping Metadata Complete</em>' attribute. + * @see #setXmlMappingMetadataComplete(boolean) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlPersistenceUnitMetadata_XmlMappingMetadataComplete() + * @model dataType="org.eclipse.emf.ecore.xml.type.Boolean" + * @generated + */ + public boolean isXmlMappingMetadataComplete() + { + return xmlMappingMetadataComplete; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPersistenceUnitMetadata#isXmlMappingMetadataComplete <em>Xml Mapping Metadata Complete</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Xml Mapping Metadata Complete</em>' attribute. + * @see #isXmlMappingMetadataComplete() + * @generated + */ + public void setXmlMappingMetadataComplete(boolean newXmlMappingMetadataComplete) + { + boolean oldXmlMappingMetadataComplete = xmlMappingMetadataComplete; + xmlMappingMetadataComplete = newXmlMappingMetadataComplete; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_PERSISTENCE_UNIT_METADATA__XML_MAPPING_METADATA_COMPLETE, oldXmlMappingMetadataComplete, xmlMappingMetadataComplete)); + } + + /** + * Returns the value of the '<em><b>Persistence Unit Defaults</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Persistence Unit Defaults</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Persistence Unit Defaults</em>' containment reference. + * @see #setPersistenceUnitDefaults(XmlPersistenceUnitDefaults) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlPersistenceUnitMetadata_PersistenceUnitDefaults() + * @model containment="true" + * @generated + */ + public XmlPersistenceUnitDefaults getPersistenceUnitDefaults() + { + return persistenceUnitDefaults; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetPersistenceUnitDefaults(XmlPersistenceUnitDefaults newPersistenceUnitDefaults, NotificationChain msgs) + { + XmlPersistenceUnitDefaults oldPersistenceUnitDefaults = persistenceUnitDefaults; + persistenceUnitDefaults = newPersistenceUnitDefaults; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_PERSISTENCE_UNIT_METADATA__PERSISTENCE_UNIT_DEFAULTS, oldPersistenceUnitDefaults, newPersistenceUnitDefaults); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPersistenceUnitMetadata#getPersistenceUnitDefaults <em>Persistence Unit Defaults</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Persistence Unit Defaults</em>' containment reference. + * @see #getPersistenceUnitDefaults() + * @generated + */ + public void setPersistenceUnitDefaults(XmlPersistenceUnitDefaults newPersistenceUnitDefaults) + { + if (newPersistenceUnitDefaults != persistenceUnitDefaults) + { + NotificationChain msgs = null; + if (persistenceUnitDefaults != null) + msgs = ((InternalEObject)persistenceUnitDefaults).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_PERSISTENCE_UNIT_METADATA__PERSISTENCE_UNIT_DEFAULTS, null, msgs); + if (newPersistenceUnitDefaults != null) + msgs = ((InternalEObject)newPersistenceUnitDefaults).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_PERSISTENCE_UNIT_METADATA__PERSISTENCE_UNIT_DEFAULTS, null, msgs); + msgs = basicSetPersistenceUnitDefaults(newPersistenceUnitDefaults, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_PERSISTENCE_UNIT_METADATA__PERSISTENCE_UNIT_DEFAULTS, newPersistenceUnitDefaults, newPersistenceUnitDefaults)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_PERSISTENCE_UNIT_METADATA__PERSISTENCE_UNIT_DEFAULTS: + return basicSetPersistenceUnitDefaults(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_PERSISTENCE_UNIT_METADATA__XML_MAPPING_METADATA_COMPLETE: + return isXmlMappingMetadataComplete() ? Boolean.TRUE : Boolean.FALSE; + case EclipseLinkOrmPackage.XML_PERSISTENCE_UNIT_METADATA__PERSISTENCE_UNIT_DEFAULTS: + return getPersistenceUnitDefaults(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_PERSISTENCE_UNIT_METADATA__XML_MAPPING_METADATA_COMPLETE: + setXmlMappingMetadataComplete(((Boolean)newValue).booleanValue()); + return; + case EclipseLinkOrmPackage.XML_PERSISTENCE_UNIT_METADATA__PERSISTENCE_UNIT_DEFAULTS: + setPersistenceUnitDefaults((XmlPersistenceUnitDefaults)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_PERSISTENCE_UNIT_METADATA__XML_MAPPING_METADATA_COMPLETE: + setXmlMappingMetadataComplete(XML_MAPPING_METADATA_COMPLETE_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_PERSISTENCE_UNIT_METADATA__PERSISTENCE_UNIT_DEFAULTS: + setPersistenceUnitDefaults((XmlPersistenceUnitDefaults)null); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_PERSISTENCE_UNIT_METADATA__XML_MAPPING_METADATA_COMPLETE: + return xmlMappingMetadataComplete != XML_MAPPING_METADATA_COMPLETE_EDEFAULT; + case EclipseLinkOrmPackage.XML_PERSISTENCE_UNIT_METADATA__PERSISTENCE_UNIT_DEFAULTS: + return persistenceUnitDefaults != null; + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (xmlMappingMetadataComplete: "); + result.append(xmlMappingMetadataComplete); + result.append(')'); + return result.toString(); + } + +} // XmlPersistenceUnitMetadata diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlPrimaryKeyJoinColumn.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlPrimaryKeyJoinColumn.java new file mode 100644 index 0000000000..3d8ce9599d --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlPrimaryKeyJoinColumn.java @@ -0,0 +1,58 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Primary Key Join Column</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPrimaryKeyJoinColumn#getReferencedColumnName <em>Referenced Column Name</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlPrimaryKeyJoinColumn() + * @model kind="class" interface="true" abstract="true" + * @generated + */ +public interface XmlPrimaryKeyJoinColumn extends XmlNamedColumn +{ + /** + * Returns the value of the '<em><b>Referenced Column Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Referenced Column Name</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Referenced Column Name</em>' attribute. + * @see #setReferencedColumnName(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlPrimaryKeyJoinColumn_ReferencedColumnName() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + String getReferencedColumnName(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPrimaryKeyJoinColumn#getReferencedColumnName <em>Referenced Column Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Referenced Column Name</em>' attribute. + * @see #getReferencedColumnName() + * @generated + */ + void setReferencedColumnName(String value); + +} // XmlPrimaryKeyJoinColumn diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlPrimaryKeyJoinColumnImpl.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlPrimaryKeyJoinColumnImpl.java new file mode 100644 index 0000000000..5874d20d04 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlPrimaryKeyJoinColumnImpl.java @@ -0,0 +1,228 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Primary Key Join Column Impl</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlPrimaryKeyJoinColumnImpl() + * @model kind="class" + * @generated + */ +public class XmlPrimaryKeyJoinColumnImpl extends AbstractXmlNamedColumn implements XmlPrimaryKeyJoinColumn +{ + /** + * The default value of the '{@link #getReferencedColumnName() <em>Referenced Column Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getReferencedColumnName() + * @generated + * @ordered + */ + protected static final String REFERENCED_COLUMN_NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getReferencedColumnName() <em>Referenced Column Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getReferencedColumnName() + * @generated + * @ordered + */ + protected String referencedColumnName = REFERENCED_COLUMN_NAME_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected XmlPrimaryKeyJoinColumnImpl() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.XML_PRIMARY_KEY_JOIN_COLUMN_IMPL; + } + + /** + * Returns the value of the '<em><b>Referenced Column Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Referenced Column Name</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Referenced Column Name</em>' attribute. + * @see #setReferencedColumnName(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlPrimaryKeyJoinColumn_ReferencedColumnName() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + public String getReferencedColumnName() + { + return referencedColumnName; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPrimaryKeyJoinColumnImpl#getReferencedColumnName <em>Referenced Column Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Referenced Column Name</em>' attribute. + * @see #getReferencedColumnName() + * @generated + */ + public void setReferencedColumnName(String newReferencedColumnName) + { + String oldReferencedColumnName = referencedColumnName; + referencedColumnName = newReferencedColumnName; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_PRIMARY_KEY_JOIN_COLUMN_IMPL__REFERENCED_COLUMN_NAME, oldReferencedColumnName, referencedColumnName)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_PRIMARY_KEY_JOIN_COLUMN_IMPL__REFERENCED_COLUMN_NAME: + return getReferencedColumnName(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_PRIMARY_KEY_JOIN_COLUMN_IMPL__REFERENCED_COLUMN_NAME: + setReferencedColumnName((String)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_PRIMARY_KEY_JOIN_COLUMN_IMPL__REFERENCED_COLUMN_NAME: + setReferencedColumnName(REFERENCED_COLUMN_NAME_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_PRIMARY_KEY_JOIN_COLUMN_IMPL__REFERENCED_COLUMN_NAME: + return REFERENCED_COLUMN_NAME_EDEFAULT == null ? referencedColumnName != null : !REFERENCED_COLUMN_NAME_EDEFAULT.equals(referencedColumnName); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) + { + if (baseClass == XmlPrimaryKeyJoinColumn.class) + { + switch (derivedFeatureID) + { + case EclipseLinkOrmPackage.XML_PRIMARY_KEY_JOIN_COLUMN_IMPL__REFERENCED_COLUMN_NAME: return EclipseLinkOrmPackage.XML_PRIMARY_KEY_JOIN_COLUMN__REFERENCED_COLUMN_NAME; + default: return -1; + } + } + return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) + { + if (baseClass == XmlPrimaryKeyJoinColumn.class) + { + switch (baseFeatureID) + { + case EclipseLinkOrmPackage.XML_PRIMARY_KEY_JOIN_COLUMN__REFERENCED_COLUMN_NAME: return EclipseLinkOrmPackage.XML_PRIMARY_KEY_JOIN_COLUMN_IMPL__REFERENCED_COLUMN_NAME; + default: return -1; + } + } + return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (referencedColumnName: "); + result.append(referencedColumnName); + result.append(')'); + return result.toString(); + } + +} // XmlPrimaryKeyJoinColumnImpl diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlQuery.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlQuery.java new file mode 100644 index 0000000000..8a9a7b46ad --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlQuery.java @@ -0,0 +1,106 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.jpt.core.resource.common.JpaEObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Query</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlQuery#getName <em>Name</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlQuery#getQuery <em>Query</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlQuery#getHints <em>Hints</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlQuery() + * @model kind="class" interface="true" abstract="true" + * @extends JpaEObject + * @generated + */ +public interface XmlQuery extends JpaEObject +{ + /** + * Returns the value of the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Name</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Name</em>' attribute. + * @see #setName(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlQuery_Name() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" required="true" + * @generated + */ + String getName(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlQuery#getName <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Name</em>' attribute. + * @see #getName() + * @generated + */ + void setName(String value); + + /** + * Returns the value of the '<em><b>Query</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Query</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Query</em>' attribute. + * @see #setQuery(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlQuery_Query() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" required="true" + * @generated + */ + String getQuery(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlQuery#getQuery <em>Query</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Query</em>' attribute. + * @see #getQuery() + * @generated + */ + void setQuery(String value); + + /** + * Returns the value of the '<em><b>Hints</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlQueryHint}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Hints</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Hints</em>' containment reference list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlQuery_Hints() + * @model containment="true" + * @generated + */ + EList<XmlQueryHint> getHints(); + +} // XmlQuery diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlQueryHint.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlQueryHint.java new file mode 100644 index 0000000000..7ae065e2a8 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlQueryHint.java @@ -0,0 +1,268 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.jpt.core.resource.common.AbstractJpaEObject; +import org.eclipse.jpt.core.resource.common.JpaEObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Query Hint</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlQueryHint#getName <em>Name</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlQueryHint#getValue <em>Value</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlQueryHint() + * @model kind="class" + * @extends JpaEObject + * @generated + */ +public class XmlQueryHint extends AbstractJpaEObject implements JpaEObject +{ + /** + * The default value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected static final String NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected String name = NAME_EDEFAULT; + + /** + * The default value of the '{@link #getValue() <em>Value</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getValue() + * @generated + * @ordered + */ + protected static final String VALUE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getValue() <em>Value</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getValue() + * @generated + * @ordered + */ + protected String value = VALUE_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected XmlQueryHint() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.XML_QUERY_HINT; + } + + /** + * Returns the value of the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Name</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Name</em>' attribute. + * @see #setName(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlQueryHint_Name() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" required="true" + * @generated + */ + public String getName() + { + return name; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlQueryHint#getName <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Name</em>' attribute. + * @see #getName() + * @generated + */ + public void setName(String newName) + { + String oldName = name; + name = newName; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_QUERY_HINT__NAME, oldName, name)); + } + + /** + * Returns the value of the '<em><b>Value</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Value</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Value</em>' attribute. + * @see #setValue(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlQueryHint_Value() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" required="true" + * @generated + */ + public String getValue() + { + return value; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlQueryHint#getValue <em>Value</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Value</em>' attribute. + * @see #getValue() + * @generated + */ + public void setValue(String newValue) + { + String oldValue = value; + value = newValue; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_QUERY_HINT__VALUE, oldValue, value)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_QUERY_HINT__NAME: + return getName(); + case EclipseLinkOrmPackage.XML_QUERY_HINT__VALUE: + return getValue(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_QUERY_HINT__NAME: + setName((String)newValue); + return; + case EclipseLinkOrmPackage.XML_QUERY_HINT__VALUE: + setValue((String)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_QUERY_HINT__NAME: + setName(NAME_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_QUERY_HINT__VALUE: + setValue(VALUE_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_QUERY_HINT__NAME: + return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name); + case EclipseLinkOrmPackage.XML_QUERY_HINT__VALUE: + return VALUE_EDEFAULT == null ? value != null : !VALUE_EDEFAULT.equals(value); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (name: "); + result.append(name); + result.append(", value: "); + result.append(value); + result.append(')'); + return result.toString(); + } + +} // XmlQueryHint diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlRelationshipMapping.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlRelationshipMapping.java new file mode 100644 index 0000000000..3f74038a09 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlRelationshipMapping.java @@ -0,0 +1,143 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Relationship Mapping</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlRelationshipMapping#getTargetEntity <em>Target Entity</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlRelationshipMapping#getFetch <em>Fetch</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlRelationshipMapping#getJoinTable <em>Join Table</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlRelationshipMapping#getCascade <em>Cascade</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlRelationshipMapping() + * @model kind="class" interface="true" abstract="true" + * @generated + */ +public interface XmlRelationshipMapping extends XmlAttributeMapping +{ + /** + * Returns the value of the '<em><b>Target Entity</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Target Entity</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Target Entity</em>' attribute. + * @see #setTargetEntity(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlRelationshipMapping_TargetEntity() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + String getTargetEntity(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlRelationshipMapping#getTargetEntity <em>Target Entity</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Target Entity</em>' attribute. + * @see #getTargetEntity() + * @generated + */ + void setTargetEntity(String value); + + /** + * Returns the value of the '<em><b>Fetch</b></em>' attribute. + * The default value is <code>"LAZY"</code>. + * The literals are from the enumeration {@link org.eclipse.jpt.eclipselink.core.resource.elorm.FetchType}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Fetch</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Fetch</em>' attribute. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.FetchType + * @see #setFetch(FetchType) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlRelationshipMapping_Fetch() + * @model default="LAZY" + * @generated + */ + FetchType getFetch(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlRelationshipMapping#getFetch <em>Fetch</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Fetch</em>' attribute. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.FetchType + * @see #getFetch() + * @generated + */ + void setFetch(FetchType value); + + /** + * Returns the value of the '<em><b>Join Table</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Join Table</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Join Table</em>' containment reference. + * @see #setJoinTable(XmlJoinTable) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlRelationshipMapping_JoinTable() + * @model containment="true" + * @generated + */ + XmlJoinTable getJoinTable(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlRelationshipMapping#getJoinTable <em>Join Table</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Join Table</em>' containment reference. + * @see #getJoinTable() + * @generated + */ + void setJoinTable(XmlJoinTable value); + + /** + * Returns the value of the '<em><b>Cascade</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Cascade</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Cascade</em>' containment reference. + * @see #setCascade(CascadeType) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlRelationshipMapping_Cascade() + * @model containment="true" + * @generated + */ + CascadeType getCascade(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlRelationshipMapping#getCascade <em>Cascade</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Cascade</em>' containment reference. + * @see #getCascade() + * @generated + */ + void setCascade(CascadeType value); + +} // XmlRelationshipMapping diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlSecondaryTable.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlSecondaryTable.java new file mode 100644 index 0000000000..9ff6290981 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlSecondaryTable.java @@ -0,0 +1,49 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.emf.common.util.EList; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Secondary Table</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlSecondaryTable#getPrimaryKeyJoinColumns <em>Primary Key Join Columns</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlSecondaryTable() + * @model kind="class" interface="true" abstract="true" + * @generated + */ +public interface XmlSecondaryTable extends XmlBaseTable +{ + /** + * Returns the value of the '<em><b>Primary Key Join Columns</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPrimaryKeyJoinColumn}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Primary Key Join Columns</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Primary Key Join Columns</em>' containment reference list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlSecondaryTable_PrimaryKeyJoinColumns() + * @model containment="true" + * @generated + */ + EList<XmlPrimaryKeyJoinColumn> getPrimaryKeyJoinColumns(); + +} // XmlSecondaryTable diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlSecondaryTableImpl.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlSecondaryTableImpl.java new file mode 100644 index 0000000000..8f69756edb --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlSecondaryTableImpl.java @@ -0,0 +1,213 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Secondary Table Impl</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlSecondaryTableImpl() + * @model kind="class" + * @generated + */ +public class XmlSecondaryTableImpl extends AbstractXmlBaseTable implements XmlSecondaryTable +{ + /** + * The cached value of the '{@link #getPrimaryKeyJoinColumns() <em>Primary Key Join Columns</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPrimaryKeyJoinColumns() + * @generated + * @ordered + */ + protected EList<XmlPrimaryKeyJoinColumn> primaryKeyJoinColumns; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected XmlSecondaryTableImpl() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.XML_SECONDARY_TABLE_IMPL; + } + + /** + * Returns the value of the '<em><b>Primary Key Join Columns</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlPrimaryKeyJoinColumn}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Primary Key Join Columns</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Primary Key Join Columns</em>' containment reference list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlSecondaryTable_PrimaryKeyJoinColumns() + * @model containment="true" + * @generated + */ + public EList<XmlPrimaryKeyJoinColumn> getPrimaryKeyJoinColumns() + { + if (primaryKeyJoinColumns == null) + { + primaryKeyJoinColumns = new EObjectContainmentEList<XmlPrimaryKeyJoinColumn>(XmlPrimaryKeyJoinColumn.class, this, EclipseLinkOrmPackage.XML_SECONDARY_TABLE_IMPL__PRIMARY_KEY_JOIN_COLUMNS); + } + return primaryKeyJoinColumns; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_SECONDARY_TABLE_IMPL__PRIMARY_KEY_JOIN_COLUMNS: + return ((InternalEList<?>)getPrimaryKeyJoinColumns()).basicRemove(otherEnd, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_SECONDARY_TABLE_IMPL__PRIMARY_KEY_JOIN_COLUMNS: + return getPrimaryKeyJoinColumns(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_SECONDARY_TABLE_IMPL__PRIMARY_KEY_JOIN_COLUMNS: + getPrimaryKeyJoinColumns().clear(); + getPrimaryKeyJoinColumns().addAll((Collection<? extends XmlPrimaryKeyJoinColumn>)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_SECONDARY_TABLE_IMPL__PRIMARY_KEY_JOIN_COLUMNS: + getPrimaryKeyJoinColumns().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_SECONDARY_TABLE_IMPL__PRIMARY_KEY_JOIN_COLUMNS: + return primaryKeyJoinColumns != null && !primaryKeyJoinColumns.isEmpty(); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) + { + if (baseClass == XmlSecondaryTable.class) + { + switch (derivedFeatureID) + { + case EclipseLinkOrmPackage.XML_SECONDARY_TABLE_IMPL__PRIMARY_KEY_JOIN_COLUMNS: return EclipseLinkOrmPackage.XML_SECONDARY_TABLE__PRIMARY_KEY_JOIN_COLUMNS; + default: return -1; + } + } + return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) + { + if (baseClass == XmlSecondaryTable.class) + { + switch (baseFeatureID) + { + case EclipseLinkOrmPackage.XML_SECONDARY_TABLE__PRIMARY_KEY_JOIN_COLUMNS: return EclipseLinkOrmPackage.XML_SECONDARY_TABLE_IMPL__PRIMARY_KEY_JOIN_COLUMNS; + default: return -1; + } + } + return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass); + } + +} // XmlSecondaryTableImpl diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlSequenceGenerator.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlSequenceGenerator.java new file mode 100644 index 0000000000..551baf492e --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlSequenceGenerator.java @@ -0,0 +1,58 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Sequence Generator</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlSequenceGenerator#getSequenceName <em>Sequence Name</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlSequenceGenerator() + * @model kind="class" interface="true" abstract="true" + * @generated + */ +public interface XmlSequenceGenerator extends XmlGenerator +{ + /** + * Returns the value of the '<em><b>Sequence Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Sequence Name</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Sequence Name</em>' attribute. + * @see #setSequenceName(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlSequenceGenerator_SequenceName() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + String getSequenceName(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlSequenceGenerator#getSequenceName <em>Sequence Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Sequence Name</em>' attribute. + * @see #getSequenceName() + * @generated + */ + void setSequenceName(String value); + +} // XmlSequenceGenerator diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlSequenceGeneratorImpl.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlSequenceGeneratorImpl.java new file mode 100644 index 0000000000..989f77fdb3 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlSequenceGeneratorImpl.java @@ -0,0 +1,393 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.jpt.core.resource.common.AbstractJpaEObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Sequence Generator Impl</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlSequenceGeneratorImpl() + * @model kind="class" + * @generated + */ +public class XmlSequenceGeneratorImpl extends AbstractJpaEObject implements XmlSequenceGenerator +{ + /** + * The default value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected static final String NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected String name = NAME_EDEFAULT; + + /** + * The default value of the '{@link #getInitialValue() <em>Initial Value</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getInitialValue() + * @generated + * @ordered + */ + protected static final Integer INITIAL_VALUE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getInitialValue() <em>Initial Value</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getInitialValue() + * @generated + * @ordered + */ + protected Integer initialValue = INITIAL_VALUE_EDEFAULT; + + /** + * The default value of the '{@link #getAllocationSize() <em>Allocation Size</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getAllocationSize() + * @generated + * @ordered + */ + protected static final Integer ALLOCATION_SIZE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getAllocationSize() <em>Allocation Size</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getAllocationSize() + * @generated + * @ordered + */ + protected Integer allocationSize = ALLOCATION_SIZE_EDEFAULT; + + /** + * The default value of the '{@link #getSequenceName() <em>Sequence Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSequenceName() + * @generated + * @ordered + */ + protected static final String SEQUENCE_NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getSequenceName() <em>Sequence Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSequenceName() + * @generated + * @ordered + */ + protected String sequenceName = SEQUENCE_NAME_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected XmlSequenceGeneratorImpl() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.XML_SEQUENCE_GENERATOR_IMPL; + } + + /** + * Returns the value of the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Name</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Name</em>' attribute. + * @see #setName(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlGenerator_Name() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" required="true" + * @generated + */ + public String getName() + { + return name; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlSequenceGeneratorImpl#getName <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Name</em>' attribute. + * @see #getName() + * @generated + */ + public void setName(String newName) + { + String oldName = name; + name = newName; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_SEQUENCE_GENERATOR_IMPL__NAME, oldName, name)); + } + + /** + * Returns the value of the '<em><b>Initial Value</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Initial Value</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Initial Value</em>' attribute. + * @see #setInitialValue(Integer) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlGenerator_InitialValue() + * @model dataType="org.eclipse.emf.ecore.xml.type.IntObject" + * @generated + */ + public Integer getInitialValue() + { + return initialValue; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlSequenceGeneratorImpl#getInitialValue <em>Initial Value</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Initial Value</em>' attribute. + * @see #getInitialValue() + * @generated + */ + public void setInitialValue(Integer newInitialValue) + { + Integer oldInitialValue = initialValue; + initialValue = newInitialValue; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_SEQUENCE_GENERATOR_IMPL__INITIAL_VALUE, oldInitialValue, initialValue)); + } + + /** + * Returns the value of the '<em><b>Allocation Size</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Allocation Size</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Allocation Size</em>' attribute. + * @see #setAllocationSize(Integer) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlGenerator_AllocationSize() + * @model dataType="org.eclipse.emf.ecore.xml.type.IntObject" + * @generated + */ + public Integer getAllocationSize() + { + return allocationSize; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlSequenceGeneratorImpl#getAllocationSize <em>Allocation Size</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Allocation Size</em>' attribute. + * @see #getAllocationSize() + * @generated + */ + public void setAllocationSize(Integer newAllocationSize) + { + Integer oldAllocationSize = allocationSize; + allocationSize = newAllocationSize; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_SEQUENCE_GENERATOR_IMPL__ALLOCATION_SIZE, oldAllocationSize, allocationSize)); + } + + /** + * Returns the value of the '<em><b>Sequence Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Sequence Name</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Sequence Name</em>' attribute. + * @see #setSequenceName(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlSequenceGenerator_SequenceName() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + public String getSequenceName() + { + return sequenceName; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlSequenceGeneratorImpl#getSequenceName <em>Sequence Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Sequence Name</em>' attribute. + * @see #getSequenceName() + * @generated + */ + public void setSequenceName(String newSequenceName) + { + String oldSequenceName = sequenceName; + sequenceName = newSequenceName; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_SEQUENCE_GENERATOR_IMPL__SEQUENCE_NAME, oldSequenceName, sequenceName)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_SEQUENCE_GENERATOR_IMPL__NAME: + return getName(); + case EclipseLinkOrmPackage.XML_SEQUENCE_GENERATOR_IMPL__INITIAL_VALUE: + return getInitialValue(); + case EclipseLinkOrmPackage.XML_SEQUENCE_GENERATOR_IMPL__ALLOCATION_SIZE: + return getAllocationSize(); + case EclipseLinkOrmPackage.XML_SEQUENCE_GENERATOR_IMPL__SEQUENCE_NAME: + return getSequenceName(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_SEQUENCE_GENERATOR_IMPL__NAME: + setName((String)newValue); + return; + case EclipseLinkOrmPackage.XML_SEQUENCE_GENERATOR_IMPL__INITIAL_VALUE: + setInitialValue((Integer)newValue); + return; + case EclipseLinkOrmPackage.XML_SEQUENCE_GENERATOR_IMPL__ALLOCATION_SIZE: + setAllocationSize((Integer)newValue); + return; + case EclipseLinkOrmPackage.XML_SEQUENCE_GENERATOR_IMPL__SEQUENCE_NAME: + setSequenceName((String)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_SEQUENCE_GENERATOR_IMPL__NAME: + setName(NAME_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_SEQUENCE_GENERATOR_IMPL__INITIAL_VALUE: + setInitialValue(INITIAL_VALUE_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_SEQUENCE_GENERATOR_IMPL__ALLOCATION_SIZE: + setAllocationSize(ALLOCATION_SIZE_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_SEQUENCE_GENERATOR_IMPL__SEQUENCE_NAME: + setSequenceName(SEQUENCE_NAME_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_SEQUENCE_GENERATOR_IMPL__NAME: + return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name); + case EclipseLinkOrmPackage.XML_SEQUENCE_GENERATOR_IMPL__INITIAL_VALUE: + return INITIAL_VALUE_EDEFAULT == null ? initialValue != null : !INITIAL_VALUE_EDEFAULT.equals(initialValue); + case EclipseLinkOrmPackage.XML_SEQUENCE_GENERATOR_IMPL__ALLOCATION_SIZE: + return ALLOCATION_SIZE_EDEFAULT == null ? allocationSize != null : !ALLOCATION_SIZE_EDEFAULT.equals(allocationSize); + case EclipseLinkOrmPackage.XML_SEQUENCE_GENERATOR_IMPL__SEQUENCE_NAME: + return SEQUENCE_NAME_EDEFAULT == null ? sequenceName != null : !SEQUENCE_NAME_EDEFAULT.equals(sequenceName); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (name: "); + result.append(name); + result.append(", initialValue: "); + result.append(initialValue); + result.append(", allocationSize: "); + result.append(allocationSize); + result.append(", sequenceName: "); + result.append(sequenceName); + result.append(')'); + return result.toString(); + } + +} // XmlSequenceGeneratorImpl diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlSingleRelationshipMapping.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlSingleRelationshipMapping.java new file mode 100644 index 0000000000..81e543ca87 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlSingleRelationshipMapping.java @@ -0,0 +1,76 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.emf.common.util.EList; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Single Relationship Mapping</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlSingleRelationshipMapping#getOptional <em>Optional</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlSingleRelationshipMapping#getJoinColumns <em>Join Columns</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlSingleRelationshipMapping() + * @model kind="class" interface="true" abstract="true" + * @generated + */ +public interface XmlSingleRelationshipMapping extends XmlRelationshipMapping +{ + /** + * Returns the value of the '<em><b>Optional</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Optional</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Optional</em>' attribute. + * @see #setOptional(Boolean) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlSingleRelationshipMapping_Optional() + * @model dataType="org.eclipse.emf.ecore.xml.type.BooleanObject" + * @generated + */ + Boolean getOptional(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlSingleRelationshipMapping#getOptional <em>Optional</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Optional</em>' attribute. + * @see #getOptional() + * @generated + */ + void setOptional(Boolean value); + + /** + * Returns the value of the '<em><b>Join Columns</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlJoinColumn}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Join Columns</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Join Columns</em>' containment reference list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlSingleRelationshipMapping_JoinColumns() + * @model containment="true" + * @generated + */ + EList<XmlJoinColumn> getJoinColumns(); + +} // XmlSingleRelationshipMapping diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlTable.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlTable.java new file mode 100644 index 0000000000..cfbc41154a --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlTable.java @@ -0,0 +1,48 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.emf.ecore.EClass; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Table</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlTable() + * @model kind="class" + * @generated + */ +public class XmlTable extends AbstractXmlBaseTable +{ + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected XmlTable() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.XML_TABLE; + } + +} // XmlTable diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlTableGenerator.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlTableGenerator.java new file mode 100644 index 0000000000..56a0cc49a3 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlTableGenerator.java @@ -0,0 +1,211 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.emf.common.util.EList; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Table Generator</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTableGenerator#getTable <em>Table</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTableGenerator#getCatalog <em>Catalog</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTableGenerator#getSchema <em>Schema</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTableGenerator#getPkColumnName <em>Pk Column Name</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTableGenerator#getValueColumnName <em>Value Column Name</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTableGenerator#getPkColumnValue <em>Pk Column Value</em>}</li> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTableGenerator#getUniqueConstraints <em>Unique Constraints</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlTableGenerator() + * @model kind="class" interface="true" abstract="true" + * @generated + */ +public interface XmlTableGenerator extends XmlGenerator +{ + /** + * Returns the value of the '<em><b>Table</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Table</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Table</em>' attribute. + * @see #setTable(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlTableGenerator_Table() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + String getTable(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTableGenerator#getTable <em>Table</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Table</em>' attribute. + * @see #getTable() + * @generated + */ + void setTable(String value); + + /** + * Returns the value of the '<em><b>Catalog</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Catalog</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Catalog</em>' attribute. + * @see #setCatalog(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlTableGenerator_Catalog() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + String getCatalog(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTableGenerator#getCatalog <em>Catalog</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Catalog</em>' attribute. + * @see #getCatalog() + * @generated + */ + void setCatalog(String value); + + /** + * Returns the value of the '<em><b>Schema</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Schema</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Schema</em>' attribute. + * @see #setSchema(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlTableGenerator_Schema() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + String getSchema(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTableGenerator#getSchema <em>Schema</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Schema</em>' attribute. + * @see #getSchema() + * @generated + */ + void setSchema(String value); + + /** + * Returns the value of the '<em><b>Pk Column Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Pk Column Name</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Pk Column Name</em>' attribute. + * @see #setPkColumnName(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlTableGenerator_PkColumnName() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + String getPkColumnName(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTableGenerator#getPkColumnName <em>Pk Column Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Pk Column Name</em>' attribute. + * @see #getPkColumnName() + * @generated + */ + void setPkColumnName(String value); + + /** + * Returns the value of the '<em><b>Value Column Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Value Column Name</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Value Column Name</em>' attribute. + * @see #setValueColumnName(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlTableGenerator_ValueColumnName() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + String getValueColumnName(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTableGenerator#getValueColumnName <em>Value Column Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Value Column Name</em>' attribute. + * @see #getValueColumnName() + * @generated + */ + void setValueColumnName(String value); + + /** + * Returns the value of the '<em><b>Pk Column Value</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Pk Column Value</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Pk Column Value</em>' attribute. + * @see #setPkColumnValue(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlTableGenerator_PkColumnValue() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + String getPkColumnValue(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTableGenerator#getPkColumnValue <em>Pk Column Value</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Pk Column Value</em>' attribute. + * @see #getPkColumnValue() + * @generated + */ + void setPkColumnValue(String value); + + /** + * Returns the value of the '<em><b>Unique Constraints</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlUniqueConstraint}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Unique Constraints</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Unique Constraints</em>' containment reference list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlTableGenerator_UniqueConstraints() + * @model containment="true" + * @generated + */ + EList<XmlUniqueConstraint> getUniqueConstraints(); + +} // XmlTableGenerator diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlTableGeneratorImpl.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlTableGeneratorImpl.java new file mode 100644 index 0000000000..9260f9d5ec --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlTableGeneratorImpl.java @@ -0,0 +1,798 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +import org.eclipse.jpt.core.resource.common.AbstractJpaEObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Table Generator Impl</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlTableGeneratorImpl() + * @model kind="class" + * @generated + */ +public class XmlTableGeneratorImpl extends AbstractJpaEObject implements XmlTableGenerator +{ + /** + * The default value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected static final String NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected String name = NAME_EDEFAULT; + + /** + * The default value of the '{@link #getInitialValue() <em>Initial Value</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getInitialValue() + * @generated + * @ordered + */ + protected static final Integer INITIAL_VALUE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getInitialValue() <em>Initial Value</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getInitialValue() + * @generated + * @ordered + */ + protected Integer initialValue = INITIAL_VALUE_EDEFAULT; + + /** + * The default value of the '{@link #getAllocationSize() <em>Allocation Size</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getAllocationSize() + * @generated + * @ordered + */ + protected static final Integer ALLOCATION_SIZE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getAllocationSize() <em>Allocation Size</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getAllocationSize() + * @generated + * @ordered + */ + protected Integer allocationSize = ALLOCATION_SIZE_EDEFAULT; + + /** + * The default value of the '{@link #getTable() <em>Table</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTable() + * @generated + * @ordered + */ + protected static final String TABLE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getTable() <em>Table</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTable() + * @generated + * @ordered + */ + protected String table = TABLE_EDEFAULT; + + /** + * The default value of the '{@link #getCatalog() <em>Catalog</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getCatalog() + * @generated + * @ordered + */ + protected static final String CATALOG_EDEFAULT = null; + + /** + * The cached value of the '{@link #getCatalog() <em>Catalog</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getCatalog() + * @generated + * @ordered + */ + protected String catalog = CATALOG_EDEFAULT; + + /** + * The default value of the '{@link #getSchema() <em>Schema</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSchema() + * @generated + * @ordered + */ + protected static final String SCHEMA_EDEFAULT = null; + + /** + * The cached value of the '{@link #getSchema() <em>Schema</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSchema() + * @generated + * @ordered + */ + protected String schema = SCHEMA_EDEFAULT; + + /** + * The default value of the '{@link #getPkColumnName() <em>Pk Column Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPkColumnName() + * @generated + * @ordered + */ + protected static final String PK_COLUMN_NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getPkColumnName() <em>Pk Column Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPkColumnName() + * @generated + * @ordered + */ + protected String pkColumnName = PK_COLUMN_NAME_EDEFAULT; + + /** + * The default value of the '{@link #getValueColumnName() <em>Value Column Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getValueColumnName() + * @generated + * @ordered + */ + protected static final String VALUE_COLUMN_NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getValueColumnName() <em>Value Column Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getValueColumnName() + * @generated + * @ordered + */ + protected String valueColumnName = VALUE_COLUMN_NAME_EDEFAULT; + + /** + * The default value of the '{@link #getPkColumnValue() <em>Pk Column Value</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPkColumnValue() + * @generated + * @ordered + */ + protected static final String PK_COLUMN_VALUE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getPkColumnValue() <em>Pk Column Value</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPkColumnValue() + * @generated + * @ordered + */ + protected String pkColumnValue = PK_COLUMN_VALUE_EDEFAULT; + + /** + * The cached value of the '{@link #getUniqueConstraints() <em>Unique Constraints</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getUniqueConstraints() + * @generated + * @ordered + */ + protected EList<XmlUniqueConstraint> uniqueConstraints; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected XmlTableGeneratorImpl() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.XML_TABLE_GENERATOR_IMPL; + } + + /** + * Returns the value of the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Name</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Name</em>' attribute. + * @see #setName(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlGenerator_Name() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" required="true" + * @generated + */ + public String getName() + { + return name; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTableGeneratorImpl#getName <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Name</em>' attribute. + * @see #getName() + * @generated + */ + public void setName(String newName) + { + String oldName = name; + name = newName; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_TABLE_GENERATOR_IMPL__NAME, oldName, name)); + } + + /** + * Returns the value of the '<em><b>Initial Value</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Initial Value</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Initial Value</em>' attribute. + * @see #setInitialValue(Integer) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlGenerator_InitialValue() + * @model dataType="org.eclipse.emf.ecore.xml.type.IntObject" + * @generated + */ + public Integer getInitialValue() + { + return initialValue; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTableGeneratorImpl#getInitialValue <em>Initial Value</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Initial Value</em>' attribute. + * @see #getInitialValue() + * @generated + */ + public void setInitialValue(Integer newInitialValue) + { + Integer oldInitialValue = initialValue; + initialValue = newInitialValue; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_TABLE_GENERATOR_IMPL__INITIAL_VALUE, oldInitialValue, initialValue)); + } + + /** + * Returns the value of the '<em><b>Allocation Size</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Allocation Size</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Allocation Size</em>' attribute. + * @see #setAllocationSize(Integer) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlGenerator_AllocationSize() + * @model dataType="org.eclipse.emf.ecore.xml.type.IntObject" + * @generated + */ + public Integer getAllocationSize() + { + return allocationSize; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTableGeneratorImpl#getAllocationSize <em>Allocation Size</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Allocation Size</em>' attribute. + * @see #getAllocationSize() + * @generated + */ + public void setAllocationSize(Integer newAllocationSize) + { + Integer oldAllocationSize = allocationSize; + allocationSize = newAllocationSize; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_TABLE_GENERATOR_IMPL__ALLOCATION_SIZE, oldAllocationSize, allocationSize)); + } + + /** + * Returns the value of the '<em><b>Table</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Table</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Table</em>' attribute. + * @see #setTable(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlTableGenerator_Table() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + public String getTable() + { + return table; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTableGeneratorImpl#getTable <em>Table</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Table</em>' attribute. + * @see #getTable() + * @generated + */ + public void setTable(String newTable) + { + String oldTable = table; + table = newTable; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_TABLE_GENERATOR_IMPL__TABLE, oldTable, table)); + } + + /** + * Returns the value of the '<em><b>Catalog</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Catalog</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Catalog</em>' attribute. + * @see #setCatalog(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlTableGenerator_Catalog() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + public String getCatalog() + { + return catalog; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTableGeneratorImpl#getCatalog <em>Catalog</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Catalog</em>' attribute. + * @see #getCatalog() + * @generated + */ + public void setCatalog(String newCatalog) + { + String oldCatalog = catalog; + catalog = newCatalog; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_TABLE_GENERATOR_IMPL__CATALOG, oldCatalog, catalog)); + } + + /** + * Returns the value of the '<em><b>Schema</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Schema</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Schema</em>' attribute. + * @see #setSchema(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlTableGenerator_Schema() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + public String getSchema() + { + return schema; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTableGeneratorImpl#getSchema <em>Schema</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Schema</em>' attribute. + * @see #getSchema() + * @generated + */ + public void setSchema(String newSchema) + { + String oldSchema = schema; + schema = newSchema; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_TABLE_GENERATOR_IMPL__SCHEMA, oldSchema, schema)); + } + + /** + * Returns the value of the '<em><b>Pk Column Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Pk Column Name</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Pk Column Name</em>' attribute. + * @see #setPkColumnName(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlTableGenerator_PkColumnName() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + public String getPkColumnName() + { + return pkColumnName; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTableGeneratorImpl#getPkColumnName <em>Pk Column Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Pk Column Name</em>' attribute. + * @see #getPkColumnName() + * @generated + */ + public void setPkColumnName(String newPkColumnName) + { + String oldPkColumnName = pkColumnName; + pkColumnName = newPkColumnName; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_TABLE_GENERATOR_IMPL__PK_COLUMN_NAME, oldPkColumnName, pkColumnName)); + } + + /** + * Returns the value of the '<em><b>Value Column Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Value Column Name</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Value Column Name</em>' attribute. + * @see #setValueColumnName(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlTableGenerator_ValueColumnName() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + public String getValueColumnName() + { + return valueColumnName; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTableGeneratorImpl#getValueColumnName <em>Value Column Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Value Column Name</em>' attribute. + * @see #getValueColumnName() + * @generated + */ + public void setValueColumnName(String newValueColumnName) + { + String oldValueColumnName = valueColumnName; + valueColumnName = newValueColumnName; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_TABLE_GENERATOR_IMPL__VALUE_COLUMN_NAME, oldValueColumnName, valueColumnName)); + } + + /** + * Returns the value of the '<em><b>Pk Column Value</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Pk Column Value</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Pk Column Value</em>' attribute. + * @see #setPkColumnValue(String) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlTableGenerator_PkColumnValue() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + public String getPkColumnValue() + { + return pkColumnValue; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlTableGeneratorImpl#getPkColumnValue <em>Pk Column Value</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Pk Column Value</em>' attribute. + * @see #getPkColumnValue() + * @generated + */ + public void setPkColumnValue(String newPkColumnValue) + { + String oldPkColumnValue = pkColumnValue; + pkColumnValue = newPkColumnValue; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_TABLE_GENERATOR_IMPL__PK_COLUMN_VALUE, oldPkColumnValue, pkColumnValue)); + } + + /** + * Returns the value of the '<em><b>Unique Constraints</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlUniqueConstraint}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Unique Constraints</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Unique Constraints</em>' containment reference list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlTableGenerator_UniqueConstraints() + * @model containment="true" + * @generated + */ + public EList<XmlUniqueConstraint> getUniqueConstraints() + { + if (uniqueConstraints == null) + { + uniqueConstraints = new EObjectContainmentEList<XmlUniqueConstraint>(XmlUniqueConstraint.class, this, EclipseLinkOrmPackage.XML_TABLE_GENERATOR_IMPL__UNIQUE_CONSTRAINTS); + } + return uniqueConstraints; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_TABLE_GENERATOR_IMPL__UNIQUE_CONSTRAINTS: + return ((InternalEList<?>)getUniqueConstraints()).basicRemove(otherEnd, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_TABLE_GENERATOR_IMPL__NAME: + return getName(); + case EclipseLinkOrmPackage.XML_TABLE_GENERATOR_IMPL__INITIAL_VALUE: + return getInitialValue(); + case EclipseLinkOrmPackage.XML_TABLE_GENERATOR_IMPL__ALLOCATION_SIZE: + return getAllocationSize(); + case EclipseLinkOrmPackage.XML_TABLE_GENERATOR_IMPL__TABLE: + return getTable(); + case EclipseLinkOrmPackage.XML_TABLE_GENERATOR_IMPL__CATALOG: + return getCatalog(); + case EclipseLinkOrmPackage.XML_TABLE_GENERATOR_IMPL__SCHEMA: + return getSchema(); + case EclipseLinkOrmPackage.XML_TABLE_GENERATOR_IMPL__PK_COLUMN_NAME: + return getPkColumnName(); + case EclipseLinkOrmPackage.XML_TABLE_GENERATOR_IMPL__VALUE_COLUMN_NAME: + return getValueColumnName(); + case EclipseLinkOrmPackage.XML_TABLE_GENERATOR_IMPL__PK_COLUMN_VALUE: + return getPkColumnValue(); + case EclipseLinkOrmPackage.XML_TABLE_GENERATOR_IMPL__UNIQUE_CONSTRAINTS: + return getUniqueConstraints(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_TABLE_GENERATOR_IMPL__NAME: + setName((String)newValue); + return; + case EclipseLinkOrmPackage.XML_TABLE_GENERATOR_IMPL__INITIAL_VALUE: + setInitialValue((Integer)newValue); + return; + case EclipseLinkOrmPackage.XML_TABLE_GENERATOR_IMPL__ALLOCATION_SIZE: + setAllocationSize((Integer)newValue); + return; + case EclipseLinkOrmPackage.XML_TABLE_GENERATOR_IMPL__TABLE: + setTable((String)newValue); + return; + case EclipseLinkOrmPackage.XML_TABLE_GENERATOR_IMPL__CATALOG: + setCatalog((String)newValue); + return; + case EclipseLinkOrmPackage.XML_TABLE_GENERATOR_IMPL__SCHEMA: + setSchema((String)newValue); + return; + case EclipseLinkOrmPackage.XML_TABLE_GENERATOR_IMPL__PK_COLUMN_NAME: + setPkColumnName((String)newValue); + return; + case EclipseLinkOrmPackage.XML_TABLE_GENERATOR_IMPL__VALUE_COLUMN_NAME: + setValueColumnName((String)newValue); + return; + case EclipseLinkOrmPackage.XML_TABLE_GENERATOR_IMPL__PK_COLUMN_VALUE: + setPkColumnValue((String)newValue); + return; + case EclipseLinkOrmPackage.XML_TABLE_GENERATOR_IMPL__UNIQUE_CONSTRAINTS: + getUniqueConstraints().clear(); + getUniqueConstraints().addAll((Collection<? extends XmlUniqueConstraint>)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_TABLE_GENERATOR_IMPL__NAME: + setName(NAME_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_TABLE_GENERATOR_IMPL__INITIAL_VALUE: + setInitialValue(INITIAL_VALUE_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_TABLE_GENERATOR_IMPL__ALLOCATION_SIZE: + setAllocationSize(ALLOCATION_SIZE_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_TABLE_GENERATOR_IMPL__TABLE: + setTable(TABLE_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_TABLE_GENERATOR_IMPL__CATALOG: + setCatalog(CATALOG_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_TABLE_GENERATOR_IMPL__SCHEMA: + setSchema(SCHEMA_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_TABLE_GENERATOR_IMPL__PK_COLUMN_NAME: + setPkColumnName(PK_COLUMN_NAME_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_TABLE_GENERATOR_IMPL__VALUE_COLUMN_NAME: + setValueColumnName(VALUE_COLUMN_NAME_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_TABLE_GENERATOR_IMPL__PK_COLUMN_VALUE: + setPkColumnValue(PK_COLUMN_VALUE_EDEFAULT); + return; + case EclipseLinkOrmPackage.XML_TABLE_GENERATOR_IMPL__UNIQUE_CONSTRAINTS: + getUniqueConstraints().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_TABLE_GENERATOR_IMPL__NAME: + return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name); + case EclipseLinkOrmPackage.XML_TABLE_GENERATOR_IMPL__INITIAL_VALUE: + return INITIAL_VALUE_EDEFAULT == null ? initialValue != null : !INITIAL_VALUE_EDEFAULT.equals(initialValue); + case EclipseLinkOrmPackage.XML_TABLE_GENERATOR_IMPL__ALLOCATION_SIZE: + return ALLOCATION_SIZE_EDEFAULT == null ? allocationSize != null : !ALLOCATION_SIZE_EDEFAULT.equals(allocationSize); + case EclipseLinkOrmPackage.XML_TABLE_GENERATOR_IMPL__TABLE: + return TABLE_EDEFAULT == null ? table != null : !TABLE_EDEFAULT.equals(table); + case EclipseLinkOrmPackage.XML_TABLE_GENERATOR_IMPL__CATALOG: + return CATALOG_EDEFAULT == null ? catalog != null : !CATALOG_EDEFAULT.equals(catalog); + case EclipseLinkOrmPackage.XML_TABLE_GENERATOR_IMPL__SCHEMA: + return SCHEMA_EDEFAULT == null ? schema != null : !SCHEMA_EDEFAULT.equals(schema); + case EclipseLinkOrmPackage.XML_TABLE_GENERATOR_IMPL__PK_COLUMN_NAME: + return PK_COLUMN_NAME_EDEFAULT == null ? pkColumnName != null : !PK_COLUMN_NAME_EDEFAULT.equals(pkColumnName); + case EclipseLinkOrmPackage.XML_TABLE_GENERATOR_IMPL__VALUE_COLUMN_NAME: + return VALUE_COLUMN_NAME_EDEFAULT == null ? valueColumnName != null : !VALUE_COLUMN_NAME_EDEFAULT.equals(valueColumnName); + case EclipseLinkOrmPackage.XML_TABLE_GENERATOR_IMPL__PK_COLUMN_VALUE: + return PK_COLUMN_VALUE_EDEFAULT == null ? pkColumnValue != null : !PK_COLUMN_VALUE_EDEFAULT.equals(pkColumnValue); + case EclipseLinkOrmPackage.XML_TABLE_GENERATOR_IMPL__UNIQUE_CONSTRAINTS: + return uniqueConstraints != null && !uniqueConstraints.isEmpty(); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (name: "); + result.append(name); + result.append(", initialValue: "); + result.append(initialValue); + result.append(", allocationSize: "); + result.append(allocationSize); + result.append(", table: "); + result.append(table); + result.append(", catalog: "); + result.append(catalog); + result.append(", schema: "); + result.append(schema); + result.append(", pkColumnName: "); + result.append(pkColumnName); + result.append(", valueColumnName: "); + result.append(valueColumnName); + result.append(", pkColumnValue: "); + result.append(pkColumnValue); + result.append(')'); + return result.toString(); + } + +} // XmlTableGeneratorImpl diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlTransient.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlTransient.java new file mode 100644 index 0000000000..b101f3227a --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlTransient.java @@ -0,0 +1,26 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Transient</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlTransient() + * @model kind="class" interface="true" abstract="true" + * @generated + */ +public interface XmlTransient extends XmlAttributeMapping +{ +} // XmlTransient diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlTransientImpl.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlTransientImpl.java new file mode 100644 index 0000000000..a0680c6d0e --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlTransientImpl.java @@ -0,0 +1,48 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.emf.ecore.EClass; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Transient Impl</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlTransientImpl() + * @model kind="class" + * @generated + */ +public class XmlTransientImpl extends AbstractXmlAttributeMapping implements XmlTransient +{ + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected XmlTransientImpl() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.XML_TRANSIENT_IMPL; + } + +} // XmlTransientImpl diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlUniqueConstraint.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlUniqueConstraint.java new file mode 100644 index 0000000000..bab9a09628 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlUniqueConstraint.java @@ -0,0 +1,52 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.jpt.core.resource.common.JpaEObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Unique Constraint</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlUniqueConstraint#getColumnNames <em>Column Names</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlUniqueConstraint() + * @model kind="class" interface="true" abstract="true" + * @extends JpaEObject + * @generated + */ +public interface XmlUniqueConstraint extends JpaEObject +{ + /** + * Returns the value of the '<em><b>Column Names</b></em>' attribute list. + * The list contents are of type {@link java.lang.String}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Column Names</em>' attribute list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Column Names</em>' attribute list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlUniqueConstraint_ColumnNames() + * @model unique="false" dataType="org.eclipse.emf.ecore.xml.type.String" required="true" + * @generated + */ + EList<String> getColumnNames(); + +} // XmlUniqueConstraint diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlUniqueConstraintImpl.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlUniqueConstraintImpl.java new file mode 100644 index 0000000000..e02ad200c6 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlUniqueConstraintImpl.java @@ -0,0 +1,174 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import java.util.Collection; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.util.EDataTypeEList; + +import org.eclipse.jpt.core.resource.common.AbstractJpaEObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Unique Constraint Impl</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlUniqueConstraintImpl() + * @model kind="class" + * @generated + */ +public class XmlUniqueConstraintImpl extends AbstractJpaEObject implements XmlUniqueConstraint +{ + /** + * The cached value of the '{@link #getColumnNames() <em>Column Names</em>}' attribute list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getColumnNames() + * @generated + * @ordered + */ + protected EList<String> columnNames; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected XmlUniqueConstraintImpl() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.XML_UNIQUE_CONSTRAINT_IMPL; + } + + /** + * Returns the value of the '<em><b>Column Names</b></em>' attribute list. + * The list contents are of type {@link java.lang.String}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Column Names</em>' attribute list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Column Names</em>' attribute list. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlUniqueConstraint_ColumnNames() + * @model unique="false" dataType="org.eclipse.emf.ecore.xml.type.String" required="true" + * @generated + */ + public EList<String> getColumnNames() + { + if (columnNames == null) + { + columnNames = new EDataTypeEList<String>(String.class, this, EclipseLinkOrmPackage.XML_UNIQUE_CONSTRAINT_IMPL__COLUMN_NAMES); + } + return columnNames; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_UNIQUE_CONSTRAINT_IMPL__COLUMN_NAMES: + return getColumnNames(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_UNIQUE_CONSTRAINT_IMPL__COLUMN_NAMES: + getColumnNames().clear(); + getColumnNames().addAll((Collection<? extends String>)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_UNIQUE_CONSTRAINT_IMPL__COLUMN_NAMES: + getColumnNames().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_UNIQUE_CONSTRAINT_IMPL__COLUMN_NAMES: + return columnNames != null && !columnNames.isEmpty(); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (columnNames: "); + result.append(columnNames); + result.append(')'); + return result.toString(); + } + +} // XmlUniqueConstraintImpl diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlVersion.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlVersion.java new file mode 100644 index 0000000000..c84852bd30 --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlVersion.java @@ -0,0 +1,61 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Version</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlVersion#getTemporal <em>Temporal</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlVersion() + * @model kind="class" interface="true" abstract="true" + * @generated + */ +public interface XmlVersion extends XmlAttributeMapping, ColumnMapping +{ + /** + * Returns the value of the '<em><b>Temporal</b></em>' attribute. + * The literals are from the enumeration {@link org.eclipse.jpt.eclipselink.core.resource.elorm.TemporalType}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Temporal</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Temporal</em>' attribute. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.TemporalType + * @see #setTemporal(TemporalType) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlVersion_Temporal() + * @model + * @generated + */ + TemporalType getTemporal(); + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlVersion#getTemporal <em>Temporal</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Temporal</em>' attribute. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.TemporalType + * @see #getTemporal() + * @generated + */ + void setTemporal(TemporalType value); + +} // XmlVersion diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlVersionImpl.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlVersionImpl.java new file mode 100644 index 0000000000..b0da3c0adf --- /dev/null +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/resource/elorm/XmlVersionImpl.java @@ -0,0 +1,345 @@ +/******************************************************************************* + * Copyright (c) 2008 Oracle. + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Oracle - initial API and implementation + *******************************************************************************/ +package org.eclipse.jpt.eclipselink.core.resource.elorm; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Xml Version Impl</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlVersionImpl() + * @model kind="class" + * @generated + */ +public class XmlVersionImpl extends AbstractXmlAttributeMapping implements XmlVersion +{ + /** + * The cached value of the '{@link #getColumn() <em>Column</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getColumn() + * @generated + * @ordered + */ + protected XmlColumn column; + + /** + * The default value of the '{@link #getTemporal() <em>Temporal</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTemporal() + * @generated + * @ordered + */ + protected static final TemporalType TEMPORAL_EDEFAULT = TemporalType.DATE; + + /** + * The cached value of the '{@link #getTemporal() <em>Temporal</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTemporal() + * @generated + * @ordered + */ + protected TemporalType temporal = TEMPORAL_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected XmlVersionImpl() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return EclipseLinkOrmPackage.Literals.XML_VERSION_IMPL; + } + + /** + * Returns the value of the '<em><b>Column</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Column</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Column</em>' containment reference. + * @see #setColumn(XmlColumn) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getColumnMapping_Column() + * @model containment="true" + * @generated + */ + public XmlColumn getColumn() + { + return column; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetColumn(XmlColumn newColumn, NotificationChain msgs) + { + XmlColumn oldColumn = column; + column = newColumn; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_VERSION_IMPL__COLUMN, oldColumn, newColumn); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlVersionImpl#getColumn <em>Column</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Column</em>' containment reference. + * @see #getColumn() + * @generated + */ + public void setColumn(XmlColumn newColumn) + { + if (newColumn != column) + { + NotificationChain msgs = null; + if (column != null) + msgs = ((InternalEObject)column).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_VERSION_IMPL__COLUMN, null, msgs); + if (newColumn != null) + msgs = ((InternalEObject)newColumn).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EclipseLinkOrmPackage.XML_VERSION_IMPL__COLUMN, null, msgs); + msgs = basicSetColumn(newColumn, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_VERSION_IMPL__COLUMN, newColumn, newColumn)); + } + + /** + * Returns the value of the '<em><b>Temporal</b></em>' attribute. + * The literals are from the enumeration {@link org.eclipse.jpt.eclipselink.core.resource.elorm.TemporalType}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Temporal</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Temporal</em>' attribute. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.TemporalType + * @see #setTemporal(TemporalType) + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.EclipseLinkOrmPackage#getXmlVersion_Temporal() + * @model + * @generated + */ + public TemporalType getTemporal() + { + return temporal; + } + + /** + * Sets the value of the '{@link org.eclipse.jpt.eclipselink.core.resource.elorm.XmlVersionImpl#getTemporal <em>Temporal</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Temporal</em>' attribute. + * @see org.eclipse.jpt.eclipselink.core.resource.elorm.TemporalType + * @see #getTemporal() + * @generated + */ + public void setTemporal(TemporalType newTemporal) + { + TemporalType oldTemporal = temporal; + temporal = newTemporal == null ? TEMPORAL_EDEFAULT : newTemporal; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, EclipseLinkOrmPackage.XML_VERSION_IMPL__TEMPORAL, oldTemporal, temporal)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_VERSION_IMPL__COLUMN: + return basicSetColumn(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_VERSION_IMPL__COLUMN: + return getColumn(); + case EclipseLinkOrmPackage.XML_VERSION_IMPL__TEMPORAL: + return getTemporal(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_VERSION_IMPL__COLUMN: + setColumn((XmlColumn)newValue); + return; + case EclipseLinkOrmPackage.XML_VERSION_IMPL__TEMPORAL: + setTemporal((TemporalType)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_VERSION_IMPL__COLUMN: + setColumn((XmlColumn)null); + return; + case EclipseLinkOrmPackage.XML_VERSION_IMPL__TEMPORAL: + setTemporal(TEMPORAL_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case EclipseLinkOrmPackage.XML_VERSION_IMPL__COLUMN: + return column != null; + case EclipseLinkOrmPackage.XML_VERSION_IMPL__TEMPORAL: + return temporal != TEMPORAL_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) + { + if (baseClass == ColumnMapping.class) + { + switch (derivedFeatureID) + { + case EclipseLinkOrmPackage.XML_VERSION_IMPL__COLUMN: return EclipseLinkOrmPackage.COLUMN_MAPPING__COLUMN; + default: return -1; + } + } + if (baseClass == XmlVersion.class) + { + switch (derivedFeatureID) + { + case EclipseLinkOrmPackage.XML_VERSION_IMPL__TEMPORAL: return EclipseLinkOrmPackage.XML_VERSION__TEMPORAL; + default: return -1; + } + } + return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) + { + if (baseClass == ColumnMapping.class) + { + switch (baseFeatureID) + { + case EclipseLinkOrmPackage.COLUMN_MAPPING__COLUMN: return EclipseLinkOrmPackage.XML_VERSION_IMPL__COLUMN; + default: return -1; + } + } + if (baseClass == XmlVersion.class) + { + switch (baseFeatureID) + { + case EclipseLinkOrmPackage.XML_VERSION__TEMPORAL: return EclipseLinkOrmPackage.XML_VERSION_IMPL__TEMPORAL; + default: return -1; + } + } + return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (temporal: "); + result.append(temporal); + result.append(')'); + return result.toString(); + } + +} // XmlVersionImpl |