428 lines
12 KiB
Java
428 lines
12 KiB
Java
/**
|
|
* generated by Xtext 2.23.0
|
|
*/
|
|
package fr.n7.pDL1.impl;
|
|
|
|
import fr.n7.pDL1.PDL1Factory;
|
|
import fr.n7.pDL1.PDL1Package;
|
|
import fr.n7.pDL1.ProcessElement;
|
|
import fr.n7.pDL1.WorkDefinition;
|
|
import fr.n7.pDL1.WorkDefinitionList;
|
|
import fr.n7.pDL1.WorkSequence;
|
|
import fr.n7.pDL1.WorkSequenceList;
|
|
import fr.n7.pDL1.WorkSequenceType;
|
|
|
|
import org.eclipse.emf.ecore.EAttribute;
|
|
import org.eclipse.emf.ecore.EClass;
|
|
import org.eclipse.emf.ecore.EEnum;
|
|
import org.eclipse.emf.ecore.EPackage;
|
|
import org.eclipse.emf.ecore.EReference;
|
|
|
|
import org.eclipse.emf.ecore.impl.EPackageImpl;
|
|
|
|
/**
|
|
* <!-- begin-user-doc -->
|
|
* An implementation of the model <b>Package</b>.
|
|
* <!-- end-user-doc -->
|
|
* @generated
|
|
*/
|
|
public class PDL1PackageImpl extends EPackageImpl implements PDL1Package
|
|
{
|
|
/**
|
|
* <!-- begin-user-doc -->
|
|
* <!-- end-user-doc -->
|
|
* @generated
|
|
*/
|
|
private EClass processEClass = null;
|
|
|
|
/**
|
|
* <!-- begin-user-doc -->
|
|
* <!-- end-user-doc -->
|
|
* @generated
|
|
*/
|
|
private EClass processElementEClass = null;
|
|
|
|
/**
|
|
* <!-- begin-user-doc -->
|
|
* <!-- end-user-doc -->
|
|
* @generated
|
|
*/
|
|
private EClass workDefinitionListEClass = null;
|
|
|
|
/**
|
|
* <!-- begin-user-doc -->
|
|
* <!-- end-user-doc -->
|
|
* @generated
|
|
*/
|
|
private EClass workDefinitionEClass = null;
|
|
|
|
/**
|
|
* <!-- begin-user-doc -->
|
|
* <!-- end-user-doc -->
|
|
* @generated
|
|
*/
|
|
private EClass workSequenceListEClass = null;
|
|
|
|
/**
|
|
* <!-- begin-user-doc -->
|
|
* <!-- end-user-doc -->
|
|
* @generated
|
|
*/
|
|
private EClass workSequenceEClass = null;
|
|
|
|
/**
|
|
* <!-- begin-user-doc -->
|
|
* <!-- end-user-doc -->
|
|
* @generated
|
|
*/
|
|
private EEnum workSequenceTypeEEnum = 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 fr.n7.pDL1.PDL1Package#eNS_URI
|
|
* @see #init()
|
|
* @generated
|
|
*/
|
|
private PDL1PackageImpl()
|
|
{
|
|
super(eNS_URI, PDL1Factory.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.
|
|
*
|
|
* <p>This method is used to initialize {@link PDL1Package#eINSTANCE} when that field is accessed.
|
|
* Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
|
|
* <!-- begin-user-doc -->
|
|
* <!-- end-user-doc -->
|
|
* @see #eNS_URI
|
|
* @see #createPackageContents()
|
|
* @see #initializePackageContents()
|
|
* @generated
|
|
*/
|
|
public static PDL1Package init()
|
|
{
|
|
if (isInited) return (PDL1Package)EPackage.Registry.INSTANCE.getEPackage(PDL1Package.eNS_URI);
|
|
|
|
// Obtain or create and register package
|
|
Object registeredPDL1Package = EPackage.Registry.INSTANCE.get(eNS_URI);
|
|
PDL1PackageImpl thePDL1Package = registeredPDL1Package instanceof PDL1PackageImpl ? (PDL1PackageImpl)registeredPDL1Package : new PDL1PackageImpl();
|
|
|
|
isInited = true;
|
|
|
|
// Create package meta-data objects
|
|
thePDL1Package.createPackageContents();
|
|
|
|
// Initialize created meta-data
|
|
thePDL1Package.initializePackageContents();
|
|
|
|
// Mark meta-data to indicate it can't be changed
|
|
thePDL1Package.freeze();
|
|
|
|
// Update the registry and return the package
|
|
EPackage.Registry.INSTANCE.put(PDL1Package.eNS_URI, thePDL1Package);
|
|
return thePDL1Package;
|
|
}
|
|
|
|
/**
|
|
* <!-- begin-user-doc -->
|
|
* <!-- end-user-doc -->
|
|
* @generated
|
|
*/
|
|
@Override
|
|
public EClass getProcess()
|
|
{
|
|
return processEClass;
|
|
}
|
|
|
|
/**
|
|
* <!-- begin-user-doc -->
|
|
* <!-- end-user-doc -->
|
|
* @generated
|
|
*/
|
|
@Override
|
|
public EAttribute getProcess_Name()
|
|
{
|
|
return (EAttribute)processEClass.getEStructuralFeatures().get(0);
|
|
}
|
|
|
|
/**
|
|
* <!-- begin-user-doc -->
|
|
* <!-- end-user-doc -->
|
|
* @generated
|
|
*/
|
|
@Override
|
|
public EReference getProcess_ProcessElements()
|
|
{
|
|
return (EReference)processEClass.getEStructuralFeatures().get(1);
|
|
}
|
|
|
|
/**
|
|
* <!-- begin-user-doc -->
|
|
* <!-- end-user-doc -->
|
|
* @generated
|
|
*/
|
|
@Override
|
|
public EClass getProcessElement()
|
|
{
|
|
return processElementEClass;
|
|
}
|
|
|
|
/**
|
|
* <!-- begin-user-doc -->
|
|
* <!-- end-user-doc -->
|
|
* @generated
|
|
*/
|
|
@Override
|
|
public EClass getWorkDefinitionList()
|
|
{
|
|
return workDefinitionListEClass;
|
|
}
|
|
|
|
/**
|
|
* <!-- begin-user-doc -->
|
|
* <!-- end-user-doc -->
|
|
* @generated
|
|
*/
|
|
@Override
|
|
public EReference getWorkDefinitionList_WorkDefinition()
|
|
{
|
|
return (EReference)workDefinitionListEClass.getEStructuralFeatures().get(0);
|
|
}
|
|
|
|
/**
|
|
* <!-- begin-user-doc -->
|
|
* <!-- end-user-doc -->
|
|
* @generated
|
|
*/
|
|
@Override
|
|
public EClass getWorkDefinition()
|
|
{
|
|
return workDefinitionEClass;
|
|
}
|
|
|
|
/**
|
|
* <!-- begin-user-doc -->
|
|
* <!-- end-user-doc -->
|
|
* @generated
|
|
*/
|
|
@Override
|
|
public EAttribute getWorkDefinition_Name()
|
|
{
|
|
return (EAttribute)workDefinitionEClass.getEStructuralFeatures().get(0);
|
|
}
|
|
|
|
/**
|
|
* <!-- begin-user-doc -->
|
|
* <!-- end-user-doc -->
|
|
* @generated
|
|
*/
|
|
@Override
|
|
public EClass getWorkSequenceList()
|
|
{
|
|
return workSequenceListEClass;
|
|
}
|
|
|
|
/**
|
|
* <!-- begin-user-doc -->
|
|
* <!-- end-user-doc -->
|
|
* @generated
|
|
*/
|
|
@Override
|
|
public EReference getWorkSequenceList_WorkSequence()
|
|
{
|
|
return (EReference)workSequenceListEClass.getEStructuralFeatures().get(0);
|
|
}
|
|
|
|
/**
|
|
* <!-- begin-user-doc -->
|
|
* <!-- end-user-doc -->
|
|
* @generated
|
|
*/
|
|
@Override
|
|
public EClass getWorkSequence()
|
|
{
|
|
return workSequenceEClass;
|
|
}
|
|
|
|
/**
|
|
* <!-- begin-user-doc -->
|
|
* <!-- end-user-doc -->
|
|
* @generated
|
|
*/
|
|
@Override
|
|
public EReference getWorkSequence_Predecessor()
|
|
{
|
|
return (EReference)workSequenceEClass.getEStructuralFeatures().get(0);
|
|
}
|
|
|
|
/**
|
|
* <!-- begin-user-doc -->
|
|
* <!-- end-user-doc -->
|
|
* @generated
|
|
*/
|
|
@Override
|
|
public EAttribute getWorkSequence_LinkType()
|
|
{
|
|
return (EAttribute)workSequenceEClass.getEStructuralFeatures().get(1);
|
|
}
|
|
|
|
/**
|
|
* <!-- begin-user-doc -->
|
|
* <!-- end-user-doc -->
|
|
* @generated
|
|
*/
|
|
@Override
|
|
public EReference getWorkSequence_Successor()
|
|
{
|
|
return (EReference)workSequenceEClass.getEStructuralFeatures().get(2);
|
|
}
|
|
|
|
/**
|
|
* <!-- begin-user-doc -->
|
|
* <!-- end-user-doc -->
|
|
* @generated
|
|
*/
|
|
@Override
|
|
public EEnum getWorkSequenceType()
|
|
{
|
|
return workSequenceTypeEEnum;
|
|
}
|
|
|
|
/**
|
|
* <!-- begin-user-doc -->
|
|
* <!-- end-user-doc -->
|
|
* @generated
|
|
*/
|
|
@Override
|
|
public PDL1Factory getPDL1Factory()
|
|
{
|
|
return (PDL1Factory)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
|
|
processEClass = createEClass(PROCESS);
|
|
createEAttribute(processEClass, PROCESS__NAME);
|
|
createEReference(processEClass, PROCESS__PROCESS_ELEMENTS);
|
|
|
|
processElementEClass = createEClass(PROCESS_ELEMENT);
|
|
|
|
workDefinitionListEClass = createEClass(WORK_DEFINITION_LIST);
|
|
createEReference(workDefinitionListEClass, WORK_DEFINITION_LIST__WORK_DEFINITION);
|
|
|
|
workDefinitionEClass = createEClass(WORK_DEFINITION);
|
|
createEAttribute(workDefinitionEClass, WORK_DEFINITION__NAME);
|
|
|
|
workSequenceListEClass = createEClass(WORK_SEQUENCE_LIST);
|
|
createEReference(workSequenceListEClass, WORK_SEQUENCE_LIST__WORK_SEQUENCE);
|
|
|
|
workSequenceEClass = createEClass(WORK_SEQUENCE);
|
|
createEReference(workSequenceEClass, WORK_SEQUENCE__PREDECESSOR);
|
|
createEAttribute(workSequenceEClass, WORK_SEQUENCE__LINK_TYPE);
|
|
createEReference(workSequenceEClass, WORK_SEQUENCE__SUCCESSOR);
|
|
|
|
// Create enums
|
|
workSequenceTypeEEnum = createEEnum(WORK_SEQUENCE_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
|
|
workDefinitionListEClass.getESuperTypes().add(this.getProcessElement());
|
|
workSequenceListEClass.getESuperTypes().add(this.getProcessElement());
|
|
|
|
// Initialize classes and features; add operations and parameters
|
|
initEClass(processEClass, fr.n7.pDL1.Process.class, "Process", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
|
|
initEAttribute(getProcess_Name(), ecorePackage.getEString(), "name", null, 0, 1, fr.n7.pDL1.Process.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
|
|
initEReference(getProcess_ProcessElements(), this.getProcessElement(), null, "processElements", null, 0, -1, fr.n7.pDL1.Process.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
|
|
|
|
initEClass(processElementEClass, ProcessElement.class, "ProcessElement", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
|
|
|
|
initEClass(workDefinitionListEClass, WorkDefinitionList.class, "WorkDefinitionList", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
|
|
initEReference(getWorkDefinitionList_WorkDefinition(), this.getWorkDefinition(), null, "WorkDefinition", null, 0, -1, WorkDefinitionList.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
|
|
|
|
initEClass(workDefinitionEClass, WorkDefinition.class, "WorkDefinition", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
|
|
initEAttribute(getWorkDefinition_Name(), ecorePackage.getEString(), "name", null, 0, 1, WorkDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
|
|
|
|
initEClass(workSequenceListEClass, WorkSequenceList.class, "WorkSequenceList", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
|
|
initEReference(getWorkSequenceList_WorkSequence(), this.getWorkSequence(), null, "WorkSequence", null, 0, -1, WorkSequenceList.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
|
|
|
|
initEClass(workSequenceEClass, WorkSequence.class, "WorkSequence", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
|
|
initEReference(getWorkSequence_Predecessor(), this.getWorkDefinition(), null, "predecessor", null, 0, 1, WorkSequence.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
|
|
initEAttribute(getWorkSequence_LinkType(), this.getWorkSequenceType(), "linkType", null, 0, 1, WorkSequence.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
|
|
initEReference(getWorkSequence_Successor(), this.getWorkDefinition(), null, "successor", null, 0, 1, WorkSequence.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
|
|
|
|
// Initialize enums and add enum literals
|
|
initEEnum(workSequenceTypeEEnum, WorkSequenceType.class, "WorkSequenceType");
|
|
addEEnumLiteral(workSequenceTypeEEnum, WorkSequenceType.START2START);
|
|
addEEnumLiteral(workSequenceTypeEEnum, WorkSequenceType.FINISH2START);
|
|
addEEnumLiteral(workSequenceTypeEEnum, WorkSequenceType.START2FINISH);
|
|
addEEnumLiteral(workSequenceTypeEEnum, WorkSequenceType.FINISH2FINISH);
|
|
|
|
// Create resource
|
|
createResource(eNS_URI);
|
|
}
|
|
|
|
} //PDL1PackageImpl
|