| <?xml version="1.0" encoding="UTF-8"?> |
| <ecore:EPackage xmi:version="2.0" |
| xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" |
| xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="fcore" |
| nsURI="http://www.eclipse.org/egf/1.0.0/fcore" nsPrefix="fcore"> |
| <eClassifiers xsi:type="ecore:EClass" name="ModelElement" abstract="true"> |
| <eOperations name="getActivities"> |
| <eGenericType eClassifier="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EEList"> |
| <eTypeArguments eClassifier="#//Activity"/> |
| </eGenericType> |
| </eOperations> |
| <eOperations name="getResources"> |
| <eGenericType eClassifier="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EEList"> |
| <eTypeArguments eClassifier="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EResource"/> |
| </eGenericType> |
| </eOperations> |
| <eStructuralFeatures xsi:type="ecore:EAttribute" name="iD" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EString" |
| changeable="false" volatile="true" transient="true" unsettable="true" derived="true"/> |
| <eStructuralFeatures xsi:type="ecore:EAttribute" name="description" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" name="NamedModelElement" abstract="true" eSuperTypes="#//ModelElement"> |
| <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" name="Activity" abstract="true" eSuperTypes="#//NamedModelElement"> |
| <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore"> |
| <details key="constraints" value="PlatformFcore MandatoryName ActivityCycle"/> |
| </eAnnotations> |
| <eOperations name="getActivities"> |
| <eGenericType eClassifier="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EEList"> |
| <eTypeArguments eClassifier="#//Activity"/> |
| </eGenericType> |
| </eOperations> |
| <eOperations name="getContracts" upperBound="-1" eType="#//Contract"/> |
| <eOperations name="getContracts" upperBound="-1" eType="#//Contract"> |
| <eParameters name="type" eType="ecore:EClass Types.ecore#//Type"/> |
| </eOperations> |
| <eOperations name="getContracts" upperBound="-1" eType="#//Contract"> |
| <eParameters name="mode" eType="#//ContractMode"/> |
| </eOperations> |
| <eOperations name="getContracts" upperBound="-1" eType="#//Contract"> |
| <eParameters name="type" eType="ecore:EClass Types.ecore#//Type"/> |
| <eParameters name="mode" eType="#//ContractMode"/> |
| </eOperations> |
| <eOperations name="getContract" eType="#//Contract"> |
| <eParameters name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> |
| </eOperations> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="contractContainer" eType="#//ContractContainer" |
| containment="true" resolveProxies="false" eOpposite="#//ContractContainer/activity"/> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" name="Contract" eSuperTypes="#//NamedModelElement"> |
| <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore"> |
| <details key="constraints" value="UniqueName UselessMandatoryMode"/> |
| </eAnnotations> |
| <eOperations name="getActivity" lowerBound="1" eType="#//Activity"/> |
| <eOperations name="getContracts" upperBound="-1" eType="#//Contract"/> |
| <eOperations name="getContracts" upperBound="-1" eType="#//Contract"> |
| <eParameters name="type" eType="ecore:EClass Types.ecore#//Type"/> |
| </eOperations> |
| <eOperations name="getContracts" upperBound="-1" eType="#//Contract"> |
| <eParameters name="mode" eType="#//ContractMode"/> |
| </eOperations> |
| <eOperations name="getContracts" upperBound="-1" eType="#//Contract"> |
| <eParameters name="type" eType="ecore:EClass Types.ecore#//Type"/> |
| <eParameters name="mode" eType="#//ContractMode"/> |
| </eOperations> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="contractContainer" lowerBound="1" |
| eType="#//ContractContainer" eOpposite="#//ContractContainer/contracts"/> |
| <eStructuralFeatures xsi:type="ecore:EAttribute" name="mandatory" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EBoolean"/> |
| <eStructuralFeatures xsi:type="ecore:EAttribute" name="mode" eType="#//ContractMode"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="type" lowerBound="1" eType="ecore:EClass Types.ecore#//Type" |
| containment="true" resolveProxies="false"/> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" name="FactoryComponent" eSuperTypes="#//Activity"> |
| <eOperations name="getActivities"> |
| <eGenericType eClassifier="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EEList"> |
| <eTypeArguments eClassifier="#//Activity"/> |
| </eGenericType> |
| </eOperations> |
| <eOperations name="getResources"> |
| <eGenericType eClassifier="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EEList"> |
| <eTypeArguments eClassifier="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EResource"/> |
| </eGenericType> |
| </eOperations> |
| <eOperations name="getInvocationContracts" upperBound="-1" eType="#//InvocationContract"/> |
| <eOperations name="getInvocationContracts" upperBound="-1" eType="#//InvocationContract"> |
| <eParameters name="type" eType="ecore:EClass Types.ecore#//Type"/> |
| </eOperations> |
| <eOperations name="getInvocationContracts" upperBound="-1" eType="#//InvocationContract"> |
| <eParameters name="mode" eType="#//ContractMode"/> |
| </eOperations> |
| <eOperations name="getInvocationContracts" upperBound="-1" eType="#//InvocationContract"> |
| <eParameters name="type" eType="ecore:EClass Types.ecore#//Type"/> |
| <eParameters name="mode" eType="#//ContractMode"/> |
| </eOperations> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="viewpointContainer" eType="#//ViewpointContainer" |
| containment="true" resolveProxies="false" eOpposite="#//ViewpointContainer/factoryComponent"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="orchestration" eType="#//Orchestration" |
| containment="true" resolveProxies="false" eOpposite="#//Orchestration/factoryComponent"/> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" name="ContractContainer" eSuperTypes="#//ModelElement"> |
| <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore"> |
| <details key="constraints" value="FactoryComponentContract"/> |
| </eAnnotations> |
| <eOperations name="getContracts" upperBound="-1" eType="#//Contract"> |
| <eParameters name="type" eType="ecore:EClass Types.ecore#//Type"/> |
| </eOperations> |
| <eOperations name="getContracts" upperBound="-1" eType="#//Contract"> |
| <eParameters name="mode" eType="#//ContractMode"/> |
| </eOperations> |
| <eOperations name="getContracts" upperBound="-1" eType="#//Contract"> |
| <eParameters name="type" eType="ecore:EClass Types.ecore#//Type"/> |
| <eParameters name="mode" eType="#//ContractMode"/> |
| </eOperations> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="activity" lowerBound="1" |
| eType="#//Activity" resolveProxies="false" eOpposite="#//Activity/contractContainer"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="contracts" lowerBound="1" |
| upperBound="-1" eType="#//Contract" containment="true" resolveProxies="false" |
| eOpposite="#//Contract/contractContainer"/> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" name="FactoryComponentContract" eSuperTypes="#//Contract"> |
| <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore"> |
| <details key="constraints" value="UselessFactoryComponentContract OutModeIsRestricted"/> |
| </eAnnotations> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="invocationContracts" upperBound="-1" |
| eType="#//InvocationContract" resolveProxies="false" eOpposite="#//InvocationContract/factoryComponentContract"/> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" name="ViewpointContainer" eSuperTypes="#//ModelElement"> |
| <eOperations name="getViewpoint" eType="#//Viewpoint"> |
| <eParameters name="clazz"> |
| <eGenericType eClassifier="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EJavaClass"> |
| <eTypeArguments/> |
| </eGenericType> |
| </eParameters> |
| </eOperations> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="factoryComponent" lowerBound="1" |
| eType="#//FactoryComponent" resolveProxies="false" eOpposite="#//FactoryComponent/viewpointContainer"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="viewpoints" upperBound="-1" |
| eType="#//Viewpoint" containment="true" resolveProxies="false" eOpposite="#//Viewpoint/viewpointContainer"/> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" name="Viewpoint" abstract="true" eSuperTypes="#//ModelElement"> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="viewpointContainer" lowerBound="1" |
| eType="#//ViewpointContainer" resolveProxies="false" eOpposite="#//ViewpointContainer/viewpoints"/> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" name="Orchestration" abstract="true" eSuperTypes="#//ModelElement"> |
| <eOperations name="getInvocations" upperBound="-1"> |
| <eGenericType eTypeParameter="#//Orchestration/getInvocations/T"/> |
| <eTypeParameters name="T"> |
| <eBounds eClassifier="#//Invocation"/> |
| </eTypeParameters> |
| </eOperations> |
| <eOperations name="getOrchestrationParameters" upperBound="-1" eType="#//OrchestrationParameter"/> |
| <eOperations name="getOrchestrationParameters" upperBound="-1" eType="#//OrchestrationParameter"> |
| <eParameters name="type" eType="ecore:EClass Types.ecore#//Type"/> |
| </eOperations> |
| <eOperations name="getInvocationContracts" upperBound="-1" eType="#//InvocationContract"/> |
| <eOperations name="getInvocationContracts" upperBound="-1" eType="#//InvocationContract"> |
| <eParameters name="type" eType="ecore:EClass Types.ecore#//Type"/> |
| </eOperations> |
| <eOperations name="getInvocationContracts" upperBound="-1" eType="#//InvocationContract"> |
| <eParameters name="mode" eType="#//ContractMode"/> |
| </eOperations> |
| <eOperations name="getInvocationContracts" upperBound="-1" eType="#//InvocationContract"> |
| <eParameters name="type" eType="ecore:EClass Types.ecore#//Type"/> |
| <eParameters name="mode" eType="#//ContractMode"/> |
| </eOperations> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="factoryComponent" lowerBound="1" |
| eType="#//FactoryComponent" resolveProxies="false" eOpposite="#//FactoryComponent/orchestration"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="orchestrationParameterContainer" |
| eType="#//OrchestrationParameterContainer" containment="true" resolveProxies="false" |
| eOpposite="#//OrchestrationParameterContainer/orchestration"/> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" name="OrchestrationParameterContainer" eSuperTypes="#//ModelElement"> |
| <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore"> |
| <details key="constraints" value="UselessOrchestrationParameterContainer"/> |
| </eAnnotations> |
| <eOperations name="getFactoryComponent" lowerBound="1" eType="#//FactoryComponent"/> |
| <eOperations name="getOrchestrationParameters" upperBound="-1" eType="#//OrchestrationParameter"> |
| <eParameters name="type" eType="ecore:EClass Types.ecore#//Type"/> |
| </eOperations> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="orchestration" lowerBound="1" |
| eType="#//Orchestration" eOpposite="#//Orchestration/orchestrationParameterContainer"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="orchestrationParameters" |
| upperBound="-1" eType="#//OrchestrationParameter" containment="true" eOpposite="#//OrchestrationParameter/orchestrationParameterContainer"/> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" name="OrchestrationParameter" eSuperTypes="#//NamedModelElement"> |
| <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore"> |
| <details key="constraints" value="UselessOrchestrationParameter"/> |
| </eAnnotations> |
| <eOperations name="getFactoryComponent" lowerBound="1" eType="#//FactoryComponent"/> |
| <eOperations name="getOrchestration" lowerBound="1" eType="#//Orchestration"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="orchestrationParameterContainer" |
| lowerBound="1" eType="#//OrchestrationParameterContainer" resolveProxies="false" |
| eOpposite="#//OrchestrationParameterContainer/orchestrationParameters"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="invocationContracts" upperBound="-1" |
| eType="#//InvocationContract" resolveProxies="false" eOpposite="#//InvocationContract/orchestrationParameter"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="type" lowerBound="1" eType="ecore:EClass Types.ecore#//Type" |
| containment="true" resolveProxies="false"/> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" name="Invocation" abstract="true" eSuperTypes="#//NamedModelElement"> |
| <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore"> |
| <details key="constraints" value="MandatoryInvokedContract"/> |
| </eAnnotations> |
| <eOperations name="getFactoryComponent" lowerBound="1" eType="#//FactoryComponent"/> |
| <eOperations name="getInvocationContracts" upperBound="-1" eType="#//InvocationContract"/> |
| <eOperations name="getInvocationContracts" upperBound="-1" eType="#//InvocationContract"> |
| <eParameters name="type" eType="ecore:EClass Types.ecore#//Type"/> |
| </eOperations> |
| <eOperations name="getInvocationContracts" upperBound="-1" eType="#//InvocationContract"> |
| <eParameters name="mode" eType="#//ContractMode"/> |
| </eOperations> |
| <eOperations name="getInvocationContracts" upperBound="-1" eType="#//InvocationContract"> |
| <eParameters name="type" eType="ecore:EClass Types.ecore#//Type"/> |
| <eParameters name="mode" eType="#//ContractMode"/> |
| </eOperations> |
| <eOperations name="getInvokedContracts" upperBound="-1" eType="#//Contract"/> |
| <eOperations name="getInvokedContracts" upperBound="-1" eType="#//Contract"> |
| <eParameters name="type" eType="ecore:EClass Types.ecore#//Type"/> |
| </eOperations> |
| <eOperations name="getInvokedContracts" upperBound="-1" eType="#//Contract"> |
| <eParameters name="mode" eType="#//ContractMode"/> |
| </eOperations> |
| <eOperations name="getInvokedContracts" upperBound="-1" eType="#//Contract"> |
| <eParameters name="type" eType="ecore:EClass Types.ecore#//Type"/> |
| <eParameters name="mode" eType="#//ContractMode"/> |
| </eOperations> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="invocationContractContainer" |
| eType="#//InvocationContractContainer" containment="true" resolveProxies="false" |
| eOpposite="#//InvocationContractContainer/invocation"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="invokedActivity" lowerBound="1" |
| eType="#//Activity"/> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" name="InvocationContractContainer" eSuperTypes="#//ModelElement"> |
| <eOperations name="getFactoryComponent" lowerBound="1" eType="#//FactoryComponent"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="invocation" lowerBound="1" |
| eType="#//Invocation" resolveProxies="false" eOpposite="#//Invocation/invocationContractContainer"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="invocationContracts" upperBound="-1" |
| eType="#//InvocationContract" containment="true" resolveProxies="false" eOpposite="#//InvocationContract/invocationContractContainer"/> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" name="InvocationContract" eSuperTypes="#//ModelElement"> |
| <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore"> |
| <details key="constraints" value="ValidInvokedContract ValidInvokedContractType ValidFactoryComponentContract ValidFactoryComponentContractType ValidOrchestrationParameter ValidOrchestrationParameterType ValidSourceInvocationContract ValidSourceInvocationContractType UselessTypeValue UselessInvocationContract"/> |
| </eAnnotations> |
| <eOperations name="getFactoryComponent" lowerBound="1" eType="#//FactoryComponent"/> |
| <eOperations name="getInvocation" lowerBound="1" eType="#//Invocation"/> |
| <eOperations name="getInvokedMode" eType="#//ContractMode"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="invocationContractContainer" |
| lowerBound="1" eType="#//InvocationContractContainer" resolveProxies="false" |
| eOpposite="#//InvocationContractContainer/invocationContracts"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="factoryComponentContract" |
| eType="#//FactoryComponentContract" resolveProxies="false" eOpposite="#//FactoryComponentContract/invocationContracts"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="orchestrationParameter" |
| eType="#//OrchestrationParameter" resolveProxies="false" eOpposite="#//OrchestrationParameter/invocationContracts"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="sourceInvocationContract" |
| eType="#//InvocationContract" resolveProxies="false" eOpposite="#//InvocationContract/targetInvocationContract"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="targetInvocationContract" |
| upperBound="-1" eType="#//InvocationContract" resolveProxies="false" eOpposite="#//InvocationContract/sourceInvocationContract"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="invokedContract" lowerBound="1" |
| eType="#//Contract"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="type" eType="ecore:EClass Types.ecore#//Type" |
| containment="true" resolveProxies="false"/> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EEnum" name="ContractMode"> |
| <eLiterals name="In" literal="In"/> |
| <eLiterals name="Out" value="1" literal="Out"/> |
| <eLiterals name="In_Out" value="2"/> |
| </eClassifiers> |
| </ecore:EPackage> |