blob: 3e1d6d9738dbef62af9780fe3567972797cb18f2 [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<!--
/*******************************************************************************
* <copyright>
*
* Copyright (c) 2013, 2013 SAP AG.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* SAP AG - initial API, implementation and documentation
*
* </copyright>
*
*******************************************************************************/
-->
<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="mm" nsURI="http://fmc.eclipse.org/0.10.0" nsPrefix="fmc">
<eClassifiers xsi:type="ecore:EClass" name="Agent" eSuperTypes="#//FMCNode">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Agents are active components"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="accessConnections" upperBound="-1"
eType="#//Access" eOpposite="#//Access/agent"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="human" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EBoolean"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="sourceChannels" upperBound="-1"
eType="#//Channel" eOpposite="#//Channel/source"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="targetChannels" upperBound="-1"
eType="#//Channel" eOpposite="#//Channel/target"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Channel" eSuperTypes="#//FMCConnection">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Channel contains transient data"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="channelType" lowerBound="1"
eType="#//RequestDirection"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="source" lowerBound="1"
eType="#//Agent" eOpposite="#//Agent/sourceChannels"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="target" lowerBound="1"
eType="#//Agent" eOpposite="#//Agent/targetChannels"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="dataflowDirection" eType="#//DataflowDirection"/>
<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="Storage" eSuperTypes="#//AccessTarget">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Storage contains persistent data"/>
</eAnnotations>
<eOperations name="isShared" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="FMCNode" abstract="true" eSuperTypes="#//FMCElement">
<eOperations name="getAllConnections" ordered="false" upperBound="-1" eType="#//FMCConnection"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="contains" upperBound="-1"
eType="#//FMCNode" containment="true" eOpposite="#//FMCNode/container"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="container" eType="#//FMCNode"
eOpposite="#//FMCNode/contains"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="multiplicity" eType="#//MultiplicityType"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="nextElement" eType="#//FMCNode"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="FMCConnection" abstract="true" eSuperTypes="#//FMCElement"/>
<eClassifiers xsi:type="ecore:EClass" name="Access" eSuperTypes="#//FMCConnection">
<eStructuralFeatures xsi:type="ecore:EReference" name="agent" lowerBound="1" eType="#//Agent"
eOpposite="#//Agent/accessConnections"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="type" lowerBound="1" eType="#//AccessType"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="target" lowerBound="1"
eType="#//AccessTarget" eOpposite="#//AccessTarget/connections"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" name="AccessType">
<eLiterals name="UNSPECIFIED"/>
<eLiterals name="READ" value="1"/>
<eLiterals name="WRITE" value="2"/>
<eLiterals name="RW" value="3"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="FMCModel">
<eOperations name="getAllFMCNodes" upperBound="-1" eType="#//FMCNode"/>
<eOperations name="getAllFMCConnections" upperBound="-1" eType="#//FMCConnection"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="nodes" upperBound="-1"
eType="#//FMCNode" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="connections" upperBound="-1"
eType="#//FMCConnection" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="comments" upperBound="-1"
eType="#//Comment" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="profileId" upperBound="-1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" name="RequestDirection">
<eLiterals name="UNSPECIFIED"/>
<eLiterals name="REQUEST" value="1"/>
<eLiterals name="RESPONSE" value="2"/>
<eLiterals name="REQUESTRESPONSE" value="3"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="StructureVariance" eSuperTypes="#//AccessTarget"/>
<eClassifiers xsi:type="ecore:EClass" name="Metadata">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="creator" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="changer" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="creationdate" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EDate"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="lastchange" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EDate"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="version" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//ELong"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="language" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" name="MultiplicityType">
<eLiterals name="ONE"/>
<eLiterals name="MANY" value="1"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" name="DataflowDirection">
<eLiterals name="UNSPECIFIED"/>
<eLiterals name="DEFAULT" value="1"/>
<eLiterals name="OTHER" value="2"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="AccessTarget" abstract="true" interface="true"
eSuperTypes="#//FMCNode">
<eStructuralFeatures xsi:type="ecore:EReference" name="connections" upperBound="-1"
eType="#//Access" eOpposite="#//Access/target"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Comment" eSuperTypes="#//FMCElement">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="content" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="commentAssignment" eType="#//FMCElement"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="type" eType="#//CommentType"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="FMCElement" abstract="true">
<eOperations name="accept" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject">
<eParameters name="visitor" eType="#//IFMCElementVisitor"/>
<eParameters name="object" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eOperations>
<eStructuralFeatures xsi:type="ecore:EReference" name="nodeMetadata" eType="#//Metadata"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="stereotypes" upperBound="-1"
eType="#//Stereotype" containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" name="CommentType">
<eLiterals name="TEXT"/>
<eLiterals name="IMAGE" value="1"/>
<eLiterals name="OTHER" value="2"/>
<eLiterals name="BRACE" value="3"/>
<eLiterals name="AREABORDER" value="4"/>
<eLiterals name="COMMONFEATUREAREA" value="5"/>
<eLiterals name="DOTS" value="6" literal="DOTS"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Stereotype">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="values" upperBound="-1"
eType="#//StereotypeValue" containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="StereotypeValue">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="valueString" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="valueBoolean" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EBoolean"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="valueInteger" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EInt"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="IFMCElementVisitor" abstract="true"
interface="true">
<eOperations name="visit" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject">
<eParameters name="element" eType="#//FMCElement"/>
<eParameters name="object" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EJavaObject"/>
</eOperations>
<eOperations name="visitComment" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject">
<eParameters name="comment" eType="#//Comment"/>
<eParameters name="object" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eOperations>
<eOperations name="visitAccess" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject">
<eParameters name="access" eType="#//Access"/>
<eParameters name="object" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eOperations>
<eOperations name="visitChannel" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject">
<eParameters name="channel" eType="#//Channel"/>
<eParameters name="object" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eOperations>
<eOperations name="visitAgent" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject">
<eParameters name="agent" eType="#//Agent"/>
<eParameters name="object" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eOperations>
<eOperations name="visitStorage" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject">
<eParameters name="storage" eType="#//Storage"/>
<eParameters name="object" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eOperations>
<eOperations name="visitStructureVariance" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject">
<eParameters name="structureVariance" eType="#//StructureVariance"/>
<eParameters name="object" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eOperations>
</eClassifiers>
</ecore:EPackage>