You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

70 lines
4.5 KiB

<?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="avaj_launcher" nsURI="http://org/eclipse/example/avaj_launcher"
nsPrefix="org.eclipse.example.avaj_launcher">
<eClassifiers xsi:type="ecore:EClass" name="Tower">
<eOperations name="register">
<eParameters name="flyable" eType="#//Flyable"/>
</eOperations>
<eOperations name="unregister">
<eParameters name="flyable" eType="#//Flyable"/>
</eOperations>
<eOperations name="conditionsChanged"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="observers" upperBound="-1"
eType="#//Flyable" containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="WeatherTower">
<eOperations name="getWeather" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
<eParameters name="coordinates" eType="#//Coordinates"/>
</eOperations>
<eOperations name="changeWeather"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Flyable" abstract="true" interface="true">
<eOperations name="registerTower">
<eParameters name="WeatherTower" eType="#//WeatherTower"/>
</eOperations>
<eOperations name="updateConditions"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Aircraft">
<eOperations name="nextId" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//ELong"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//ELong"
changeable="false"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="coordinates" eType="#//Coordinates"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="idCounter" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//ELong"
changeable="false"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Coordinates">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="longitude" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="latitude" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="height" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="WeatherProvider">
<eOperations name="getProvider" eType="#//WeatherProvider"/>
<eOperations name="getCurrentWeather" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
<eParameters name="coordinates" eType="#//Coordinates"/>
</eOperations>
<eStructuralFeatures xsi:type="ecore:EReference" name="weatherProvider" eType="#//WeatherProvider"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="weathter" upperBound="-1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Helicopter" eSuperTypes="#//Flyable">
<eStructuralFeatures xsi:type="ecore:EReference" name="weatherTower" eType="#//WeatherTower"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="JetPlane" eSuperTypes="#//Flyable">
<eStructuralFeatures xsi:type="ecore:EReference" name="weatherTower" eType="#//WeatherTower"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Baloon" eSuperTypes="#//Flyable">
<eStructuralFeatures xsi:type="ecore:EReference" name="weatherTower" eType="#//WeatherTower"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="AircraftFactory">
<eOperations name="newAircraft" eType="#//Flyable">
<eParameters name="type" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eParameters name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eParameters name="longitude" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
<eParameters name="latitude" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
<eParameters name="height" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
</eOperations>
</eClassifiers>
</ecore:EPackage>