/**
* <copyright>
* </copyright>
*
* $Id: PannotationPackageImpl.java,v 1.29 2008/12/16 20:40:19 mtaal Exp $
*/
package org.eclipse.emf.teneo.annotations.pannotation.impl;
import java.util.Collection;
import java.util.Collections;
import org.eclipse.emf.ecore.EAnnotation;
import org.eclipse.emf.ecore.EAttribute;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.EClassifier;
import org.eclipse.emf.ecore.EEnum;
import org.eclipse.emf.ecore.EPackage;
import org.eclipse.emf.ecore.EReference;
import org.eclipse.emf.ecore.EValidator;
import org.eclipse.emf.ecore.EcorePackage;
import org.eclipse.emf.ecore.impl.EPackageImpl;
import org.eclipse.emf.teneo.annotations.pamodel.PamodelPackage;
import org.eclipse.emf.teneo.annotations.pamodel.impl.PamodelPackageImpl;
import org.eclipse.emf.teneo.annotations.pannotation.AssociationOverride;
import org.eclipse.emf.teneo.annotations.pannotation.AttributeOverride;
import org.eclipse.emf.teneo.annotations.pannotation.Basic;
import org.eclipse.emf.teneo.annotations.pannotation.CascadeType;
import org.eclipse.emf.teneo.annotations.pannotation.Column;
import org.eclipse.emf.teneo.annotations.pannotation.DiscriminatorColumn;
import org.eclipse.emf.teneo.annotations.pannotation.DiscriminatorType;
import org.eclipse.emf.teneo.annotations.pannotation.DiscriminatorValue;
import org.eclipse.emf.teneo.annotations.pannotation.Embeddable;
import org.eclipse.emf.teneo.annotations.pannotation.Embedded;
import org.eclipse.emf.teneo.annotations.pannotation.EmbeddedId;
import org.eclipse.emf.teneo.annotations.pannotation.Entity;
import org.eclipse.emf.teneo.annotations.pannotation.EnumType;
import org.eclipse.emf.teneo.annotations.pannotation.Enumerated;
import org.eclipse.emf.teneo.annotations.pannotation.External;
import org.eclipse.emf.teneo.annotations.pannotation.FetchType;
import org.eclipse.emf.teneo.annotations.pannotation.ForeignKey;
import org.eclipse.emf.teneo.annotations.pannotation.GeneratedValue;
import org.eclipse.emf.teneo.annotations.pannotation.GenerationType;
import org.eclipse.emf.teneo.annotations.pannotation.Id;
import org.eclipse.emf.teneo.annotations.pannotation.IdClass;
import org.eclipse.emf.teneo.annotations.pannotation.Inheritance;
import org.eclipse.emf.teneo.annotations.pannotation.InheritanceType;
import org.eclipse.emf.teneo.annotations.pannotation.JoinColumn;
import org.eclipse.emf.teneo.annotations.pannotation.JoinTable;
import org.eclipse.emf.teneo.annotations.pannotation.Lob;
import org.eclipse.emf.teneo.annotations.pannotation.ManyToMany;
import org.eclipse.emf.teneo.annotations.pannotation.ManyToOne;
import org.eclipse.emf.teneo.annotations.pannotation.MapKey;
import org.eclipse.emf.teneo.annotations.pannotation.MappedSuperclass;
import org.eclipse.emf.teneo.annotations.pannotation.OneToMany;
import org.eclipse.emf.teneo.annotations.pannotation.OneToOne;
import org.eclipse.emf.teneo.annotations.pannotation.OptimizerType;
import org.eclipse.emf.teneo.annotations.pannotation.OrderBy;
import org.eclipse.emf.teneo.annotations.pannotation.PAnnotation;
import org.eclipse.emf.teneo.annotations.pannotation.PannotationFactory;
import org.eclipse.emf.teneo.annotations.pannotation.PannotationPackage;
import org.eclipse.emf.teneo.annotations.pannotation.PrimaryKeyJoinColumn;
import org.eclipse.emf.teneo.annotations.pannotation.SecondaryTable;
import org.eclipse.emf.teneo.annotations.pannotation.SequenceGenerator;
import org.eclipse.emf.teneo.annotations.pannotation.SequenceStyleGenerator;
import org.eclipse.emf.teneo.annotations.pannotation.Table;
import org.eclipse.emf.teneo.annotations.pannotation.TableGenerator;
import org.eclipse.emf.teneo.annotations.pannotation.Temporal;
import org.eclipse.emf.teneo.annotations.pannotation.TemporalType;
import org.eclipse.emf.teneo.annotations.pannotation.Transient;
import org.eclipse.emf.teneo.annotations.pannotation.UniqueConstraint;
import org.eclipse.emf.teneo.annotations.pannotation.Version;
import org.eclipse.emf.teneo.annotations.pannotation.util.PannotationValidator;
/**
* <!-- begin-user-doc --> An implementation of the model <b>Package</b>. <!--
* end-user-doc -->
* @generated
*/
public class PannotationPackageImpl extends EPackageImpl implements
PannotationPackage {
public static final String TARGET_ANNOTATION_SOURCE = "teneo/internal/Target";
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
private EClass pAnnotationEClass = null;
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
private EClass attributeOverrideEClass = null;
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
private EClass basicEClass = null;
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
private EClass columnEClass = null;
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
private EClass discriminatorColumnEClass = null;
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
private EClass discriminatorValueEClass = null;
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
private EClass embeddableEClass = null;
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
private EClass mappedSuperclassEClass = null;
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
private EClass embeddedEClass = null;
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
private EClass embeddedIdEClass = null;
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
private EClass enumeratedEClass = null;
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
private EClass entityEClass = null;
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
private EClass generatedValueEClass = null;
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
private EClass idEClass = null;
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
private EClass idClassEClass = null;
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
private EClass inheritanceEClass = null;
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
private EClass joinColumnEClass = null;
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
private EClass joinTableEClass = null;
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
private EClass lobEClass = null;
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
private EClass manyToManyEClass = null;
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
private EClass manyToOneEClass = null;
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
private EClass mapKeyEClass = null;
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
private EClass oneToManyEClass = null;
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
private EClass oneToOneEClass = null;
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
private EClass orderByEClass = null;
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
private EClass primaryKeyJoinColumnEClass = null;
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
private EClass secondaryTableEClass = null;
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
private EClass sequenceGeneratorEClass = null;
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
private EClass tableEClass = null;
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
private EClass tableGeneratorEClass = null;
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
private EClass temporalEClass = null;
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
private EClass transientEClass = null;
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
private EClass uniqueConstraintEClass = null;
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
private EClass versionEClass = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EClass foreignKeyEClass = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EClass sequenceStyleGeneratorEClass = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EClass externalEClass = null;
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
private EClass associationOverrideEClass = null;
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
private EEnum fetchTypeEEnum = 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 inheritanceTypeEEnum = null;
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
private EEnum cascadeTypeEEnum = null;
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
private EEnum temporalTypeEEnum = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EEnum optimizerTypeEEnum = null;
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
private EEnum generationTypeEEnum = 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.emf.teneo.annotations.pannotation.PannotationPackage#eNS_URI
* @see #init()
* @generated
*/
private PannotationPackageImpl() {
super(eNS_URI, PannotationFactory.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 PannotationPackage init() {
if (isInited) return (PannotationPackage)EPackage.Registry.INSTANCE.getEPackage(PannotationPackage.eNS_URI);
// Obtain or create and register package
PannotationPackageImpl thePannotationPackage = (PannotationPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(eNS_URI) instanceof PannotationPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(eNS_URI) : new PannotationPackageImpl());
isInited = true;
// Obtain or create and register interdependencies
PamodelPackageImpl thePamodelPackage = (PamodelPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(PamodelPackage.eNS_URI) instanceof PamodelPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(PamodelPackage.eNS_URI) : PamodelPackage.eINSTANCE);
// Create package meta-data objects
thePannotationPackage.createPackageContents();
thePamodelPackage.createPackageContents();
// Initialize created meta-data
thePannotationPackage.initializePackageContents();
thePamodelPackage.initializePackageContents();
// Register package validator
EValidator.Registry.INSTANCE.put
(thePannotationPackage,
new EValidator.Descriptor() {
public EValidator getEValidator() {
return PannotationValidator.INSTANCE;
}
});
// Mark meta-data to indicate it can't be changed
thePannotationPackage.freeze();
return thePannotationPackage;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EClass getPAnnotation() {
return pAnnotationEClass;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EReference getPAnnotation_EModelElement() {
return (EReference)pAnnotationEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EClass getAttributeOverride() {
return attributeOverrideEClass;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getAttributeOverride_Name() {
return (EAttribute)attributeOverrideEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EReference getAttributeOverride_Column() {
return (EReference)attributeOverrideEClass.getEStructuralFeatures().get(1);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EClass getBasic() {
return basicEClass;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getBasic_Fetch() {
return (EAttribute)basicEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getBasic_Optional() {
return (EAttribute)basicEClass.getEStructuralFeatures().get(1);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EClass getColumn() {
return columnEClass;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getColumn_Name() {
return (EAttribute)columnEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getColumn_Length() {
return (EAttribute)columnEClass.getEStructuralFeatures().get(7);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getColumn_Scale() {
return (EAttribute)columnEClass.getEStructuralFeatures().get(9);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getColumn_Unique() {
return (EAttribute)columnEClass.getEStructuralFeatures().get(1);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getColumn_Precision() {
return (EAttribute)columnEClass.getEStructuralFeatures().get(8);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getColumn_Nullable() {
return (EAttribute)columnEClass.getEStructuralFeatures().get(2);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getColumn_Insertable() {
return (EAttribute)columnEClass.getEStructuralFeatures().get(3);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getColumn_Updatable() {
return (EAttribute)columnEClass.getEStructuralFeatures().get(4);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getColumn_ColumnDefinition() {
return (EAttribute)columnEClass.getEStructuralFeatures().get(5);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getColumn_Table() {
return (EAttribute)columnEClass.getEStructuralFeatures().get(6);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EClass getDiscriminatorColumn() {
return discriminatorColumnEClass;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getDiscriminatorColumn_Name() {
return (EAttribute)discriminatorColumnEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getDiscriminatorColumn_DiscriminatorType() {
return (EAttribute)discriminatorColumnEClass.getEStructuralFeatures().get(1);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getDiscriminatorColumn_Length() {
return (EAttribute)discriminatorColumnEClass.getEStructuralFeatures().get(3);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EClass getDiscriminatorValue() {
return discriminatorValueEClass;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getDiscriminatorValue_Value() {
return (EAttribute)discriminatorValueEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getDiscriminatorColumn_ColumnDefinition() {
return (EAttribute)discriminatorColumnEClass.getEStructuralFeatures().get(2);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EClass getEmbeddable() {
return embeddableEClass;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EClass getMappedSuperclass() {
return mappedSuperclassEClass;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EClass getEmbedded() {
return embeddedEClass;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EClass getEmbeddedId() {
return embeddedIdEClass;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EClass getEnumerated() {
return enumeratedEClass;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getEnumerated_Value() {
return (EAttribute)enumeratedEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EClass getEntity() {
return entityEClass;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getEntity_Name() {
return (EAttribute)entityEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EAttribute getEntity_Extends() {
return (EAttribute)entityEClass.getEStructuralFeatures().get(1);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EClass getGeneratedValue() {
return generatedValueEClass;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getGeneratedValue_Strategy() {
return (EAttribute)generatedValueEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getGeneratedValue_Generator() {
return (EAttribute)generatedValueEClass.getEStructuralFeatures().get(1);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EClass getId() {
return idEClass;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EClass getIdClass() {
return idClassEClass;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getIdClass_Value() {
return (EAttribute)idClassEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EClass getInheritance() {
return inheritanceEClass;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getInheritance_Strategy() {
return (EAttribute)inheritanceEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EClass getJoinColumn() {
return joinColumnEClass;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getJoinColumn_Name() {
return (EAttribute)joinColumnEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getJoinColumn_Unique() {
return (EAttribute)joinColumnEClass.getEStructuralFeatures().get(2);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getJoinColumn_Nullable() {
return (EAttribute)joinColumnEClass.getEStructuralFeatures().get(3);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getJoinColumn_Insertable() {
return (EAttribute)joinColumnEClass.getEStructuralFeatures().get(4);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getJoinColumn_Updatable() {
return (EAttribute)joinColumnEClass.getEStructuralFeatures().get(5);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getJoinColumn_ColumnDefinition() {
return (EAttribute)joinColumnEClass.getEStructuralFeatures().get(6);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getJoinColumn_Table() {
return (EAttribute)joinColumnEClass.getEStructuralFeatures().get(7);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getJoinColumn_ReferencedColumnName() {
return (EAttribute)joinColumnEClass.getEStructuralFeatures().get(1);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EClass getJoinTable() {
return joinTableEClass;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getJoinTable_Name() {
return (EAttribute)joinTableEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getJoinTable_Catalog() {
return (EAttribute)joinTableEClass.getEStructuralFeatures().get(1);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getJoinTable_Schema() {
return (EAttribute)joinTableEClass.getEStructuralFeatures().get(2);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EReference getJoinTable_JoinColumns() {
return (EReference)joinTableEClass.getEStructuralFeatures().get(3);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EReference getJoinTable_InverseJoinColumns() {
return (EReference)joinTableEClass.getEStructuralFeatures().get(4);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EReference getJoinTable_UniqueConstraints() {
return (EReference)joinTableEClass.getEStructuralFeatures().get(5);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EClass getLob() {
return lobEClass;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EClass getManyToMany() {
return manyToManyEClass;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getManyToMany_Fetch() {
return (EAttribute)manyToManyEClass.getEStructuralFeatures().get(2);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getManyToMany_TargetEntity() {
return (EAttribute)manyToManyEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getManyToMany_Cascade() {
return (EAttribute)manyToManyEClass.getEStructuralFeatures().get(1);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getManyToMany_MappedBy() {
return (EAttribute)manyToManyEClass.getEStructuralFeatures().get(3);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getManyToMany_Indexed() {
return (EAttribute)manyToManyEClass.getEStructuralFeatures().get(4);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EClass getManyToOne() {
return manyToOneEClass;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getManyToOne_TargetEntity() {
return (EAttribute)manyToOneEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getManyToOne_Fetch() {
return (EAttribute)manyToOneEClass.getEStructuralFeatures().get(2);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getManyToOne_Optional() {
return (EAttribute)manyToOneEClass.getEStructuralFeatures().get(3);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getManyToOne_Cascade() {
return (EAttribute)manyToOneEClass.getEStructuralFeatures().get(1);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EClass getMapKey() {
return mapKeyEClass;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getMapKey_Name() {
return (EAttribute)mapKeyEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EClass getOneToMany() {
return oneToManyEClass;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getOneToMany_Fetch() {
return (EAttribute)oneToManyEClass.getEStructuralFeatures().get(2);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getOneToMany_TargetEntity() {
return (EAttribute)oneToManyEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getOneToMany_Cascade() {
return (EAttribute)oneToManyEClass.getEStructuralFeatures().get(1);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getOneToMany_MappedBy() {
return (EAttribute)oneToManyEClass.getEStructuralFeatures().get(3);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getOneToMany_Indexed() {
return (EAttribute)oneToManyEClass.getEStructuralFeatures().get(4);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getOneToMany_Unique() {
return (EAttribute)oneToManyEClass.getEStructuralFeatures().get(5);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EClass getOneToOne() {
return oneToOneEClass;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getOneToOne_Fetch() {
return (EAttribute)oneToOneEClass.getEStructuralFeatures().get(2);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getOneToOne_Optional() {
return (EAttribute)oneToOneEClass.getEStructuralFeatures().get(3);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getOneToOne_TargetEntity() {
return (EAttribute)oneToOneEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getOneToOne_Cascade() {
return (EAttribute)oneToOneEClass.getEStructuralFeatures().get(1);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getOneToOne_MappedBy() {
return (EAttribute)oneToOneEClass.getEStructuralFeatures().get(4);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EClass getOrderBy() {
return orderByEClass;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getOrderBy_Value() {
return (EAttribute)orderByEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EClass getPrimaryKeyJoinColumn() {
return primaryKeyJoinColumnEClass;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getPrimaryKeyJoinColumn_Name() {
return (EAttribute)primaryKeyJoinColumnEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getPrimaryKeyJoinColumn_ColumnDefinition() {
return (EAttribute)primaryKeyJoinColumnEClass.getEStructuralFeatures().get(2);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getPrimaryKeyJoinColumn_ReferencedColumnName() {
return (EAttribute)primaryKeyJoinColumnEClass.getEStructuralFeatures().get(1);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EClass getSecondaryTable() {
return secondaryTableEClass;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getSecondaryTable_Name() {
return (EAttribute)secondaryTableEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getSecondaryTable_Catalog() {
return (EAttribute)secondaryTableEClass.getEStructuralFeatures().get(1);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getSecondaryTable_Schema() {
return (EAttribute)secondaryTableEClass.getEStructuralFeatures().get(2);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EReference getSecondaryTable_PkJoinColumns() {
return (EReference)secondaryTableEClass.getEStructuralFeatures().get(3);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EReference getSecondaryTable_UniqueConstraints() {
return (EReference)secondaryTableEClass.getEStructuralFeatures().get(4);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EClass getSequenceGenerator() {
return sequenceGeneratorEClass;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getSequenceGenerator_Name() {
return (EAttribute)sequenceGeneratorEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getSequenceGenerator_InitialValue() {
return (EAttribute)sequenceGeneratorEClass.getEStructuralFeatures().get(2);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getSequenceGenerator_SequenceName() {
return (EAttribute)sequenceGeneratorEClass.getEStructuralFeatures().get(1);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getSequenceGenerator_AllocationSize() {
return (EAttribute)sequenceGeneratorEClass.getEStructuralFeatures().get(3);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EClass getTable() {
return tableEClass;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getTable_Name() {
return (EAttribute)tableEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getTable_Catalog() {
return (EAttribute)tableEClass.getEStructuralFeatures().get(1);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getTable_Schema() {
return (EAttribute)tableEClass.getEStructuralFeatures().get(2);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EReference getTable_UniqueConstraints() {
return (EReference)tableEClass.getEStructuralFeatures().get(3);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EClass getTableGenerator() {
return tableGeneratorEClass;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getTableGenerator_Name() {
return (EAttribute)tableGeneratorEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getTableGenerator_AllocationSize() {
return (EAttribute)tableGeneratorEClass.getEStructuralFeatures().get(8);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getTableGenerator_Table() {
return (EAttribute)tableGeneratorEClass.getEStructuralFeatures().get(1);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getTableGenerator_Catalog() {
return (EAttribute)tableGeneratorEClass.getEStructuralFeatures().get(2);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getTableGenerator_Schema() {
return (EAttribute)tableGeneratorEClass.getEStructuralFeatures().get(3);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getTableGenerator_PkColumnName() {
return (EAttribute)tableGeneratorEClass.getEStructuralFeatures().get(4);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getTableGenerator_ValueColumnName() {
return (EAttribute)tableGeneratorEClass.getEStructuralFeatures().get(5);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getTableGenerator_InitialValue() {
return (EAttribute)tableGeneratorEClass.getEStructuralFeatures().get(7);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getTableGenerator_PkColumnValue() {
return (EAttribute)tableGeneratorEClass.getEStructuralFeatures().get(6);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EReference getTableGenerator_UniqueConstraints() {
return (EReference)tableGeneratorEClass.getEStructuralFeatures().get(9);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EClass getTemporal() {
return temporalEClass;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getTemporal_Value() {
return (EAttribute)temporalEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EClass getTransient() {
return transientEClass;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EClass getUniqueConstraint() {
return uniqueConstraintEClass;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getUniqueConstraint_ColumnNames() {
return (EAttribute)uniqueConstraintEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EClass getVersion() {
return versionEClass;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EClass getForeignKey() {
return foreignKeyEClass;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EAttribute getForeignKey_Name() {
return (EAttribute)foreignKeyEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EClass getSequenceStyleGenerator() {
return sequenceStyleGeneratorEClass;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EAttribute getSequenceStyleGenerator_Name() {
return (EAttribute)sequenceStyleGeneratorEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EAttribute getSequenceStyleGenerator_SequenceName() {
return (EAttribute)sequenceStyleGeneratorEClass.getEStructuralFeatures().get(1);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EAttribute getSequenceStyleGenerator_InitialValue() {
return (EAttribute)sequenceStyleGeneratorEClass.getEStructuralFeatures().get(2);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EAttribute getSequenceStyleGenerator_IncrementSize() {
return (EAttribute)sequenceStyleGeneratorEClass.getEStructuralFeatures().get(3);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EAttribute getSequenceStyleGenerator_Optimizer() {
return (EAttribute)sequenceStyleGeneratorEClass.getEStructuralFeatures().get(4);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EClass getExternal() {
return externalEClass;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EAttribute getExternal_Type() {
return (EAttribute)externalEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EClass getAssociationOverride() {
return associationOverrideEClass;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EAttribute getAssociationOverride_Name() {
return (EAttribute)associationOverrideEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EReference getAssociationOverride_JoinColumns() {
return (EReference)associationOverrideEClass.getEStructuralFeatures().get(1);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EEnum getFetchType() {
return fetchTypeEEnum;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EEnum getDiscriminatorType() {
return discriminatorTypeEEnum;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EEnum getEnumType() {
return enumTypeEEnum;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EEnum getInheritanceType() {
return inheritanceTypeEEnum;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EEnum getCascadeType() {
return cascadeTypeEEnum;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EEnum getTemporalType() {
return temporalTypeEEnum;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EEnum getOptimizerType() {
return optimizerTypeEEnum;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public EEnum getGenerationType() {
return generationTypeEEnum;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public PannotationFactory getPannotationFactory() {
return (PannotationFactory)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
pAnnotationEClass = createEClass(PANNOTATION);
createEReference(pAnnotationEClass, PANNOTATION__EMODEL_ELEMENT);
attributeOverrideEClass = createEClass(ATTRIBUTE_OVERRIDE);
createEAttribute(attributeOverrideEClass, ATTRIBUTE_OVERRIDE__NAME);
createEReference(attributeOverrideEClass, ATTRIBUTE_OVERRIDE__COLUMN);
associationOverrideEClass = createEClass(ASSOCIATION_OVERRIDE);
createEAttribute(associationOverrideEClass, ASSOCIATION_OVERRIDE__NAME);
createEReference(associationOverrideEClass, ASSOCIATION_OVERRIDE__JOIN_COLUMNS);
basicEClass = createEClass(BASIC);
createEAttribute(basicEClass, BASIC__FETCH);
createEAttribute(basicEClass, BASIC__OPTIONAL);
columnEClass = createEClass(COLUMN);
createEAttribute(columnEClass, COLUMN__NAME);
createEAttribute(columnEClass, COLUMN__UNIQUE);
createEAttribute(columnEClass, COLUMN__NULLABLE);
createEAttribute(columnEClass, COLUMN__INSERTABLE);
createEAttribute(columnEClass, COLUMN__UPDATABLE);
createEAttribute(columnEClass, COLUMN__COLUMN_DEFINITION);
createEAttribute(columnEClass, COLUMN__TABLE);
createEAttribute(columnEClass, COLUMN__LENGTH);
createEAttribute(columnEClass, COLUMN__PRECISION);
createEAttribute(columnEClass, COLUMN__SCALE);
discriminatorColumnEClass = createEClass(DISCRIMINATOR_COLUMN);
createEAttribute(discriminatorColumnEClass, DISCRIMINATOR_COLUMN__NAME);
createEAttribute(discriminatorColumnEClass, DISCRIMINATOR_COLUMN__DISCRIMINATOR_TYPE);
createEAttribute(discriminatorColumnEClass, DISCRIMINATOR_COLUMN__COLUMN_DEFINITION);
createEAttribute(discriminatorColumnEClass, DISCRIMINATOR_COLUMN__LENGTH);
discriminatorValueEClass = createEClass(DISCRIMINATOR_VALUE);
createEAttribute(discriminatorValueEClass, DISCRIMINATOR_VALUE__VALUE);
embeddableEClass = createEClass(EMBEDDABLE);
embeddedEClass = createEClass(EMBEDDED);
embeddedIdEClass = createEClass(EMBEDDED_ID);
entityEClass = createEClass(ENTITY);
createEAttribute(entityEClass, ENTITY__NAME);
createEAttribute(entityEClass, ENTITY__EXTENDS);
enumeratedEClass = createEClass(ENUMERATED);
createEAttribute(enumeratedEClass, ENUMERATED__VALUE);
generatedValueEClass = createEClass(GENERATED_VALUE);
createEAttribute(generatedValueEClass, GENERATED_VALUE__STRATEGY);
createEAttribute(generatedValueEClass, GENERATED_VALUE__GENERATOR);
idEClass = createEClass(ID);
idClassEClass = createEClass(ID_CLASS);
createEAttribute(idClassEClass, ID_CLASS__VALUE);
inheritanceEClass = createEClass(INHERITANCE);
createEAttribute(inheritanceEClass, INHERITANCE__STRATEGY);
joinColumnEClass = createEClass(JOIN_COLUMN);
createEAttribute(joinColumnEClass, JOIN_COLUMN__NAME);
createEAttribute(joinColumnEClass, JOIN_COLUMN__REFERENCED_COLUMN_NAME);
createEAttribute(joinColumnEClass, JOIN_COLUMN__UNIQUE);
createEAttribute(joinColumnEClass, JOIN_COLUMN__NULLABLE);
createEAttribute(joinColumnEClass, JOIN_COLUMN__INSERTABLE);
createEAttribute(joinColumnEClass, JOIN_COLUMN__UPDATABLE);
createEAttribute(joinColumnEClass, JOIN_COLUMN__COLUMN_DEFINITION);
createEAttribute(joinColumnEClass, JOIN_COLUMN__TABLE);
joinTableEClass = createEClass(JOIN_TABLE);
createEAttribute(joinTableEClass, JOIN_TABLE__NAME);
createEAttribute(joinTableEClass, JOIN_TABLE__CATALOG);
createEAttribute(joinTableEClass, JOIN_TABLE__SCHEMA);
createEReference(joinTableEClass, JOIN_TABLE__JOIN_COLUMNS);
createEReference(joinTableEClass, JOIN_TABLE__INVERSE_JOIN_COLUMNS);
createEReference(joinTableEClass, JOIN_TABLE__UNIQUE_CONSTRAINTS);
lobEClass = createEClass(LOB);
manyToManyEClass = createEClass(MANY_TO_MANY);
createEAttribute(manyToManyEClass, MANY_TO_MANY__TARGET_ENTITY);
createEAttribute(manyToManyEClass, MANY_TO_MANY__CASCADE);
createEAttribute(manyToManyEClass, MANY_TO_MANY__FETCH);
createEAttribute(manyToManyEClass, MANY_TO_MANY__MAPPED_BY);
createEAttribute(manyToManyEClass, MANY_TO_MANY__INDEXED);
manyToOneEClass = createEClass(MANY_TO_ONE);
createEAttribute(manyToOneEClass, MANY_TO_ONE__TARGET_ENTITY);
createEAttribute(manyToOneEClass, MANY_TO_ONE__CASCADE);
createEAttribute(manyToOneEClass, MANY_TO_ONE__FETCH);
createEAttribute(manyToOneEClass, MANY_TO_ONE__OPTIONAL);
mapKeyEClass = createEClass(MAP_KEY);
createEAttribute(mapKeyEClass, MAP_KEY__NAME);
mappedSuperclassEClass = createEClass(MAPPED_SUPERCLASS);
oneToManyEClass = createEClass(ONE_TO_MANY);
createEAttribute(oneToManyEClass, ONE_TO_MANY__TARGET_ENTITY);
createEAttribute(oneToManyEClass, ONE_TO_MANY__CASCADE);
createEAttribute(oneToManyEClass, ONE_TO_MANY__FETCH);
createEAttribute(oneToManyEClass, ONE_TO_MANY__MAPPED_BY);
createEAttribute(oneToManyEClass, ONE_TO_MANY__INDEXED);
createEAttribute(oneToManyEClass, ONE_TO_MANY__UNIQUE);
oneToOneEClass = createEClass(ONE_TO_ONE);
createEAttribute(oneToOneEClass, ONE_TO_ONE__TARGET_ENTITY);
createEAttribute(oneToOneEClass, ONE_TO_ONE__CASCADE);
createEAttribute(oneToOneEClass, ONE_TO_ONE__FETCH);
createEAttribute(oneToOneEClass, ONE_TO_ONE__OPTIONAL);
createEAttribute(oneToOneEClass, ONE_TO_ONE__MAPPED_BY);
orderByEClass = createEClass(ORDER_BY);
createEAttribute(orderByEClass, ORDER_BY__VALUE);
primaryKeyJoinColumnEClass = createEClass(PRIMARY_KEY_JOIN_COLUMN);
createEAttribute(primaryKeyJoinColumnEClass, PRIMARY_KEY_JOIN_COLUMN__NAME);
createEAttribute(primaryKeyJoinColumnEClass, PRIMARY_KEY_JOIN_COLUMN__REFERENCED_COLUMN_NAME);
createEAttribute(primaryKeyJoinColumnEClass, PRIMARY_KEY_JOIN_COLUMN__COLUMN_DEFINITION);
secondaryTableEClass = createEClass(SECONDARY_TABLE);
createEAttribute(secondaryTableEClass, SECONDARY_TABLE__NAME);
createEAttribute(secondaryTableEClass, SECONDARY_TABLE__CATALOG);
createEAttribute(secondaryTableEClass, SECONDARY_TABLE__SCHEMA);
createEReference(secondaryTableEClass, SECONDARY_TABLE__PK_JOIN_COLUMNS);
createEReference(secondaryTableEClass, SECONDARY_TABLE__UNIQUE_CONSTRAINTS);
sequenceGeneratorEClass = createEClass(SEQUENCE_GENERATOR);
createEAttribute(sequenceGeneratorEClass, SEQUENCE_GENERATOR__NAME);
createEAttribute(sequenceGeneratorEClass, SEQUENCE_GENERATOR__SEQUENCE_NAME);
createEAttribute(sequenceGeneratorEClass, SEQUENCE_GENERATOR__INITIAL_VALUE);
createEAttribute(sequenceGeneratorEClass, SEQUENCE_GENERATOR__ALLOCATION_SIZE);
tableEClass = createEClass(TABLE);
createEAttribute(tableEClass, TABLE__NAME);
createEAttribute(tableEClass, TABLE__CATALOG);
createEAttribute(tableEClass, TABLE__SCHEMA);
createEReference(tableEClass, TABLE__UNIQUE_CONSTRAINTS);
tableGeneratorEClass = createEClass(TABLE_GENERATOR);
createEAttribute(tableGeneratorEClass, TABLE_GENERATOR__NAME);
createEAttribute(tableGeneratorEClass, TABLE_GENERATOR__TABLE);
createEAttribute(tableGeneratorEClass, TABLE_GENERATOR__CATALOG);
createEAttribute(tableGeneratorEClass, TABLE_GENERATOR__SCHEMA);
createEAttribute(tableGeneratorEClass, TABLE_GENERATOR__PK_COLUMN_NAME);
createEAttribute(tableGeneratorEClass, TABLE_GENERATOR__VALUE_COLUMN_NAME);
createEAttribute(tableGeneratorEClass, TABLE_GENERATOR__PK_COLUMN_VALUE);
createEAttribute(tableGeneratorEClass, TABLE_GENERATOR__INITIAL_VALUE);
createEAttribute(tableGeneratorEClass, TABLE_GENERATOR__ALLOCATION_SIZE);
createEReference(tableGeneratorEClass, TABLE_GENERATOR__UNIQUE_CONSTRAINTS);
temporalEClass = createEClass(TEMPORAL);
createEAttribute(temporalEClass, TEMPORAL__VALUE);
transientEClass = createEClass(TRANSIENT);
uniqueConstraintEClass = createEClass(UNIQUE_CONSTRAINT);
createEAttribute(uniqueConstraintEClass, UNIQUE_CONSTRAINT__COLUMN_NAMES);
versionEClass = createEClass(VERSION);
foreignKeyEClass = createEClass(FOREIGN_KEY);
createEAttribute(foreignKeyEClass, FOREIGN_KEY__NAME);
sequenceStyleGeneratorEClass = createEClass(SEQUENCE_STYLE_GENERATOR);
createEAttribute(sequenceStyleGeneratorEClass, SEQUENCE_STYLE_GENERATOR__NAME);
createEAttribute(sequenceStyleGeneratorEClass, SEQUENCE_STYLE_GENERATOR__SEQUENCE_NAME);
createEAttribute(sequenceStyleGeneratorEClass, SEQUENCE_STYLE_GENERATOR__INITIAL_VALUE);
createEAttribute(sequenceStyleGeneratorEClass, SEQUENCE_STYLE_GENERATOR__INCREMENT_SIZE);
createEAttribute(sequenceStyleGeneratorEClass, SEQUENCE_STYLE_GENERATOR__OPTIMIZER);
externalEClass = createEClass(EXTERNAL);
createEAttribute(externalEClass, EXTERNAL__TYPE);
// Create enums
cascadeTypeEEnum = createEEnum(CASCADE_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);
optimizerTypeEEnum = createEEnum(OPTIMIZER_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);
// Create type parameters
// Set bounds for type parameters
// Add supertypes to classes
attributeOverrideEClass.getESuperTypes().add(this.getPAnnotation());
associationOverrideEClass.getESuperTypes().add(this.getPAnnotation());
basicEClass.getESuperTypes().add(this.getPAnnotation());
columnEClass.getESuperTypes().add(this.getPAnnotation());
discriminatorColumnEClass.getESuperTypes().add(this.getPAnnotation());
discriminatorValueEClass.getESuperTypes().add(this.getPAnnotation());
embeddableEClass.getESuperTypes().add(this.getPAnnotation());
embeddedEClass.getESuperTypes().add(this.getPAnnotation());
embeddedIdEClass.getESuperTypes().add(this.getPAnnotation());
entityEClass.getESuperTypes().add(this.getPAnnotation());
enumeratedEClass.getESuperTypes().add(this.getPAnnotation());
generatedValueEClass.getESuperTypes().add(this.getPAnnotation());
idEClass.getESuperTypes().add(this.getPAnnotation());
idClassEClass.getESuperTypes().add(this.getPAnnotation());
inheritanceEClass.getESuperTypes().add(this.getPAnnotation());
joinColumnEClass.getESuperTypes().add(this.getPAnnotation());
joinTableEClass.getESuperTypes().add(this.getPAnnotation());
lobEClass.getESuperTypes().add(this.getPAnnotation());
manyToManyEClass.getESuperTypes().add(this.getPAnnotation());
manyToOneEClass.getESuperTypes().add(this.getPAnnotation());
mapKeyEClass.getESuperTypes().add(this.getPAnnotation());
mappedSuperclassEClass.getESuperTypes().add(this.getPAnnotation());
oneToManyEClass.getESuperTypes().add(this.getPAnnotation());
oneToOneEClass.getESuperTypes().add(this.getPAnnotation());
orderByEClass.getESuperTypes().add(this.getPAnnotation());
primaryKeyJoinColumnEClass.getESuperTypes().add(this.getPAnnotation());
secondaryTableEClass.getESuperTypes().add(this.getPAnnotation());
sequenceGeneratorEClass.getESuperTypes().add(this.getPAnnotation());
tableEClass.getESuperTypes().add(this.getPAnnotation());
tableGeneratorEClass.getESuperTypes().add(this.getPAnnotation());
temporalEClass.getESuperTypes().add(this.getPAnnotation());
transientEClass.getESuperTypes().add(this.getPAnnotation());
uniqueConstraintEClass.getESuperTypes().add(this.getPAnnotation());
versionEClass.getESuperTypes().add(this.getPAnnotation());
foreignKeyEClass.getESuperTypes().add(this.getPAnnotation());
sequenceStyleGeneratorEClass.getESuperTypes().add(this.getPAnnotation());
externalEClass.getESuperTypes().add(this.getPAnnotation());
// Initialize classes and features; add operations and parameters
initEClass(pAnnotationEClass, PAnnotation.class, "PAnnotation", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEReference(getPAnnotation_EModelElement(), ecorePackage.getEModelElement(), null, "eModelElement", null, 1, 1, PAnnotation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(attributeOverrideEClass, AttributeOverride.class, "AttributeOverride", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getAttributeOverride_Name(), ecorePackage.getEString(), "name", null, 1, 1, AttributeOverride.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEReference(getAttributeOverride_Column(), this.getColumn(), null, "column", null, 1, 1, AttributeOverride.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(associationOverrideEClass, AssociationOverride.class, "AssociationOverride", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getAssociationOverride_Name(), ecorePackage.getEString(), "name", null, 1, 1, AssociationOverride.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEReference(getAssociationOverride_JoinColumns(), this.getJoinColumn(), null, "joinColumns", null, 1, -1, AssociationOverride.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(basicEClass, Basic.class, "Basic", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getBasic_Fetch(), this.getFetchType(), "fetch", "EAGER", 0, 1, Basic.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getBasic_Optional(), ecorePackage.getEBoolean(), "optional", "true", 0, 1, Basic.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(columnEClass, Column.class, "Column", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getColumn_Name(), ecorePackage.getEString(), "name", null, 0, 1, Column.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getColumn_Unique(), ecorePackage.getEBoolean(), "unique", "false", 0, 1, Column.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getColumn_Nullable(), ecorePackage.getEBoolean(), "nullable", "true", 0, 1, Column.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getColumn_Insertable(), ecorePackage.getEBoolean(), "insertable", "true", 0, 1, Column.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getColumn_Updatable(), ecorePackage.getEBoolean(), "updatable", "true", 0, 1, Column.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getColumn_ColumnDefinition(), ecorePackage.getEString(), "columnDefinition", null, 0, 1, Column.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getColumn_Table(), ecorePackage.getEString(), "table", null, 0, 1, Column.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getColumn_Length(), ecorePackage.getEInt(), "length", "255", 0, 1, Column.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getColumn_Precision(), ecorePackage.getEInt(), "precision", "0", 0, 1, Column.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getColumn_Scale(), ecorePackage.getEInt(), "scale", "0", 0, 1, Column.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(discriminatorColumnEClass, DiscriminatorColumn.class, "DiscriminatorColumn", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getDiscriminatorColumn_Name(), ecorePackage.getEString(), "name", "DTYPE", 0, 1, DiscriminatorColumn.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getDiscriminatorColumn_DiscriminatorType(), this.getDiscriminatorType(), "discriminatorType", "STRING", 0, 1, DiscriminatorColumn.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getDiscriminatorColumn_ColumnDefinition(), ecorePackage.getEString(), "columnDefinition", null, 0, 1, DiscriminatorColumn.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getDiscriminatorColumn_Length(), ecorePackage.getEInt(), "length", "31", 0, 1, DiscriminatorColumn.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(discriminatorValueEClass, DiscriminatorValue.class, "DiscriminatorValue", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getDiscriminatorValue_Value(), ecorePackage.getEString(), "value", null, 0, 1, DiscriminatorValue.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(embeddableEClass, Embeddable.class, "Embeddable", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEClass(embeddedEClass, Embedded.class, "Embedded", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEClass(embeddedIdEClass, EmbeddedId.class, "EmbeddedId", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEClass(entityEClass, Entity.class, "Entity", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getEntity_Name(), ecorePackage.getEString(), "name", null, 0, 1, Entity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getEntity_Extends(), ecorePackage.getEString(), "extends", null, 0, 1, Entity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(enumeratedEClass, Enumerated.class, "Enumerated", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getEnumerated_Value(), this.getEnumType(), "value", "ORDINAL", 0, 1, Enumerated.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(generatedValueEClass, GeneratedValue.class, "GeneratedValue", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getGeneratedValue_Strategy(), this.getGenerationType(), "strategy", "AUTO", 0, 1, GeneratedValue.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getGeneratedValue_Generator(), ecorePackage.getEString(), "generator", null, 0, 1, GeneratedValue.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(idEClass, Id.class, "Id", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEClass(idClassEClass, IdClass.class, "IdClass", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getIdClass_Value(), ecorePackage.getEString(), "value", null, 1, 1, IdClass.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(joinColumnEClass, JoinColumn.class, "JoinColumn", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getJoinColumn_Name(), ecorePackage.getEString(), "name", null, 0, 1, JoinColumn.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getJoinColumn_ReferencedColumnName(), ecorePackage.getEString(), "referencedColumnName", null, 0, 1, JoinColumn.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getJoinColumn_Unique(), ecorePackage.getEBoolean(), "unique", "false", 0, 1, JoinColumn.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getJoinColumn_Nullable(), ecorePackage.getEBoolean(), "nullable", "true", 0, 1, JoinColumn.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getJoinColumn_Insertable(), ecorePackage.getEBoolean(), "insertable", "true", 0, 1, JoinColumn.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getJoinColumn_Updatable(), ecorePackage.getEBoolean(), "updatable", "true", 0, 1, JoinColumn.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getJoinColumn_ColumnDefinition(), ecorePackage.getEString(), "columnDefinition", null, 0, 1, JoinColumn.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getJoinColumn_Table(), ecorePackage.getEString(), "table", null, 0, 1, JoinColumn.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(joinTableEClass, JoinTable.class, "JoinTable", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getJoinTable_Name(), ecorePackage.getEString(), "name", null, 0, 1, JoinTable.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getJoinTable_Catalog(), ecorePackage.getEString(), "catalog", null, 0, 1, JoinTable.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getJoinTable_Schema(), ecorePackage.getEString(), "schema", null, 0, 1, JoinTable.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEReference(getJoinTable_JoinColumns(), this.getJoinColumn(), null, "joinColumns", null, 0, -1, JoinTable.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEReference(getJoinTable_InverseJoinColumns(), this.getJoinColumn(), null, "inverseJoinColumns", null, 0, -1, JoinTable.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEReference(getJoinTable_UniqueConstraints(), this.getUniqueConstraint(), null, "uniqueConstraints", null, 0, -1, JoinTable.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(lobEClass, Lob.class, "Lob", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEClass(manyToManyEClass, ManyToMany.class, "ManyToMany", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getManyToMany_TargetEntity(), ecorePackage.getEString(), "targetEntity", null, 0, 1, ManyToMany.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getManyToMany_Cascade(), this.getCascadeType(), "cascade", null, 0, -1, ManyToMany.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getManyToMany_Fetch(), this.getFetchType(), "fetch", "LAZY", 0, 1, ManyToMany.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getManyToMany_MappedBy(), ecorePackage.getEString(), "mappedBy", null, 0, 1, ManyToMany.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getManyToMany_Indexed(), ecorePackage.getEBoolean(), "indexed", "true", 0, 1, ManyToMany.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(manyToOneEClass, ManyToOne.class, "ManyToOne", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getManyToOne_TargetEntity(), ecorePackage.getEString(), "targetEntity", null, 0, 1, ManyToOne.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getManyToOne_Cascade(), this.getCascadeType(), "cascade", null, 0, -1, ManyToOne.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getManyToOne_Fetch(), this.getFetchType(), "fetch", "EAGER", 0, 1, ManyToOne.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getManyToOne_Optional(), ecorePackage.getEBoolean(), "optional", "true", 0, 1, ManyToOne.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(mapKeyEClass, MapKey.class, "MapKey", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getMapKey_Name(), ecorePackage.getEString(), "name", null, 0, 1, MapKey.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(mappedSuperclassEClass, MappedSuperclass.class, "MappedSuperclass", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEClass(oneToManyEClass, OneToMany.class, "OneToMany", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getOneToMany_TargetEntity(), ecorePackage.getEString(), "targetEntity", null, 0, 1, OneToMany.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getOneToMany_Cascade(), this.getCascadeType(), "cascade", null, 0, -1, OneToMany.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getOneToMany_Fetch(), this.getFetchType(), "fetch", "LAZY", 0, 1, OneToMany.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getOneToMany_MappedBy(), ecorePackage.getEString(), "mappedBy", null, 0, 1, OneToMany.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getOneToMany_Indexed(), ecorePackage.getEBoolean(), "indexed", "true", 0, 1, OneToMany.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getOneToMany_Unique(), ecorePackage.getEBoolean(), "unique", "true", 0, 1, OneToMany.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(oneToOneEClass, OneToOne.class, "OneToOne", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getOneToOne_TargetEntity(), ecorePackage.getEString(), "targetEntity", null, 0, 1, OneToOne.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getOneToOne_Cascade(), this.getCascadeType(), "cascade", null, 0, -1, OneToOne.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getOneToOne_Fetch(), this.getFetchType(), "fetch", "EAGER", 0, 1, OneToOne.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getOneToOne_Optional(), ecorePackage.getEBoolean(), "optional", "true", 0, 1, OneToOne.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getOneToOne_MappedBy(), ecorePackage.getEString(), "mappedBy", null, 0, 1, OneToOne.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(orderByEClass, OrderBy.class, "OrderBy", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getOrderBy_Value(), ecorePackage.getEString(), "value", null, 0, 1, OrderBy.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(primaryKeyJoinColumnEClass, PrimaryKeyJoinColumn.class, "PrimaryKeyJoinColumn", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getPrimaryKeyJoinColumn_Name(), ecorePackage.getEString(), "name", null, 0, 1, PrimaryKeyJoinColumn.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getPrimaryKeyJoinColumn_ReferencedColumnName(), ecorePackage.getEString(), "referencedColumnName", null, 0, 1, PrimaryKeyJoinColumn.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getPrimaryKeyJoinColumn_ColumnDefinition(), ecorePackage.getEString(), "columnDefinition", null, 0, 1, PrimaryKeyJoinColumn.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(secondaryTableEClass, SecondaryTable.class, "SecondaryTable", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getSecondaryTable_Name(), ecorePackage.getEString(), "name", null, 1, 1, SecondaryTable.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getSecondaryTable_Catalog(), ecorePackage.getEString(), "catalog", null, 0, 1, SecondaryTable.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getSecondaryTable_Schema(), ecorePackage.getEString(), "schema", null, 0, 1, SecondaryTable.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEReference(getSecondaryTable_PkJoinColumns(), this.getPrimaryKeyJoinColumn(), null, "pkJoinColumns", null, 0, -1, SecondaryTable.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEReference(getSecondaryTable_UniqueConstraints(), this.getUniqueConstraint(), null, "uniqueConstraints", null, 0, -1, SecondaryTable.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(sequenceGeneratorEClass, SequenceGenerator.class, "SequenceGenerator", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getSequenceGenerator_Name(), ecorePackage.getEString(), "name", null, 1, 1, SequenceGenerator.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getSequenceGenerator_SequenceName(), ecorePackage.getEString(), "sequenceName", null, 0, 1, SequenceGenerator.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getSequenceGenerator_InitialValue(), ecorePackage.getEInt(), "initialValue", "1", 0, 1, SequenceGenerator.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getSequenceGenerator_AllocationSize(), ecorePackage.getEInt(), "allocationSize", "50", 0, 1, SequenceGenerator.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(tableEClass, Table.class, "Table", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getTable_Name(), ecorePackage.getEString(), "name", null, 0, 1, Table.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getTable_Catalog(), ecorePackage.getEString(), "catalog", null, 0, 1, Table.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getTable_Schema(), ecorePackage.getEString(), "schema", null, 0, 1, Table.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEReference(getTable_UniqueConstraints(), this.getUniqueConstraint(), null, "uniqueConstraints", null, 0, -1, Table.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(tableGeneratorEClass, TableGenerator.class, "TableGenerator", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getTableGenerator_Name(), ecorePackage.getEString(), "name", null, 1, 1, TableGenerator.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getTableGenerator_Table(), ecorePackage.getEString(), "table", null, 0, 1, TableGenerator.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getTableGenerator_Catalog(), ecorePackage.getEString(), "catalog", null, 0, 1, TableGenerator.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getTableGenerator_Schema(), ecorePackage.getEString(), "schema", null, 0, 1, TableGenerator.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getTableGenerator_PkColumnName(), ecorePackage.getEString(), "pkColumnName", null, 0, 1, TableGenerator.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getTableGenerator_ValueColumnName(), ecorePackage.getEString(), "valueColumnName", null, 0, 1, TableGenerator.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getTableGenerator_PkColumnValue(), ecorePackage.getEString(), "pkColumnValue", null, 0, 1, TableGenerator.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getTableGenerator_InitialValue(), ecorePackage.getEInt(), "initialValue", "0", 0, 1, TableGenerator.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getTableGenerator_AllocationSize(), ecorePackage.getEInt(), "allocationSize", "50", 0, 1, TableGenerator.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEReference(getTableGenerator_UniqueConstraints(), this.getUniqueConstraint(), null, "uniqueConstraints", null, 0, -1, TableGenerator.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(temporalEClass, Temporal.class, "Temporal", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getTemporal_Value(), this.getTemporalType(), "value", "", 0, 1, Temporal.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(transientEClass, Transient.class, "Transient", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEClass(uniqueConstraintEClass, UniqueConstraint.class, "UniqueConstraint", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getUniqueConstraint_ColumnNames(), ecorePackage.getEString(), "columnNames", null, 1, -1, UniqueConstraint.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(versionEClass, Version.class, "Version", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEClass(foreignKeyEClass, ForeignKey.class, "ForeignKey", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getForeignKey_Name(), ecorePackage.getEString(), "name", null, 0, 1, ForeignKey.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(sequenceStyleGeneratorEClass, SequenceStyleGenerator.class, "SequenceStyleGenerator", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getSequenceStyleGenerator_Name(), ecorePackage.getEString(), "name", null, 1, 1, SequenceStyleGenerator.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getSequenceStyleGenerator_SequenceName(), ecorePackage.getEString(), "sequenceName", null, 0, 1, SequenceStyleGenerator.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getSequenceStyleGenerator_InitialValue(), ecorePackage.getEInt(), "initialValue", "1", 0, 1, SequenceStyleGenerator.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getSequenceStyleGenerator_IncrementSize(), ecorePackage.getEInt(), "incrementSize", "50", 0, 1, SequenceStyleGenerator.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getSequenceStyleGenerator_Optimizer(), this.getOptimizerType(), "optimizer", "NONE", 0, 1, SequenceStyleGenerator.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(externalEClass, External.class, "External", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getExternal_Type(), ecorePackage.getEString(), "type", null, 0, 1, External.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
// Initialize enums and add enum literals
initEEnum(cascadeTypeEEnum, CascadeType.class, "CascadeType");
addEEnumLiteral(cascadeTypeEEnum, CascadeType.ALL);
addEEnumLiteral(cascadeTypeEEnum, CascadeType.PERSIST);
addEEnumLiteral(cascadeTypeEEnum, CascadeType.MERGE);
addEEnumLiteral(cascadeTypeEEnum, CascadeType.REMOVE);
addEEnumLiteral(cascadeTypeEEnum, CascadeType.REFRESH);
addEEnumLiteral(cascadeTypeEEnum, CascadeType.NONE);
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);
addEEnumLiteral(fetchTypeEEnum, FetchType.EXTRA);
initEEnum(generationTypeEEnum, GenerationType.class, "GenerationType");
addEEnumLiteral(generationTypeEEnum, GenerationType.TABLE);
addEEnumLiteral(generationTypeEEnum, GenerationType.SEQUENCE);
addEEnumLiteral(generationTypeEEnum, GenerationType.IDENTITY);
addEEnumLiteral(generationTypeEEnum, GenerationType.AUTO);
addEEnumLiteral(generationTypeEEnum, GenerationType.SEQUENCESTYLE);
initEEnum(inheritanceTypeEEnum, InheritanceType.class, "InheritanceType");
addEEnumLiteral(inheritanceTypeEEnum, InheritanceType.SINGLE_TABLE);
addEEnumLiteral(inheritanceTypeEEnum, InheritanceType.TABLE_PER_CLASS);
addEEnumLiteral(inheritanceTypeEEnum, InheritanceType.JOINED);
initEEnum(temporalTypeEEnum, TemporalType.class, "TemporalType");
addEEnumLiteral(temporalTypeEEnum, TemporalType.DATE);
addEEnumLiteral(temporalTypeEEnum, TemporalType.TIME);
addEEnumLiteral(temporalTypeEEnum, TemporalType.TIMESTAMP);
initEEnum(optimizerTypeEEnum, OptimizerType.class, "OptimizerType");
addEEnumLiteral(optimizerTypeEEnum, OptimizerType.NONE);
addEEnumLiteral(optimizerTypeEEnum, OptimizerType.HILO);
addEEnumLiteral(optimizerTypeEEnum, OptimizerType.POOLED);
// Create resource
createResource(eNS_URI);
// Create annotations
// http://www.eclipse.org/emf/2004/EmfaticAnnotationMap
createEmfaticAnnotationMapAnnotations();
// teneo.mapping.source
createTeneoAnnotations();
// http://www.eclipse.org/emf/2002/Ecore
createEcoreAnnotations();
// teneo/internal/PersistenceMapping
createPersistenceMappingAnnotations();
// teneo/internal/Target
createTargetAnnotations();
// teneo/PeristenceMapping
createPeristenceMappingAnnotations();
}
/**
* Initializes the annotations for
* <b>http://www.eclipse.org/emf/2004/EmfaticAnnotationMap</b>. <!--
* begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
protected void createEmfaticAnnotationMapAnnotations() {
String source = "http://www.eclipse.org/emf/2004/EmfaticAnnotationMap";
addAnnotation
(this,
source,
new String[] {
"Target", "teneo/internal/Target",
"Unsupported", "teneo/internal/Unsupported"
});
}
/**
* Initializes the annotations for <b>teneo.mapping.source</b>. <!--
* begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
protected void createTeneoAnnotations() {
String source = "teneo.mapping.source";
addAnnotation
(this,
source,
new String[] {
"0", "http://annotation.elver.org/",
"1", "http://ejb.elver.org/"
});
}
/**
* Initializes the annotations for <b>http://www.eclipse.org/emf/2002/Ecore</b>.
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
protected void createEcoreAnnotations() {
String source = "http://www.eclipse.org/emf/2002/Ecore";
addAnnotation
(pAnnotationEClass,
source,
new String[] {
"constraints", "CompatibleEModelElementType AnnotationIsSupported"
});
addAnnotation
(basicEClass,
source,
new String[] {
"constraints", "AllowedElementType"
});
addAnnotation
(columnEClass,
source,
new String[] {
"constraints", "ScalePrecisionForNumeric LengthForString"
});
addAnnotation
(discriminatorValueEClass,
source,
new String[] {
"constraints", "NoAbstract"
});
addAnnotation
(embeddableEClass,
source,
new String[] {
"constraints", "NoInterface"
});
addAnnotation
(embeddedEClass,
source,
new String[] {
"constraints", "EmbedByValue"
});
addAnnotation
(embeddedIdEClass,
source,
new String[] {
"constraints", "EmbedByValue"
});
addAnnotation
(entityEClass,
source,
new String[] {
"constraints", "NoInterface NoReservedName"
});
addAnnotation
(enumeratedEClass,
source,
new String[] {
"constraints", "AllowedElementType"
});
addAnnotation
(idEClass,
source,
new String[] {
"constraints", "AllowedElementType"
});
addAnnotation
(lobEClass,
source,
new String[] {
"constraints", "AllowedType"
});
addAnnotation
(manyToManyEClass,
source,
new String[] {
"constraints", "IsManyValued"
});
addAnnotation
(manyToOneEClass,
source,
new String[] {
"constraints", "IsNotManyValued"
});
addAnnotation
(mappedSuperclassEClass,
source,
new String[] {
"constraints", "NoInterface"
});
addAnnotation
(oneToManyEClass,
source,
new String[] {
"constraints", "IsManyValued"
});
addAnnotation
(oneToOneEClass,
source,
new String[] {
"constraints", "IsNotManyValued"
});
addAnnotation
(orderByEClass,
source,
new String[] {
"constraints", "WellFormedOrder IsManyValued"
});
addAnnotation
(temporalEClass,
source,
new String[] {
"constraints", "AllowedElementType"
});
addAnnotation
(versionEClass,
source,
new String[] {
"constraints", "AllowedElementType"
});
}
/**
* Initializes the annotations for <b>teneo/internal/Target</b>. <!--
* begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
protected void createTargetAnnotations() {
String source = "teneo/internal/Target";
addAnnotation
(attributeOverrideEClass,
source,
new String[] {
"0", "EClass",
"1", "EStructuralFeature"
});
addAnnotation
(associationOverrideEClass,
source,
new String[] {
"0", "EClass"
});
addAnnotation
(basicEClass,
source,
new String[] {
"0", "EAttribute"
});
addAnnotation
(columnEClass,
source,
new String[] {
"0", "EStructuralFeature"
});
addAnnotation
(discriminatorColumnEClass,
source,
new String[] {
"0", "EClass"
});
addAnnotation
(discriminatorValueEClass,
source,
new String[] {
"0", "EClass"
});
addAnnotation
(embeddableEClass,
source,
new String[] {
"0", "EClass"
});
addAnnotation
(embeddedEClass,
source,
new String[] {
"0", "EReference"
});
addAnnotation
(embeddedIdEClass,
source,
new String[] {
"0", "EReference"
});
addAnnotation
(entityEClass,
source,
new String[] {
"0", "EClass"
});
addAnnotation
(enumeratedEClass,
source,
new String[] {
"0", "EStructuralFeature"
});
addAnnotation
(generatedValueEClass,
source,
new String[] {
"0", "EAttribute"
});
addAnnotation
(idEClass,
source,
new String[] {
"0", "EAttribute"
});
addAnnotation
(idClassEClass,
source,
new String[] {
"0", "EClass"
});
addAnnotation
(inheritanceEClass,
source,
new String[] {
"0", "EClass"
});
addAnnotation
(joinColumnEClass,
source,
new String[] {
"0", "EClass",
"1", "EReference"
});
addAnnotation
(joinTableEClass,
source,
new String[] {
"0", "EStructuralFeature"
});
addAnnotation
(lobEClass,
source,
new String[] {
"0", "EAttribute"
});
addAnnotation
(manyToManyEClass,
source,
new String[] {
"0", "EReference"
});
addAnnotation
(manyToOneEClass,
source,
new String[] {
"0", "EReference"
});
addAnnotation
(mapKeyEClass,
source,
new String[] {
"0", "EStructuralFeature"
});
addAnnotation
(mappedSuperclassEClass,
source,
new String[] {
"0", "EClass"
});
addAnnotation
(oneToManyEClass,
source,
new String[] {
"0", "EStructuralFeature"
});
addAnnotation
(oneToOneEClass,
source,
new String[] {
"0", "EReference"
});
addAnnotation
(orderByEClass,
source,
new String[] {
"0", "EReference"
});
addAnnotation
(primaryKeyJoinColumnEClass,
source,
new String[] {
"0", "EClass",
"1", "EReference"
});
addAnnotation
(secondaryTableEClass,
source,
new String[] {
"0", "EClass"
});
addAnnotation
(sequenceGeneratorEClass,
source,
new String[] {
"0", "EClass",
"1", "EStructuralFeature",
"2", "EPackage"
});
addAnnotation
(tableEClass,
source,
new String[] {
"0", "EClass"
});
addAnnotation
(tableGeneratorEClass,
source,
new String[] {
"0", "EClass",
"1", "EStructuralFeature",
"2", "EPackage"
});
addAnnotation
(temporalEClass,
source,
new String[] {
"0", "EAttribute"
});
addAnnotation
(transientEClass,
source,
new String[] {
"0", "EModelElement"
});
addAnnotation
(versionEClass,
source,
new String[] {
"0", "EAttribute"
});
addAnnotation
(foreignKeyEClass,
source,
new String[] {
"0", "EStructuralFeature"
});
addAnnotation
(sequenceStyleGeneratorEClass,
source,
new String[] {
"0", "EClass",
"1", "EStructuralFeature",
"2", "EPackage"
});
addAnnotation
(externalEClass,
source,
new String[] {
"0", "EReference"
});
}
/**
* Initializes the annotations for <b>teneo/internal/PersistenceMapping</b>.
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
protected void createPersistenceMappingAnnotations() {
String source = "teneo/internal/PersistenceMapping";
addAnnotation
(getPAnnotation_EModelElement(),
source,
new String[] {
"ignore", "true"
});
}
/**
* Initializes the annotations for <b>teneo/PeristenceMapping</b>. <!--
* begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
protected void createPeristenceMappingAnnotations() {
String source = "teneo/PeristenceMapping";
addAnnotation
(embeddableEClass,
source,
new String[] {
"ignore", "true"
});
}
/**
* Compute the list of targets starting from the
* <code>java.lang.annotation.Target</code> annotation.
*/
public EClass[] getTargets(EClass pAnnotationEClass) {
// TODO cache result
EClass[] result = null;
if (getPAnnotation().isSuperTypeOf(pAnnotationEClass)) {
EAnnotation targetAnnotation = pAnnotationEClass
.getEAnnotation(TARGET_ANNOTATION_SOURCE);
Collection<String> targets = Collections.emptyList();
if (targetAnnotation != null) {
targets = targetAnnotation.getDetails().values();
}
result = new EClass[targets.size()];
int j = 0;
for (String target : targets) {
EClassifier eClassifier = EcorePackage.eINSTANCE
.getEClassifier(target);
result[j] = eClassifier instanceof EClass ? (EClass) eClassifier
: null;
}
}
return result;
}
/**
* Compute if the given targetElementEClass is a target for the pAnnotation
* EClass basing on the <code>java.lang.annotation.Target</code>
* annotation.
*/
public boolean isTarget(EClass pAnnotationEClass, EClass targetElementEClass) {
boolean hasTarget = false;
if (getPAnnotation().isSuperTypeOf(pAnnotationEClass)) {
EClass[] admissibleTargets = getTargets(pAnnotationEClass);
for (int i = 0; !hasTarget && i < admissibleTargets.length; i++)
hasTarget |= admissibleTargets[i]
.isSuperTypeOf(targetElementEClass);
}
return hasTarget;
}
} // PannotationPackageImpl