diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000000000000000000000000000000000000..2f6ba411d91439ba8864e0598910f9387b63c447 --- /dev/null +++ b/.gitmodules @@ -0,0 +1,4 @@ +[submodule "models"] + path = models + url = ../models.git + branch = main diff --git a/.idea/.gitignore b/.idea/.gitignore deleted file mode 100644 index 26d33521af10bcc7fd8cea344038eaaeb78d0ef5..0000000000000000000000000000000000000000 --- a/.idea/.gitignore +++ /dev/null @@ -1,3 +0,0 @@ -# Default ignored files -/shelf/ -/workspace.xml diff --git a/.idea/compiler.xml b/.idea/compiler.xml deleted file mode 100644 index fb7f4a8a465d42b4a0390d464b83b99e8465bba7..0000000000000000000000000000000000000000 --- a/.idea/compiler.xml +++ /dev/null @@ -1,6 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<project version="4"> - <component name="CompilerConfiguration"> - <bytecodeTargetLevel target="11" /> - </component> -</project> \ No newline at end of file diff --git a/.idea/gradle.xml b/.idea/gradle.xml deleted file mode 100644 index 69921a0a18865ba1eea466360f5f9166f305c1a8..0000000000000000000000000000000000000000 --- a/.idea/gradle.xml +++ /dev/null @@ -1,17 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<project version="4"> - <component name="GradleSettings"> - <option name="linkedExternalProjectsSettings"> - <GradleProjectSettings> - <option name="distributionType" value="DEFAULT_WRAPPED" /> - <option name="externalProjectPath" value="$PROJECT_DIR$" /> - <option name="gradleJvm" value="openjdk-16" /> - <option name="modules"> - <set> - <option value="$PROJECT_DIR$" /> - </set> - </option> - </GradleProjectSettings> - </option> - </component> -</project> \ No newline at end of file diff --git a/.idea/jarRepositories.xml b/.idea/jarRepositories.xml deleted file mode 100644 index 43df70078ffdab6128df0cde36c3a43372dd910b..0000000000000000000000000000000000000000 --- a/.idea/jarRepositories.xml +++ /dev/null @@ -1,25 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<project version="4"> - <component name="RemoteRepositoriesConfiguration"> - <remote-repository> - <option name="id" value="central" /> - <option name="name" value="Maven Central repository" /> - <option name="url" value="https://repo1.maven.org/maven2" /> - </remote-repository> - <remote-repository> - <option name="id" value="jboss.community" /> - <option name="name" value="JBoss Community repository" /> - <option name="url" value="https://repository.jboss.org/nexus/content/repositories/public/" /> - </remote-repository> - <remote-repository> - <option name="id" value="MavenRepo" /> - <option name="name" value="MavenRepo" /> - <option name="url" value="https://repo.maven.apache.org/maven2/" /> - </remote-repository> - <remote-repository> - <option name="id" value="maven" /> - <option name="name" value="maven" /> - <option name="url" value="https://packages.confluent.io/maven/" /> - </remote-repository> - </component> -</project> \ No newline at end of file diff --git a/.idea/jpa-buddy.xml b/.idea/jpa-buddy.xml deleted file mode 100644 index d08f40080caa9b3126ee8385c13832d2e63f4ad6..0000000000000000000000000000000000000000 --- a/.idea/jpa-buddy.xml +++ /dev/null @@ -1,6 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<project version="4"> - <component name="JpaBuddyIdeaProjectConfig"> - <option name="defaultUnitInitialized" value="true" /> - </component> -</project> \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml deleted file mode 100644 index 223dc613aaed99de1e1c8c8d5f6412646f4f9147..0000000000000000000000000000000000000000 --- a/.idea/misc.xml +++ /dev/null @@ -1,5 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<project version="4"> - <component name="ExternalStorageConfigurationManager" enabled="true" /> - <component name="ProjectRootManager" version="2" languageLevel="JDK_11" project-jdk-name="16" project-jdk-type="JavaSDK" /> -</project> \ No newline at end of file diff --git a/.idea/runConfigurations.xml b/.idea/runConfigurations.xml deleted file mode 100644 index 797acea53eb091cf5b30518802c3073f544adeed..0000000000000000000000000000000000000000 --- a/.idea/runConfigurations.xml +++ /dev/null @@ -1,10 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<project version="4"> - <component name="RunConfigurationProducerService"> - <option name="ignoredProducers"> - <set> - <option value="com.android.tools.idea.compose.preview.runconfiguration.ComposePreviewRunConfigurationProducer" /> - </set> - </option> - </component> -</project> \ No newline at end of file diff --git a/.idea/uiDesigner.xml b/.idea/uiDesigner.xml deleted file mode 100644 index e96534fb27b68192f27f985d3879e173ec77adb8..0000000000000000000000000000000000000000 --- a/.idea/uiDesigner.xml +++ /dev/null @@ -1,124 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<project version="4"> - <component name="Palette2"> - <group name="Swing"> - <item class="com.intellij.uiDesigner.HSpacer" tooltip-text="Horizontal Spacer" icon="/com/intellij/uiDesigner/icons/hspacer.png" removable="false" auto-create-binding="false" can-attach-label="false"> - <default-constraints vsize-policy="1" hsize-policy="6" anchor="0" fill="1" /> - </item> - <item class="com.intellij.uiDesigner.VSpacer" tooltip-text="Vertical Spacer" icon="/com/intellij/uiDesigner/icons/vspacer.png" removable="false" auto-create-binding="false" can-attach-label="false"> - <default-constraints vsize-policy="6" hsize-policy="1" anchor="0" fill="2" /> - </item> - <item class="javax.swing.JPanel" icon="/com/intellij/uiDesigner/icons/panel.png" removable="false" auto-create-binding="false" can-attach-label="false"> - <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3" /> - </item> - <item class="javax.swing.JScrollPane" icon="/com/intellij/uiDesigner/icons/scrollPane.png" removable="false" auto-create-binding="false" can-attach-label="true"> - <default-constraints vsize-policy="7" hsize-policy="7" anchor="0" fill="3" /> - </item> - <item class="javax.swing.JButton" icon="/com/intellij/uiDesigner/icons/button.png" removable="false" auto-create-binding="true" can-attach-label="false"> - <default-constraints vsize-policy="0" hsize-policy="3" anchor="0" fill="1" /> - <initial-values> - <property name="text" value="Button" /> - </initial-values> - </item> - <item class="javax.swing.JRadioButton" icon="/com/intellij/uiDesigner/icons/radioButton.png" removable="false" auto-create-binding="true" can-attach-label="false"> - <default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" /> - <initial-values> - <property name="text" value="RadioButton" /> - </initial-values> - </item> - <item class="javax.swing.JCheckBox" icon="/com/intellij/uiDesigner/icons/checkBox.png" removable="false" auto-create-binding="true" can-attach-label="false"> - <default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" /> - <initial-values> - <property name="text" value="CheckBox" /> - </initial-values> - </item> - <item class="javax.swing.JLabel" icon="/com/intellij/uiDesigner/icons/label.png" removable="false" auto-create-binding="false" can-attach-label="false"> - <default-constraints vsize-policy="0" hsize-policy="0" anchor="8" fill="0" /> - <initial-values> - <property name="text" value="Label" /> - </initial-values> - </item> - <item class="javax.swing.JTextField" icon="/com/intellij/uiDesigner/icons/textField.png" removable="false" auto-create-binding="true" can-attach-label="true"> - <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1"> - <preferred-size width="150" height="-1" /> - </default-constraints> - </item> - <item class="javax.swing.JPasswordField" icon="/com/intellij/uiDesigner/icons/passwordField.png" removable="false" auto-create-binding="true" can-attach-label="true"> - <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1"> - <preferred-size width="150" height="-1" /> - </default-constraints> - </item> - <item class="javax.swing.JFormattedTextField" icon="/com/intellij/uiDesigner/icons/formattedTextField.png" removable="false" auto-create-binding="true" can-attach-label="true"> - <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1"> - <preferred-size width="150" height="-1" /> - </default-constraints> - </item> - <item class="javax.swing.JTextArea" icon="/com/intellij/uiDesigner/icons/textArea.png" removable="false" auto-create-binding="true" can-attach-label="true"> - <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3"> - <preferred-size width="150" height="50" /> - </default-constraints> - </item> - <item class="javax.swing.JTextPane" icon="/com/intellij/uiDesigner/icons/textPane.png" removable="false" auto-create-binding="true" can-attach-label="true"> - <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3"> - <preferred-size width="150" height="50" /> - </default-constraints> - </item> - <item class="javax.swing.JEditorPane" icon="/com/intellij/uiDesigner/icons/editorPane.png" removable="false" auto-create-binding="true" can-attach-label="true"> - <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3"> - <preferred-size width="150" height="50" /> - </default-constraints> - </item> - <item class="javax.swing.JComboBox" icon="/com/intellij/uiDesigner/icons/comboBox.png" removable="false" auto-create-binding="true" can-attach-label="true"> - <default-constraints vsize-policy="0" hsize-policy="2" anchor="8" fill="1" /> - </item> - <item class="javax.swing.JTable" icon="/com/intellij/uiDesigner/icons/table.png" removable="false" auto-create-binding="true" can-attach-label="false"> - <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3"> - <preferred-size width="150" height="50" /> - </default-constraints> - </item> - <item class="javax.swing.JList" icon="/com/intellij/uiDesigner/icons/list.png" removable="false" auto-create-binding="true" can-attach-label="false"> - <default-constraints vsize-policy="6" hsize-policy="2" anchor="0" fill="3"> - <preferred-size width="150" height="50" /> - </default-constraints> - </item> - <item class="javax.swing.JTree" icon="/com/intellij/uiDesigner/icons/tree.png" removable="false" auto-create-binding="true" can-attach-label="false"> - <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3"> - <preferred-size width="150" height="50" /> - </default-constraints> - </item> - <item class="javax.swing.JTabbedPane" icon="/com/intellij/uiDesigner/icons/tabbedPane.png" removable="false" auto-create-binding="true" can-attach-label="false"> - <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3"> - <preferred-size width="200" height="200" /> - </default-constraints> - </item> - <item class="javax.swing.JSplitPane" icon="/com/intellij/uiDesigner/icons/splitPane.png" removable="false" auto-create-binding="false" can-attach-label="false"> - <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3"> - <preferred-size width="200" height="200" /> - </default-constraints> - </item> - <item class="javax.swing.JSpinner" icon="/com/intellij/uiDesigner/icons/spinner.png" removable="false" auto-create-binding="true" can-attach-label="true"> - <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" /> - </item> - <item class="javax.swing.JSlider" icon="/com/intellij/uiDesigner/icons/slider.png" removable="false" auto-create-binding="true" can-attach-label="false"> - <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" /> - </item> - <item class="javax.swing.JSeparator" icon="/com/intellij/uiDesigner/icons/separator.png" removable="false" auto-create-binding="false" can-attach-label="false"> - <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3" /> - </item> - <item class="javax.swing.JProgressBar" icon="/com/intellij/uiDesigner/icons/progressbar.png" removable="false" auto-create-binding="true" can-attach-label="false"> - <default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1" /> - </item> - <item class="javax.swing.JToolBar" icon="/com/intellij/uiDesigner/icons/toolbar.png" removable="false" auto-create-binding="false" can-attach-label="false"> - <default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1"> - <preferred-size width="-1" height="20" /> - </default-constraints> - </item> - <item class="javax.swing.JToolBar$Separator" icon="/com/intellij/uiDesigner/icons/toolbarSeparator.png" removable="false" auto-create-binding="false" can-attach-label="false"> - <default-constraints vsize-policy="0" hsize-policy="0" anchor="0" fill="1" /> - </item> - <item class="javax.swing.JScrollBar" icon="/com/intellij/uiDesigner/icons/scrollbar.png" removable="false" auto-create-binding="true" can-attach-label="false"> - <default-constraints vsize-policy="6" hsize-policy="0" anchor="0" fill="2" /> - </item> - </group> - </component> -</project> \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml deleted file mode 100644 index 35eb1ddfbbc029bcab630581847471d7f238ec53..0000000000000000000000000000000000000000 --- a/.idea/vcs.xml +++ /dev/null @@ -1,6 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<project version="4"> - <component name="VcsDirectoryMappings"> - <mapping directory="" vcs="Git" /> - </component> -</project> \ No newline at end of file diff --git a/build.gradle b/build.gradle index ca1b7b5e55b2af1d3338b2e340035f78d76768d0..04460810d6e1f42e6dfc902b30318b6f3fcf8333 100644 --- a/build.gradle +++ b/build.gradle @@ -38,7 +38,12 @@ repositories { maven { url "https://packages.confluent.io/maven/" } } +bootRun{ + standardInput(System.in) +} + dependencies { + implementation 'org.jetbrains:annotations:20.1.0' developmentOnly 'org.springframework.boot:spring-boot-devtools' implementation 'org.eclipse.emf:org.eclipse.emf.ecore:2.+' implementation 'org.eclipse.emf:org.eclipse.emf.common:2.+' @@ -49,6 +54,7 @@ dependencies { // implementation 'com.google.protobuf:protobuf-java:3.17.3' implementation 'com.google.protobuf:protobuf-java-util:3.17.3' implementation "org.springframework.integration:spring-integration-mqtt:5.5.3" + implementation 'com.lemmingapex.trilateration:trilateration:1.0.2' testImplementation 'org.springframework.boot:spring-boot-starter-test' runtimeOnly 'com.h2database:h2' @@ -76,7 +82,13 @@ protobuf { sourceSets { main { proto { - srcDir "src/main/resources" + srcDirs "models/interfaces/GenericSensor", + "models/interfaces/SimpleScene", + "models/interfaces/OFBizOrderpicker", + "models/interfaces/Tooz", + "models/interfaces/VDA5050", + "models/interfaces/OSM" + // srcDir "src/main/resources" } java { // include self written and generated code diff --git a/emf_datamodel/model/iPos_Datamodel.aird b/emf_datamodel/model/iPos_Datamodel.aird index 6222f9b2bbb2928614aca0fdea8aefaf181a893e..e1cba59c8e3f8bf0892133fda2f02c9c295b7f66 100644 --- a/emf_datamodel/model/iPos_Datamodel.aird +++ b/emf_datamodel/model/iPos_Datamodel.aird @@ -5,10 +5,34 @@ <semanticResources>iPos_Datamodel.genmodel</semanticResources> <ownedViews xmi:type="viewpoint:DView" uid="_EpwecAQNEey-kNQ7esRa_g"> <viewpoint xmi:type="description:Viewpoint" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']"/> - <ownedRepresentationDescriptors xmi:type="viewpoint:DRepresentationDescriptor" uid="_Et4wgAQNEey-kNQ7esRa_g" name="iPos_Datamodel" repPath="#_Es-xkAQNEey-kNQ7esRa_g" changeId="05a0c2e9-5695-404c-b13f-fff437b73d1e"> + <ownedRepresentationDescriptors xmi:type="viewpoint:DRepresentationDescriptor" uid="_Et4wgAQNEey-kNQ7esRa_g" name="iPos_Datamodel" repPath="#_Es-xkAQNEey-kNQ7esRa_g" changeId="9e17b80d-28a7-4855-b807-bc54adcf6599"> <description xmi:type="description_1:DiagramDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']"/> <target xmi:type="ecore:EPackage" href="iPos_Datamodel.ecore#/"/> </ownedRepresentationDescriptors> + <ownedRepresentationDescriptors xmi:type="viewpoint:DRepresentationDescriptor" uid="_vF3jwDx2EeyWNq6fFfWVSw" name="OFBiz" repPath="#_vFz5YDx2EeyWNq6fFfWVSw" changeId="42ca2046-f1e0-4eb3-ae25-3099986f2d01"> + <description xmi:type="description_1:DiagramDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']"/> + <target xmi:type="ecore:EPackage" href="iPos_Datamodel.ecore#//OFBiz"/> + </ownedRepresentationDescriptors> + <ownedRepresentationDescriptors xmi:type="viewpoint:DRepresentationDescriptor" uid="_FmM9IDx3EeyWNq6fFfWVSw" name="IPosDevKit" repPath="#_FmLvADx3EeyWNq6fFfWVSw" changeId="3f833c36-7dc1-448e-a4b4-5ae7bd5cdb31"> + <description xmi:type="description_1:DiagramDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']"/> + <target xmi:type="ecore:EPackage" href="iPos_Datamodel.ecore#//IPosDevKit"/> + </ownedRepresentationDescriptors> + <ownedRepresentationDescriptors xmi:type="viewpoint:DRepresentationDescriptor" uid="_27WZMIsNEeyJ0bON1VCj7g" name="Tooz" repPath="#_27T88IsNEeyJ0bON1VCj7g" changeId="d3c69b19-086f-45f8-ab55-f7de57bffb9a"> + <description xmi:type="description_1:DiagramDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']"/> + <target xmi:type="ecore:EPackage" href="iPos_Datamodel.ecore#//Tooz"/> + </ownedRepresentationDescriptors> + <ownedRepresentationDescriptors xmi:type="viewpoint:DRepresentationDescriptor" uid="_KUBu0I_UEeyJ0bON1VCj7g" name="VDA5050" repPath="#_KUAgsI_UEeyJ0bON1VCj7g" changeId="c93da314-38a7-4738-ab2b-de17dd609a6b"> + <description xmi:type="description_1:DiagramDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']"/> + <target xmi:type="ecore:EPackage" href="iPos_Datamodel.ecore#//VDA5050"/> + </ownedRepresentationDescriptors> + <ownedRepresentationDescriptors xmi:type="viewpoint:DRepresentationDescriptor" uid="_q62u4KEeEeyjYoAVD5IwbQ" name="OSM" repPath="#_q60SoKEeEeyjYoAVD5IwbQ" changeId="95660e9c-3628-4a27-b3e3-fbe035508556"> + <description xmi:type="description_1:DiagramDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']"/> + <target xmi:type="ecore:EPackage" href="iPos_Datamodel.ecore#//OSM"/> + </ownedRepresentationDescriptors> + <ownedRepresentationDescriptors xmi:type="viewpoint:DRepresentationDescriptor" uid="_OXo28OMSEeylWPfcS0Eglw" name="IPos_Datamodel_print" repPath="#_OXjXYOMSEeylWPfcS0Eglw" changeId="49f176ef-2209-42aa-a059-8ebc99e8e576"> + <description xmi:type="description_1:DiagramDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']"/> + <target xmi:type="ecore:EPackage" href="iPos_Datamodel.ecore#//IPos_Datamodel_print"/> + </ownedRepresentationDescriptors> </ownedViews> </viewpoint:DAnalysis> <diagram:DSemanticDiagram uid="_Es-xkAQNEey-kNQ7esRa_g"> @@ -17,15 +41,15 @@ <children xmi:type="notation:Node" xmi:id="_OVBp4AQNEey-kNQ7esRa_g" type="2003" element="_OUqdgAQNEey-kNQ7esRa_g"> <children xmi:type="notation:Node" xmi:id="_OVEGIAQNEey-kNQ7esRa_g" type="5007"/> <children xmi:type="notation:Node" xmi:id="_OVFUQAQNEey-kNQ7esRa_g" type="7004"> - <children xmi:type="notation:Node" xmi:id="_UeqhoAQNEey-kNQ7esRa_g" type="3010" element="_UecfMAQNEey-kNQ7esRa_g"> - <styles xmi:type="notation:FontStyle" xmi:id="_UeqhoQQNEey-kNQ7esRa_g" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Location" xmi:id="_UeqhogQNEey-kNQ7esRa_g"/> + <children xmi:type="notation:Node" xmi:id="__p36YBuBEeyPOIo-WqURQQ" type="3010" element="__pp38BuBEeyPOIo-WqURQQ"> + <styles xmi:type="notation:FontStyle" xmi:id="__p36YRuBEeyPOIo-WqURQQ" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="__p36YhuBEeyPOIo-WqURQQ"/> </children> <styles xmi:type="notation:SortingStyle" xmi:id="_OVFUQQQNEey-kNQ7esRa_g"/> <styles xmi:type="notation:FilteringStyle" xmi:id="_OVFUQgQNEey-kNQ7esRa_g"/> </children> <styles xmi:type="notation:ShapeStyle" xmi:id="_OVBp4QQNEey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OVBp4gQNEey-kNQ7esRa_g" x="342" y="174" width="120" height="100"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OVBp4gQNEey-kNQ7esRa_g" x="390" y="174" width="120" height="100"/> </children> <children xmi:type="notation:Node" xmi:id="_hS0UIAQOEey-kNQ7esRa_g" type="2003" element="_hSvboAQOEey-kNQ7esRa_g"> <children xmi:type="notation:Node" xmi:id="_hS0UIwQOEey-kNQ7esRa_g" type="5007"/> @@ -38,7 +62,7 @@ <styles xmi:type="notation:FilteringStyle" xmi:id="_hS07MgQOEey-kNQ7esRa_g"/> </children> <styles xmi:type="notation:ShapeStyle" xmi:id="_hS0UIQQOEey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_hS0UIgQOEey-kNQ7esRa_g" x="480" y="30" width="120" height="100"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_hS0UIgQOEey-kNQ7esRa_g" x="507" y="30" width="120" height="100"/> </children> <children xmi:type="notation:Node" xmi:id="_Pg1TsAQjEey-kNQ7esRa_g" type="2003" element="_PgvNEAQjEey-kNQ7esRa_g"> <children xmi:type="notation:Node" xmi:id="_Pg16wAQjEey-kNQ7esRa_g" type="5007"/> @@ -55,20 +79,7 @@ <styles xmi:type="notation:FilteringStyle" xmi:id="_Pg16wwQjEey-kNQ7esRa_g"/> </children> <styles xmi:type="notation:ShapeStyle" xmi:id="_Pg1TsQQjEey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Pg1TsgQjEey-kNQ7esRa_g" x="672" y="174" width="147" height="100"/> - </children> - <children xmi:type="notation:Node" xmi:id="_ZOlLYwQjEey-kNQ7esRa_g" type="2003" element="_ZOg58AQjEey-kNQ7esRa_g"> - <children xmi:type="notation:Node" xmi:id="_ZOlycAQjEey-kNQ7esRa_g" type="5007"/> - <children xmi:type="notation:Node" xmi:id="_ZOlycQQjEey-kNQ7esRa_g" type="7004"> - <children xmi:type="notation:Node" xmi:id="_7XR6UAcpEey-kNQ7esRa_g" type="3010" element="_7XFGAAcpEey-kNQ7esRa_g"> - <styles xmi:type="notation:FontStyle" xmi:id="_7XR6UQcpEey-kNQ7esRa_g" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Location" xmi:id="_7XR6UgcpEey-kNQ7esRa_g"/> - </children> - <styles xmi:type="notation:SortingStyle" xmi:id="_ZOlycgQjEey-kNQ7esRa_g"/> - <styles xmi:type="notation:FilteringStyle" xmi:id="_ZOlycwQjEey-kNQ7esRa_g"/> - </children> - <styles xmi:type="notation:ShapeStyle" xmi:id="_ZOlLZAQjEey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ZOlLZQQjEey-kNQ7esRa_g" x="498" y="312" width="120" height="100"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Pg1TsgQjEey-kNQ7esRa_g" x="630" y="168" width="147" height="100"/> </children> <children xmi:type="notation:Node" xmi:id="_beL2gAQjEey-kNQ7esRa_g" type="2003" element="_beGW8AQjEey-kNQ7esRa_g"> <children xmi:type="notation:Node" xmi:id="_beMdkAQjEey-kNQ7esRa_g" type="5007"/> @@ -77,7 +88,7 @@ <styles xmi:type="notation:FilteringStyle" xmi:id="_beMdkwQjEey-kNQ7esRa_g"/> </children> <styles xmi:type="notation:ShapeStyle" xmi:id="_beL2gQQjEey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_beL2ggQjEey-kNQ7esRa_g" x="690" y="420" width="120" height="100"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_beL2ggQjEey-kNQ7esRa_g" x="684" y="316" width="120" height="100"/> </children> <children xmi:type="notation:Node" xmi:id="_fodekAQjEey-kNQ7esRa_g" type="2003" element="_foX_AAQjEey-kNQ7esRa_g"> <children xmi:type="notation:Node" xmi:id="_fodekwQjEey-kNQ7esRa_g" type="5007"/> @@ -86,7 +97,7 @@ <styles xmi:type="notation:FilteringStyle" xmi:id="_fodelgQjEey-kNQ7esRa_g"/> </children> <styles xmi:type="notation:ShapeStyle" xmi:id="_fodekQQjEey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_fodekgQjEey-kNQ7esRa_g" x="690" y="582" width="120" height="100"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_fodekgQjEey-kNQ7esRa_g" x="684" y="449" width="120" height="100"/> </children> <children xmi:type="notation:Node" xmi:id="_hdV8kAQjEey-kNQ7esRa_g" type="2003" element="_hdQdAAQjEey-kNQ7esRa_g"> <children xmi:type="notation:Node" xmi:id="_hdWjoAQjEey-kNQ7esRa_g" type="5007"/> @@ -95,25 +106,7 @@ <styles xmi:type="notation:FilteringStyle" xmi:id="_hdWjowQjEey-kNQ7esRa_g"/> </children> <styles xmi:type="notation:ShapeStyle" xmi:id="_hdV8kQQjEey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_hdV8kgQjEey-kNQ7esRa_g" x="957" y="378" width="120" height="100"/> - </children> - <children xmi:type="notation:Node" xmi:id="_11mPIAQjEey-kNQ7esRa_g" type="2003" element="_11gvkAQjEey-kNQ7esRa_g"> - <children xmi:type="notation:Node" xmi:id="_11m2MAQjEey-kNQ7esRa_g" type="5007"/> - <children xmi:type="notation:Node" xmi:id="_11m2MQQjEey-kNQ7esRa_g" type="7004"> - <styles xmi:type="notation:SortingStyle" xmi:id="_11m2MgQjEey-kNQ7esRa_g"/> - <styles xmi:type="notation:FilteringStyle" xmi:id="_11m2MwQjEey-kNQ7esRa_g"/> - </children> - <styles xmi:type="notation:ShapeStyle" xmi:id="_11mPIQQjEey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_11mPIgQjEey-kNQ7esRa_g" x="558" y="792" width="120" height="100"/> - </children> - <children xmi:type="notation:Node" xmi:id="_37e9kAQjEey-kNQ7esRa_g" type="2003" element="_37ZeAAQjEey-kNQ7esRa_g"> - <children xmi:type="notation:Node" xmi:id="_37e9kwQjEey-kNQ7esRa_g" type="5007"/> - <children xmi:type="notation:Node" xmi:id="_37fkoAQjEey-kNQ7esRa_g" type="7004"> - <styles xmi:type="notation:SortingStyle" xmi:id="_37fkoQQjEey-kNQ7esRa_g"/> - <styles xmi:type="notation:FilteringStyle" xmi:id="_37fkogQjEey-kNQ7esRa_g"/> - </children> - <styles xmi:type="notation:ShapeStyle" xmi:id="_37e9kQQjEey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_37e9kgQjEey-kNQ7esRa_g" x="828" y="792" width="120" height="100"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_hdV8kgQjEey-kNQ7esRa_g" x="951" y="-72" width="120" height="100"/> </children> <children xmi:type="notation:Node" xmi:id="_738MEAQjEey-kNQ7esRa_g" type="2003" element="_733TkAQjEey-kNQ7esRa_g"> <children xmi:type="notation:Node" xmi:id="_738MEwQjEey-kNQ7esRa_g" type="5007"/> @@ -134,7 +127,7 @@ <styles xmi:type="notation:FilteringStyle" xmi:id="_738MFgQjEey-kNQ7esRa_g"/> </children> <styles xmi:type="notation:ShapeStyle" xmi:id="_738MEQQjEey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_738MEgQjEey-kNQ7esRa_g" x="546" y="972" width="177" height="112"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_738MEgQjEey-kNQ7esRa_g" x="1138" y="486" width="177" height="112"/> </children> <children xmi:type="notation:Node" xmi:id="_-LbRoAQjEey-kNQ7esRa_g" type="2003" element="_-LVyEAQjEey-kNQ7esRa_g"> <children xmi:type="notation:Node" xmi:id="_-LbRowQjEey-kNQ7esRa_g" type="5007"/> @@ -143,7 +136,7 @@ <styles xmi:type="notation:FilteringStyle" xmi:id="_-LbRpgQjEey-kNQ7esRa_g"/> </children> <styles xmi:type="notation:ShapeStyle" xmi:id="_-LbRoQQjEey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-LbRogQjEey-kNQ7esRa_g" x="978" y="624" width="120" height="100"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-LbRogQjEey-kNQ7esRa_g" x="936" y="185" width="120" height="100"/> </children> <children xmi:type="notation:Node" xmi:id="_Ecj4gAQkEey-kNQ7esRa_g" type="2003" element="_EcfnEAQkEey-kNQ7esRa_g"> <children xmi:type="notation:Node" xmi:id="_EckfkAQkEey-kNQ7esRa_g" type="5007"/> @@ -160,7 +153,7 @@ <styles xmi:type="notation:FilteringStyle" xmi:id="_EckfkwQkEey-kNQ7esRa_g"/> </children> <styles xmi:type="notation:ShapeStyle" xmi:id="_Ecj4gQQkEey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Ecj4ggQkEey-kNQ7esRa_g" x="1104" y="984" width="120" height="100"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Ecj4ggQkEey-kNQ7esRa_g" x="844" y="479" width="120" height="100"/> </children> <children xmi:type="notation:Node" xmi:id="_HfSpsAQkEey-kNQ7esRa_g" type="2003" element="_HfNxMAQkEey-kNQ7esRa_g"> <children xmi:type="notation:Node" xmi:id="_HfSpswQkEey-kNQ7esRa_g" type="5007"/> @@ -181,7 +174,7 @@ <styles xmi:type="notation:FilteringStyle" xmi:id="_HfSptgQkEey-kNQ7esRa_g"/> </children> <styles xmi:type="notation:ShapeStyle" xmi:id="_HfSpsQQkEey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_HfSpsgQkEey-kNQ7esRa_g" x="1248" y="984" width="120" height="100"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_HfSpsgQkEey-kNQ7esRa_g" x="988" y="479" width="120" height="100"/> </children> <children xmi:type="notation:Node" xmi:id="_SIv7sAQkEey-kNQ7esRa_g" type="2003" element="_SIp1EAQkEey-kNQ7esRa_g"> <children xmi:type="notation:Node" xmi:id="_SIv7swQkEey-kNQ7esRa_g" type="5007"/> @@ -198,16 +191,24 @@ <styles xmi:type="notation:FilteringStyle" xmi:id="_SIv7tgQkEey-kNQ7esRa_g"/> </children> <styles xmi:type="notation:ShapeStyle" xmi:id="_SIv7sQQkEey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_SIv7sgQkEey-kNQ7esRa_g" x="252" y="516" width="147" height="100"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_SIv7sgQkEey-kNQ7esRa_g" x="288" y="383" width="147" height="100"/> </children> <children xmi:type="notation:Node" xmi:id="_UOFQgAQkEey-kNQ7esRa_g" type="2003" element="_UN3OEAQkEey-kNQ7esRa_g"> <children xmi:type="notation:Node" xmi:id="_UOFQgwQkEey-kNQ7esRa_g" type="5007"/> <children xmi:type="notation:Node" xmi:id="_UOFQhAQkEey-kNQ7esRa_g" type="7004"> + <children xmi:type="notation:Node" xmi:id="_6pPCkBrzEeyPOIo-WqURQQ" type="3010" element="_6lo8ABrzEeyPOIo-WqURQQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_6pPCkRrzEeyPOIo-WqURQQ" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_6pPCkhrzEeyPOIo-WqURQQ"/> + </children> + <children xmi:type="notation:Node" xmi:id="_8ytQgBrzEeyPOIo-WqURQQ" type="3010" element="_8ybjsBrzEeyPOIo-WqURQQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_8ytQgRrzEeyPOIo-WqURQQ" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_8ytQghrzEeyPOIo-WqURQQ"/> + </children> <styles xmi:type="notation:SortingStyle" xmi:id="_UOFQhQQkEey-kNQ7esRa_g"/> <styles xmi:type="notation:FilteringStyle" xmi:id="_UOFQhgQkEey-kNQ7esRa_g"/> </children> <styles xmi:type="notation:ShapeStyle" xmi:id="_UOFQgQQkEey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_UOFQggQkEey-kNQ7esRa_g" y="516" width="120" height="100"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_UOFQggQkEey-kNQ7esRa_g" y="306" width="120" height="100"/> </children> <children xmi:type="notation:Node" xmi:id="_VW89EAQkEey-kNQ7esRa_g" type="2003" element="_VW3dgAQkEey-kNQ7esRa_g"> <children xmi:type="notation:Node" xmi:id="_VW9kIAQkEey-kNQ7esRa_g" type="5007"/> @@ -216,7 +217,7 @@ <styles xmi:type="notation:FilteringStyle" xmi:id="_VW9kIwQkEey-kNQ7esRa_g"/> </children> <styles xmi:type="notation:ShapeStyle" xmi:id="_VW89EQQkEey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_VW89EgQkEey-kNQ7esRa_g" y="366" width="120" height="100"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_VW89EgQkEey-kNQ7esRa_g" y="156" width="120" height="100"/> </children> <children xmi:type="notation:Node" xmi:id="_XZkVEAQkEey-kNQ7esRa_g" type="2003" element="_XZe1gAQkEey-kNQ7esRa_g"> <children xmi:type="notation:Node" xmi:id="_XZk8IAQkEey-kNQ7esRa_g" type="5007"/> @@ -237,7 +238,7 @@ <styles xmi:type="notation:FilteringStyle" xmi:id="_XZk8IwQkEey-kNQ7esRa_g"/> </children> <styles xmi:type="notation:ShapeStyle" xmi:id="_XZkVEQQkEey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XZkVEgQkEey-kNQ7esRa_g" y="654" width="120" height="100"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XZkVEgQkEey-kNQ7esRa_g" y="449" width="120" height="100"/> </children> <children xmi:type="notation:Node" xmi:id="_aKkdFgQkEey-kNQ7esRa_g" type="2003" element="_aKe9gAQkEey-kNQ7esRa_g"> <children xmi:type="notation:Node" xmi:id="_aKlEIAQkEey-kNQ7esRa_g" type="5007"/> @@ -246,16 +247,7 @@ <styles xmi:type="notation:FilteringStyle" xmi:id="_aKlEIwQkEey-kNQ7esRa_g"/> </children> <styles xmi:type="notation:ShapeStyle" xmi:id="_aKkdFwQkEey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_aKkdGAQkEey-kNQ7esRa_g" x="-210" y="288" width="120" height="100"/> - </children> - <children xmi:type="notation:Node" xmi:id="_C_NUQAQlEey-kNQ7esRa_g" type="2003" element="_C_GmkAQlEey-kNQ7esRa_g"> - <children xmi:type="notation:Node" xmi:id="_C_NUQwQlEey-kNQ7esRa_g" type="5007"/> - <children xmi:type="notation:Node" xmi:id="_C_NURAQlEey-kNQ7esRa_g" type="7004"> - <styles xmi:type="notation:SortingStyle" xmi:id="_C_NURQQlEey-kNQ7esRa_g"/> - <styles xmi:type="notation:FilteringStyle" xmi:id="_C_NURgQlEey-kNQ7esRa_g"/> - </children> - <styles xmi:type="notation:ShapeStyle" xmi:id="_C_NUQQQlEey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_C_NUQgQlEey-kNQ7esRa_g" x="78" y="174" width="138" height="100"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_aKkdGAQkEey-kNQ7esRa_g" y="24" width="120" height="100"/> </children> <children xmi:type="notation:Node" xmi:id="_YB0RsATxEey-kNQ7esRa_g" type="2003" element="_YBru0ATxEey-kNQ7esRa_g"> <children xmi:type="notation:Node" xmi:id="_YB04wATxEey-kNQ7esRa_g" type="5007"/> @@ -280,7 +272,7 @@ <styles xmi:type="notation:FilteringStyle" xmi:id="_YB04wwTxEey-kNQ7esRa_g"/> </children> <styles xmi:type="notation:ShapeStyle" xmi:id="_YB0RsQTxEey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_YB0RsgTxEey-kNQ7esRa_g" x="1188" y="378" width="120" height="109"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_YB0RsgTxEey-kNQ7esRa_g" x="1119" y="-77" width="120" height="109"/> </children> <children xmi:type="notation:Node" xmi:id="_0g1BQAT3Eey-kNQ7esRa_g" type="2003" element="_0gtsgAT3Eey-kNQ7esRa_g"> <children xmi:type="notation:Node" xmi:id="_0g1BQwT3Eey-kNQ7esRa_g" type="5007"/> @@ -293,7 +285,7 @@ <styles xmi:type="notation:FilteringStyle" xmi:id="_0g1oUgT3Eey-kNQ7esRa_g"/> </children> <styles xmi:type="notation:ShapeStyle" xmi:id="_0g1BQQT3Eey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0g1BQgT3Eey-kNQ7esRa_g" x="1110" y="624" width="225" height="100"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0g1BQgT3Eey-kNQ7esRa_g" x="1080" y="191" width="225" height="100"/> </children> <children xmi:type="notation:Node" xmi:id="_lk5_0AWMEey-kNQ7esRa_g" type="2003" element="_lkw14AWMEey-kNQ7esRa_g"> <children xmi:type="notation:Node" xmi:id="_lk5_0wWMEey-kNQ7esRa_g" type="5007"/> @@ -302,20 +294,20 @@ <styles xmi:type="notation:FilteringStyle" xmi:id="_lk5_1gWMEey-kNQ7esRa_g"/> </children> <styles xmi:type="notation:ShapeStyle" xmi:id="_lk5_0QWMEey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_lk5_0gWMEey-kNQ7esRa_g" x="1188" y="792" width="120" height="100"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_lk5_0gWMEey-kNQ7esRa_g" x="993" y="334" width="120" height="100"/> </children> <children xmi:type="notation:Node" xmi:id="__k3HcAWcEey-kNQ7esRa_g" type="2003" element="__kvLoAWcEey-kNQ7esRa_g"> <children xmi:type="notation:Node" xmi:id="__k3HcwWcEey-kNQ7esRa_g" type="5007"/> <children xmi:type="notation:Node" xmi:id="__k3ugAWcEey-kNQ7esRa_g" type="7004"> - <children xmi:type="notation:Node" xmi:id="_9wiGQAWgEey-kNQ7esRa_g" type="3010" element="_9wYVQAWgEey-kNQ7esRa_g"> - <styles xmi:type="notation:FontStyle" xmi:id="_9wiGQQWgEey-kNQ7esRa_g" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Location" xmi:id="_9wiGQgWgEey-kNQ7esRa_g"/> + <children xmi:type="notation:Node" xmi:id="_4ZsUUCeVEeydzb6PKf1sDQ" type="3010" element="_4ZOaQCeVEeydzb6PKf1sDQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_4ZsUUSeVEeydzb6PKf1sDQ" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_4ZsUUieVEeydzb6PKf1sDQ"/> </children> <styles xmi:type="notation:SortingStyle" xmi:id="__k3ugQWcEey-kNQ7esRa_g"/> <styles xmi:type="notation:FilteringStyle" xmi:id="__k3uggWcEey-kNQ7esRa_g"/> </children> <styles xmi:type="notation:ShapeStyle" xmi:id="__k3HcQWcEey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="__k3HcgWcEey-kNQ7esRa_g" x="1464" y="-180" width="144" height="100"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__k3HcgWcEey-kNQ7esRa_g" x="1421" y="-553" width="144" height="100"/> </children> <children xmi:type="notation:Node" xmi:id="_DsJToAWiEey-kNQ7esRa_g" type="2003" element="_DsBX0AWiEey-kNQ7esRa_g"> <children xmi:type="notation:Node" xmi:id="_DsJTowWiEey-kNQ7esRa_g" type="5007"/> @@ -336,7 +328,7 @@ <styles xmi:type="notation:FilteringStyle" xmi:id="_DsJTpgWiEey-kNQ7esRa_g"/> </children> <styles xmi:type="notation:ShapeStyle" xmi:id="_DsJToQWiEey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_DsJTogWiEey-kNQ7esRa_g" x="1890" y="-18" width="147" height="100"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_DsJTogWiEey-kNQ7esRa_g" x="1847" y="-391" width="147" height="100"/> </children> <children xmi:type="notation:Node" xmi:id="_FeuEgAWiEey-kNQ7esRa_g" type="2003" element="_FemvwAWiEey-kNQ7esRa_g"> <children xmi:type="notation:Node" xmi:id="_FeuEgwWiEey-kNQ7esRa_g" type="5007"/> @@ -349,7 +341,7 @@ <styles xmi:type="notation:FilteringStyle" xmi:id="_FeuEhgWiEey-kNQ7esRa_g"/> </children> <styles xmi:type="notation:ShapeStyle" xmi:id="_FeuEgQWiEey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_FeuEggWiEey-kNQ7esRa_g" x="1656" y="132" width="120" height="100"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_FeuEggWiEey-kNQ7esRa_g" x="1613" y="-241" width="120" height="100"/> </children> <children xmi:type="notation:Node" xmi:id="_GbdZkAWiEey-kNQ7esRa_g" type="2003" element="_GbXS8AWiEey-kNQ7esRa_g"> <children xmi:type="notation:Node" xmi:id="_GbdZkwWiEey-kNQ7esRa_g" type="5007"/> @@ -362,34 +354,41 @@ <styles xmi:type="notation:FilteringStyle" xmi:id="_GbdZlgWiEey-kNQ7esRa_g"/> </children> <styles xmi:type="notation:ShapeStyle" xmi:id="_GbdZkQWiEey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GbdZkgWiEey-kNQ7esRa_g" x="1818" y="132" width="120" height="100"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GbdZkgWiEey-kNQ7esRa_g" x="1775" y="-241" width="120" height="100"/> </children> <children xmi:type="notation:Node" xmi:id="_NxDRoAWjEey-kNQ7esRa_g" type="2003" element="_Nw8j8AWjEey-kNQ7esRa_g"> <children xmi:type="notation:Node" xmi:id="_NxDRowWjEey-kNQ7esRa_g" type="5007"/> <children xmi:type="notation:Node" xmi:id="_NxDRpAWjEey-kNQ7esRa_g" type="7004"> + <children xmi:type="notation:Node" xmi:id="_5-5BcCeeEeydzb6PKf1sDQ" type="3010" element="_5-c8kCeeEeydzb6PKf1sDQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_5-5BcSeeEeydzb6PKf1sDQ" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_5-5BcieeEeydzb6PKf1sDQ"/> + </children> <styles xmi:type="notation:SortingStyle" xmi:id="_NxDRpQWjEey-kNQ7esRa_g"/> <styles xmi:type="notation:FilteringStyle" xmi:id="_NxDRpgWjEey-kNQ7esRa_g"/> </children> <styles xmi:type="notation:ShapeStyle" xmi:id="_NxDRoQWjEey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_NxDRogWjEey-kNQ7esRa_g" x="1404" y="-12" width="120" height="100"/> - </children> - <children xmi:type="notation:Node" xmi:id="_Sn_ycAWjEey-kNQ7esRa_g" type="2003" element="_Sn32oAWjEey-kNQ7esRa_g"> - <children xmi:type="notation:Node" xmi:id="_SoAZgAWjEey-kNQ7esRa_g" type="5007"/> - <children xmi:type="notation:Node" xmi:id="_SoAZgQWjEey-kNQ7esRa_g" type="7004"> - <styles xmi:type="notation:SortingStyle" xmi:id="_SoAZggWjEey-kNQ7esRa_g"/> - <styles xmi:type="notation:FilteringStyle" xmi:id="_SoAZgwWjEey-kNQ7esRa_g"/> - </children> - <styles xmi:type="notation:ShapeStyle" xmi:id="_Sn_ycQWjEey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Sn_ycgWjEey-kNQ7esRa_g" x="1350" y="144" width="120" height="100"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_NxDRogWjEey-kNQ7esRa_g" x="1361" y="-408" width="120" height="100"/> </children> <children xmi:type="notation:Node" xmi:id="_YPBsYAWjEey-kNQ7esRa_g" type="2003" element="_YO6XoAWjEey-kNQ7esRa_g"> <children xmi:type="notation:Node" xmi:id="_YPBsYwWjEey-kNQ7esRa_g" type="5007"/> <children xmi:type="notation:Node" xmi:id="_YPBsZAWjEey-kNQ7esRa_g" type="7004"> + <children xmi:type="notation:Node" xmi:id="_ZINmUCdREey8t_kDLBrwCg" type="3010" element="_ZHyIgCdREey8t_kDLBrwCg"> + <styles xmi:type="notation:FontStyle" xmi:id="_ZINmUSdREey8t_kDLBrwCg" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_ZIONYCdREey8t_kDLBrwCg"/> + </children> + <children xmi:type="notation:Node" xmi:id="_dZcK8CdREey8t_kDLBrwCg" type="3010" element="_dZJ3ECdREey8t_kDLBrwCg"> + <styles xmi:type="notation:FontStyle" xmi:id="_dZcK8SdREey8t_kDLBrwCg" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_dZcK8idREey8t_kDLBrwCg"/> + </children> + <children xmi:type="notation:Node" xmi:id="_g0umECdREey8t_kDLBrwCg" type="3010" element="_g0c5QCdREey8t_kDLBrwCg"> + <styles xmi:type="notation:FontStyle" xmi:id="_g0umESdREey8t_kDLBrwCg" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_g0umEidREey8t_kDLBrwCg"/> + </children> <styles xmi:type="notation:SortingStyle" xmi:id="_YPBsZQWjEey-kNQ7esRa_g"/> <styles xmi:type="notation:FilteringStyle" xmi:id="_YPBsZgWjEey-kNQ7esRa_g"/> </children> <styles xmi:type="notation:ShapeStyle" xmi:id="_YPBsYQWjEey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_YPBsYgWjEey-kNQ7esRa_g" x="1476" y="144" width="120" height="100"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_YPBsYgWjEey-kNQ7esRa_g" x="1433" y="-229" width="120" height="100"/> </children> <children xmi:type="notation:Node" xmi:id="_s0mCMAWjEey-kNQ7esRa_g" type="2003" element="_s0dfUAWjEey-kNQ7esRa_g"> <children xmi:type="notation:Node" xmi:id="_s0mCMwWjEey-kNQ7esRa_g" type="5007"/> @@ -402,11 +401,15 @@ <styles xmi:type="notation:FontStyle" xmi:id="_qBsbcQcREey-kNQ7esRa_g" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> <layoutConstraint xmi:type="notation:Location" xmi:id="_qBsbcgcREey-kNQ7esRa_g"/> </children> + <children xmi:type="notation:Node" xmi:id="_9OAo0CeeEeydzb6PKf1sDQ" type="3010" element="_9NuU8CeeEeydzb6PKf1sDQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_9OAo0SeeEeydzb6PKf1sDQ" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_9OAo0ieeEeydzb6PKf1sDQ"/> + </children> <styles xmi:type="notation:SortingStyle" xmi:id="_s0mpQQWjEey-kNQ7esRa_g"/> <styles xmi:type="notation:FilteringStyle" xmi:id="_s0mpQgWjEey-kNQ7esRa_g"/> </children> <styles xmi:type="notation:ShapeStyle" xmi:id="_s0mCMQWjEey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_s0mCMgWjEey-kNQ7esRa_g" x="1035" y="-18" width="120" height="100"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_s0mCMgWjEey-kNQ7esRa_g" x="1032" y="-390" width="132" height="106"/> </children> <children xmi:type="notation:Node" xmi:id="_lCMqkAZsEey-kNQ7esRa_g" type="2003" element="_lBuJcAZsEey-kNQ7esRa_g"> <children xmi:type="notation:Node" xmi:id="_lCN4sAZsEey-kNQ7esRa_g" type="5007"/> @@ -415,56 +418,15 @@ <styles xmi:type="notation:FontStyle" xmi:id="_UpH4wRFAEeydeasO1RaQEg" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> <layoutConstraint xmi:type="notation:Location" xmi:id="_UpIf0BFAEeydeasO1RaQEg"/> </children> + <children xmi:type="notation:Node" xmi:id="_ooLRABvcEeyPOIo-WqURQQ" type="3010" element="_onxBUBvcEeyPOIo-WqURQQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_ooLRARvcEeyPOIo-WqURQQ" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_ooLRAhvcEeyPOIo-WqURQQ"/> + </children> <styles xmi:type="notation:SortingStyle" xmi:id="_lCOfwQZsEey-kNQ7esRa_g"/> <styles xmi:type="notation:FilteringStyle" xmi:id="_lCOfwgZsEey-kNQ7esRa_g"/> </children> <styles xmi:type="notation:ShapeStyle" xmi:id="_lCNRoAZsEey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_lCNRoQZsEey-kNQ7esRa_g" x="1542" y="714" width="120" height="100"/> - </children> - <children xmi:type="notation:Node" xmi:id="_ovs3EAZsEey-kNQ7esRa_g" type="2003" element="_ovifAAZsEey-kNQ7esRa_g"> - <children xmi:type="notation:Node" xmi:id="_ovs3EwZsEey-kNQ7esRa_g" type="5007"/> - <children xmi:type="notation:Node" xmi:id="_ovs3FAZsEey-kNQ7esRa_g" type="7004"> - <styles xmi:type="notation:SortingStyle" xmi:id="_ovs3FQZsEey-kNQ7esRa_g"/> - <styles xmi:type="notation:FilteringStyle" xmi:id="_ovs3FgZsEey-kNQ7esRa_g"/> - </children> - <styles xmi:type="notation:ShapeStyle" xmi:id="_ovs3EQZsEey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ovs3EgZsEey-kNQ7esRa_g" x="2328" y="-174" width="120" height="100"/> - </children> - <children xmi:type="notation:Node" xmi:id="_uNQr8AZsEey-kNQ7esRa_g" type="2003" element="_uNHiAAZsEey-kNQ7esRa_g"> - <children xmi:type="notation:Node" xmi:id="_uNRTAAZsEey-kNQ7esRa_g" type="5007"/> - <children xmi:type="notation:Node" xmi:id="_uNRTAQZsEey-kNQ7esRa_g" type="7004"> - <styles xmi:type="notation:SortingStyle" xmi:id="_uNRTAgZsEey-kNQ7esRa_g"/> - <styles xmi:type="notation:FilteringStyle" xmi:id="_uNRTAwZsEey-kNQ7esRa_g"/> - </children> - <styles xmi:type="notation:ShapeStyle" xmi:id="_uNQr8QZsEey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_uNQr8gZsEey-kNQ7esRa_g" x="2322" y="120" width="120" height="100"/> - </children> - <children xmi:type="notation:Node" xmi:id="_vpk48AZsEey-kNQ7esRa_g" type="2003" element="_vpcWEAZsEey-kNQ7esRa_g"> - <children xmi:type="notation:Node" xmi:id="_vpk48wZsEey-kNQ7esRa_g" type="5007"/> - <children xmi:type="notation:Node" xmi:id="_vpk49AZsEey-kNQ7esRa_g" type="7004"> - <styles xmi:type="notation:SortingStyle" xmi:id="_vpk49QZsEey-kNQ7esRa_g"/> - <styles xmi:type="notation:FilteringStyle" xmi:id="_vpk49gZsEey-kNQ7esRa_g"/> - </children> - <styles xmi:type="notation:ShapeStyle" xmi:id="_vpk48QZsEey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_vpk48gZsEey-kNQ7esRa_g" x="2478" y="120" width="138" height="100"/> - </children> - <children xmi:type="notation:Node" xmi:id="_yn7gcAZsEey-kNQ7esRa_g" type="2003" element="_yny9kAZsEey-kNQ7esRa_g"> - <children xmi:type="notation:Node" xmi:id="_yn7gcwZsEey-kNQ7esRa_g" type="5007"/> - <children xmi:type="notation:Node" xmi:id="_yn7gdAZsEey-kNQ7esRa_g" type="7004"> - <styles xmi:type="notation:SortingStyle" xmi:id="_yn7gdQZsEey-kNQ7esRa_g"/> - <styles xmi:type="notation:FilteringStyle" xmi:id="_yn7gdgZsEey-kNQ7esRa_g"/> - </children> - <styles xmi:type="notation:ShapeStyle" xmi:id="_yn7gcQZsEey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_yn7gcgZsEey-kNQ7esRa_g" x="2658" y="120" width="188" height="100"/> - </children> - <children xmi:type="notation:Node" xmi:id="_60erIAZsEey-kNQ7esRa_g" type="2003" element="_60U6IAZsEey-kNQ7esRa_g"> - <children xmi:type="notation:Node" xmi:id="_60fSMAZsEey-kNQ7esRa_g" type="5007"/> - <children xmi:type="notation:Node" xmi:id="_60fSMQZsEey-kNQ7esRa_g" type="7004"> - <styles xmi:type="notation:SortingStyle" xmi:id="_60fSMgZsEey-kNQ7esRa_g"/> - <styles xmi:type="notation:FilteringStyle" xmi:id="_60fSMwZsEey-kNQ7esRa_g"/> - </children> - <styles xmi:type="notation:ShapeStyle" xmi:id="_60erIQZsEey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_60erIgZsEey-kNQ7esRa_g" x="2886" y="120" width="144" height="100"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_lCNRoQZsEey-kNQ7esRa_g" x="1512" y="456" width="120" height="100"/> </children> <children xmi:type="notation:Node" xmi:id="_IONsYAZtEey-kNQ7esRa_g" type="2003" element="_IOFwkAZtEey-kNQ7esRa_g"> <children xmi:type="notation:Node" xmi:id="_IONsYwZtEey-kNQ7esRa_g" type="5007"/> @@ -487,33 +449,6 @@ <styles xmi:type="notation:ShapeStyle" xmi:id="_IONsYQZtEey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> <layoutConstraint xmi:type="notation:Bounds" xmi:id="_IONsYgZtEey-kNQ7esRa_g" x="2550" y="306" width="237" height="119"/> </children> - <children xmi:type="notation:Node" xmi:id="_fnNG4AZ_Eey-kNQ7esRa_g" type="2003" element="_fnEkAAZ_Eey-kNQ7esRa_g"> - <children xmi:type="notation:Node" xmi:id="_fnNt8AZ_Eey-kNQ7esRa_g" type="5007"/> - <children xmi:type="notation:Node" xmi:id="_fnNt8QZ_Eey-kNQ7esRa_g" type="7004"> - <styles xmi:type="notation:SortingStyle" xmi:id="_fnNt8gZ_Eey-kNQ7esRa_g"/> - <styles xmi:type="notation:FilteringStyle" xmi:id="_fnNt8wZ_Eey-kNQ7esRa_g"/> - </children> - <styles xmi:type="notation:ShapeStyle" xmi:id="_fnNG4QZ_Eey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_fnNG4gZ_Eey-kNQ7esRa_g" x="2658" y="18" width="188" height="100"/> - </children> - <children xmi:type="notation:Node" xmi:id="_jeN0sAZ_Eey-kNQ7esRa_g" type="2003" element="_jeEDsAZ_Eey-kNQ7esRa_g"> - <children xmi:type="notation:Node" xmi:id="_jeN0swZ_Eey-kNQ7esRa_g" type="5007"/> - <children xmi:type="notation:Node" xmi:id="_jeN0tAZ_Eey-kNQ7esRa_g" type="7004"> - <styles xmi:type="notation:SortingStyle" xmi:id="_jeN0tQZ_Eey-kNQ7esRa_g"/> - <styles xmi:type="notation:FilteringStyle" xmi:id="_jeN0tgZ_Eey-kNQ7esRa_g"/> - </children> - <styles xmi:type="notation:ShapeStyle" xmi:id="_jeN0sQZ_Eey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_jeN0sgZ_Eey-kNQ7esRa_g" x="2880" y="6" width="183" height="100"/> - </children> - <children xmi:type="notation:Node" xmi:id="_PfGlcAaAEey-kNQ7esRa_g" type="2003" element="_Pe6YMAaAEey-kNQ7esRa_g"> - <children xmi:type="notation:Node" xmi:id="_PfGlcwaAEey-kNQ7esRa_g" type="5007"/> - <children xmi:type="notation:Node" xmi:id="_PfGldAaAEey-kNQ7esRa_g" type="7004"> - <styles xmi:type="notation:SortingStyle" xmi:id="_PfGldQaAEey-kNQ7esRa_g"/> - <styles xmi:type="notation:FilteringStyle" xmi:id="_PfGldgaAEey-kNQ7esRa_g"/> - </children> - <styles xmi:type="notation:ShapeStyle" xmi:id="_PfGlcQaAEey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PfGlcgaAEey-kNQ7esRa_g" x="2322" y="325" width="180" height="100"/> - </children> <children xmi:type="notation:Node" xmi:id="_nuczcAaCEey-kNQ7esRa_g" type="2003" element="_nuR0UAaCEey-kNQ7esRa_g"> <children xmi:type="notation:Node" xmi:id="_nuczcwaCEey-kNQ7esRa_g" type="5007"/> <children xmi:type="notation:Node" xmi:id="_nuczdAaCEey-kNQ7esRa_g" type="7004"> @@ -539,7 +474,7 @@ <styles xmi:type="notation:FilteringStyle" xmi:id="_NNRv9gaEEey-kNQ7esRa_g"/> </children> <styles xmi:type="notation:ShapeStyle" xmi:id="_NNRv8QaEEey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_NNRv8gaEEey-kNQ7esRa_g" x="87" y="-96" width="120" height="100"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_NNRv8gaEEey-kNQ7esRa_g" x="186" y="24" width="120" height="100"/> </children> <children xmi:type="notation:Node" xmi:id="_M0odoAcMEey-kNQ7esRa_g" type="2003" element="_M0fTsAcMEey-kNQ7esRa_g"> <children xmi:type="notation:Node" xmi:id="_M0odowcMEey-kNQ7esRa_g" type="5007"/> @@ -548,7 +483,7 @@ <styles xmi:type="notation:FilteringStyle" xmi:id="_M0odpgcMEey-kNQ7esRa_g"/> </children> <styles xmi:type="notation:ShapeStyle" xmi:id="_M0odoQcMEey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_M0odogcMEey-kNQ7esRa_g" x="1956" y="132" width="120" height="100"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_M0odogcMEey-kNQ7esRa_g" x="1913" y="-241" width="120" height="100"/> </children> <children xmi:type="notation:Node" xmi:id="_zBjrsAcMEey-kNQ7esRa_g" type="2003" element="_zBZToAcMEey-kNQ7esRa_g"> <children xmi:type="notation:Node" xmi:id="_zBkSwAcMEey-kNQ7esRa_g" type="5007"/> @@ -561,7 +496,7 @@ <styles xmi:type="notation:FilteringStyle" xmi:id="_zBkSwwcMEey-kNQ7esRa_g"/> </children> <styles xmi:type="notation:ShapeStyle" xmi:id="_zBjrsQcMEey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_zBjrsgcMEey-kNQ7esRa_g" x="2118" y="132" width="120" height="100"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_zBjrsgcMEey-kNQ7esRa_g" x="2075" y="-241" width="120" height="100"/> </children> <children xmi:type="notation:Node" xmi:id="_I-Y58AcOEey-kNQ7esRa_g" type="2003" element="_I-N60AcOEey-kNQ7esRa_g"> <children xmi:type="notation:Node" xmi:id="_I-Y58wcOEey-kNQ7esRa_g" type="5007"/> @@ -574,7 +509,7 @@ <styles xmi:type="notation:FilteringStyle" xmi:id="_I-Y59gcOEey-kNQ7esRa_g"/> </children> <styles xmi:type="notation:ShapeStyle" xmi:id="_I-Y58QcOEey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_I-Y58gcOEey-kNQ7esRa_g" x="897" y="138" width="120" height="100"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_I-Y58gcOEey-kNQ7esRa_g" x="894" y="-228" width="120" height="100"/> </children> <children xmi:type="notation:Node" xmi:id="_K7QPQAcOEey-kNQ7esRa_g" type="2003" element="_K7F3MAcOEey-kNQ7esRa_g"> <children xmi:type="notation:Node" xmi:id="_K7QPQwcOEey-kNQ7esRa_g" type="5007"/> @@ -583,16 +518,7 @@ <styles xmi:type="notation:FilteringStyle" xmi:id="_K7QPRgcOEey-kNQ7esRa_g"/> </children> <styles xmi:type="notation:ShapeStyle" xmi:id="_K7QPQQcOEey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_K7QPQgcOEey-kNQ7esRa_g" x="1047" y="138" width="120" height="100"/> - </children> - <children xmi:type="notation:Node" xmi:id="_CJpvYAcREey-kNQ7esRa_g" type="2003" element="_CJeJMAcREey-kNQ7esRa_g"> - <children xmi:type="notation:Node" xmi:id="_CJqWcAcREey-kNQ7esRa_g" type="5007"/> - <children xmi:type="notation:Node" xmi:id="_CJqWcQcREey-kNQ7esRa_g" type="7004"> - <styles xmi:type="notation:SortingStyle" xmi:id="_CJqWcgcREey-kNQ7esRa_g"/> - <styles xmi:type="notation:FilteringStyle" xmi:id="_CJqWcwcREey-kNQ7esRa_g"/> - </children> - <styles xmi:type="notation:ShapeStyle" xmi:id="_CJpvYQcREey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CJpvYgcREey-kNQ7esRa_g" x="2322" y="582" width="120" height="100"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_K7QPQgcOEey-kNQ7esRa_g" x="1044" y="-228" width="120" height="100"/> </children> <children xmi:type="notation:Node" xmi:id="_VKA6kAcUEey-kNQ7esRa_g" type="2003" element="_VJ0tUAcUEey-kNQ7esRa_g"> <children xmi:type="notation:Node" xmi:id="_VKA6kwcUEey-kNQ7esRa_g" type="5007"/> @@ -605,7 +531,7 @@ <styles xmi:type="notation:FilteringStyle" xmi:id="_VKA6lgcUEey-kNQ7esRa_g"/> </children> <styles xmi:type="notation:ShapeStyle" xmi:id="_VKA6kQcUEey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_VKA6kgcUEey-kNQ7esRa_g" x="1185" y="138" width="120" height="100"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_VKA6kgcUEey-kNQ7esRa_g" x="1182" y="-228" width="120" height="100"/> </children> <children xmi:type="notation:Node" xmi:id="_Ml8T0AcsEey-kNQ7esRa_g" type="2003" element="_Mlx7wAcsEey-kNQ7esRa_g"> <children xmi:type="notation:Node" xmi:id="_Ml8T0wcsEey-kNQ7esRa_g" type="5007"/> @@ -614,11 +540,19 @@ <styles xmi:type="notation:FontStyle" xmi:id="_SqgeUQcsEey-kNQ7esRa_g" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> <layoutConstraint xmi:type="notation:Location" xmi:id="_SqgeUgcsEey-kNQ7esRa_g"/> </children> + <children xmi:type="notation:Node" xmi:id="_91n0IBr1EeyPOIo-WqURQQ" type="3010" element="_91YjkBr1EeyPOIo-WqURQQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_91n0IRr1EeyPOIo-WqURQQ" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_91n0Ihr1EeyPOIo-WqURQQ"/> + </children> + <children xmi:type="notation:Node" xmi:id="_iS0HQCXpEeyb5750APOSQw" type="3010" element="_iRkKECXpEeyb5750APOSQw"> + <styles xmi:type="notation:FontStyle" xmi:id="_iS0HQSXpEeyb5750APOSQw" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_iS0HQiXpEeyb5750APOSQw"/> + </children> <styles xmi:type="notation:SortingStyle" xmi:id="_Ml864QcsEey-kNQ7esRa_g"/> <styles xmi:type="notation:FilteringStyle" xmi:id="_Ml864gcsEey-kNQ7esRa_g"/> </children> <styles xmi:type="notation:ShapeStyle" xmi:id="_Ml8T0QcsEey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Ml8T0gcsEey-kNQ7esRa_g" x="432" y="572" width="141" height="100"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Ml8T0gcsEey-kNQ7esRa_g" x="468" y="475" width="141" height="100"/> </children> <children xmi:type="notation:Shape" xmi:id="_KThIwActEey-kNQ7esRa_g" type="Note" fontName="Segoe UI" description="zB Bluetooth-Sensor Referenzpositionen" fillColor="13369343" transparency="0" lineColor="6737151" lineWidth="1"> <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_KThIwQctEey-kNQ7esRa_g" source="specificStyles"> @@ -633,7 +567,7 @@ <styles xmi:type="notation:TextStyle" xmi:id="_KThIwwctEey-kNQ7esRa_g" textAlignment="Center"/> <styles xmi:type="notation:LineTypeStyle" xmi:id="_KThIxActEey-kNQ7esRa_g"/> <element xsi:nil="true"/> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_KThIxQctEey-kNQ7esRa_g" x="1992" y="546"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_KThIxQctEey-kNQ7esRa_g" x="2016" y="480"/> </children> <children xmi:type="notation:Shape" xmi:id="_fXJ6oActEey-kNQ7esRa_g" type="Note" fontName="Segoe UI" description="EventFilterConfiguration - Mehrdeutigkeiten: Mehrere Positionssensoren pro Agent. Eine Strategie ist optimizeMeasurementError (Sensordatenfusion). Ein ambigruityParameter ist dann ambiguityToleranceInterval, also wie weit dürfen zwei Sensorwerte zeitlich auseinander liegen für Sensordatenfusion" fillColor="13369343" transparency="0" lineColor="6737151" lineWidth="1"> <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_fXJ6oQctEey-kNQ7esRa_g" source="specificStyles"> @@ -657,14 +591,6 @@ <styles xmi:type="notation:FontStyle" xmi:id="_1t7TQRE8EeydeasO1RaQEg" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> <layoutConstraint xmi:type="notation:Location" xmi:id="_1t7TQhE8EeydeasO1RaQEg"/> </children> - <children xmi:type="notation:Node" xmi:id="_GKgacBE9EeydeasO1RaQEg" type="3010" element="_GJ1sEBE9EeydeasO1RaQEg"> - <styles xmi:type="notation:FontStyle" xmi:id="_GKgacRE9EeydeasO1RaQEg" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Location" xmi:id="_GKgachE9EeydeasO1RaQEg"/> - </children> - <children xmi:type="notation:Node" xmi:id="_RTTT0BE9EeydeasO1RaQEg" type="3010" element="_RSvTIBE9EeydeasO1RaQEg"> - <styles xmi:type="notation:FontStyle" xmi:id="_RTTT0RE9EeydeasO1RaQEg" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Location" xmi:id="_RTTT0hE9EeydeasO1RaQEg"/> - </children> <children xmi:type="notation:Node" xmi:id="_Wz2yUBE9EeydeasO1RaQEg" type="3010" element="_WzdJsBE9EeydeasO1RaQEg"> <styles xmi:type="notation:FontStyle" xmi:id="_Wz2yURE9EeydeasO1RaQEg" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> <layoutConstraint xmi:type="notation:Location" xmi:id="_Wz2yUhE9EeydeasO1RaQEg"/> @@ -693,11 +619,23 @@ <styles xmi:type="notation:FontStyle" xmi:id="_1GpwsRFkEeydeasO1RaQEg" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> <layoutConstraint xmi:type="notation:Location" xmi:id="_1GpwshFkEeydeasO1RaQEg"/> </children> + <children xmi:type="notation:Node" xmi:id="_eKDl0B_NEeyaJIyxidrtuQ" type="3010" element="_eIgtsB_NEeyaJIyxidrtuQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_eKDl0R_NEeyaJIyxidrtuQ" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_eKDl0h_NEeyaJIyxidrtuQ"/> + </children> + <children xmi:type="notation:Node" xmi:id="_iWqJIB_NEeyaJIyxidrtuQ" type="3010" element="_iWX1QB_NEeyaJIyxidrtuQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_iWqJIR_NEeyaJIyxidrtuQ" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_iWqJIh_NEeyaJIyxidrtuQ"/> + </children> + <children xmi:type="notation:Node" xmi:id="_Fx5DEIThEeybc9Dj6t-c7Q" type="3010" element="_Fvq1gIThEeybc9Dj6t-c7Q"> + <styles xmi:type="notation:FontStyle" xmi:id="_Fx5DEYThEeybc9Dj6t-c7Q" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_Fx5DEoThEeybc9Dj6t-c7Q"/> + </children> <styles xmi:type="notation:SortingStyle" xmi:id="_D9ZrhQc-Eey-kNQ7esRa_g"/> <styles xmi:type="notation:FilteringStyle" xmi:id="_D9Zrhgc-Eey-kNQ7esRa_g"/> </children> <styles xmi:type="notation:ShapeStyle" xmi:id="_D9ZrgQc-Eey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_D9Zrggc-Eey-kNQ7esRa_g" x="2635" y="502" width="185" height="240"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_D9Zrggc-Eey-kNQ7esRa_g" x="2724" y="-299" width="185" height="356"/> </children> <children xmi:type="notation:Node" xmi:id="_KIxxkBFjEeydeasO1RaQEg" type="2003" element="_KHc74BFjEeydeasO1RaQEg"> <children xmi:type="notation:Node" xmi:id="_KI2DABFjEeydeasO1RaQEg" type="5007"/> @@ -710,7 +648,7 @@ <styles xmi:type="notation:FilteringStyle" xmi:id="_KI4fQhFjEeydeasO1RaQEg"/> </children> <styles xmi:type="notation:ShapeStyle" xmi:id="_KIxxkRFjEeydeasO1RaQEg" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_KIxxkhFjEeydeasO1RaQEg" x="2165" y="751" width="140" height="50"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_KIxxkhFjEeydeasO1RaQEg" x="2165" y="751" width="160" height="116"/> </children> <children xmi:type="notation:Node" xmi:id="_1eTRIBFjEeydeasO1RaQEg" type="2003" element="_1d2lMBFjEeydeasO1RaQEg"> <children xmi:type="notation:Node" xmi:id="_1eTRIxFjEeydeasO1RaQEg" type="5007"/> @@ -723,7 +661,7 @@ <styles xmi:type="notation:FilteringStyle" xmi:id="_1eT4MhFjEeydeasO1RaQEg"/> </children> <styles xmi:type="notation:ShapeStyle" xmi:id="_1eTRIRFjEeydeasO1RaQEg" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1eTRIhFjEeydeasO1RaQEg" x="2342" y="751" width="140" height="50"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1eTRIhFjEeydeasO1RaQEg" x="2342" y="751" width="140" height="92"/> </children> <children xmi:type="notation:Node" xmi:id="_RzygABFkEeydeasO1RaQEg" type="2003" element="_RzioYBFkEeydeasO1RaQEg"> <children xmi:type="notation:Node" xmi:id="_RzzHEBFkEeydeasO1RaQEg" type="5007"/> @@ -736,7 +674,7 @@ <styles xmi:type="notation:FilteringStyle" xmi:id="_RzzHExFkEeydeasO1RaQEg"/> </children> <styles xmi:type="notation:ShapeStyle" xmi:id="_RzygARFkEeydeasO1RaQEg" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_RzygAhFkEeydeasO1RaQEg" x="2910" y="751" width="140" height="50"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_RzygAhFkEeydeasO1RaQEg" x="2910" y="751" width="171" height="104"/> </children> <children xmi:type="notation:Node" xmi:id="_bpQwUBFkEeydeasO1RaQEg" type="2003" element="_bo-ccBFkEeydeasO1RaQEg"> <children xmi:type="notation:Node" xmi:id="_bpQwUxFkEeydeasO1RaQEg" type="5007"/> @@ -762,7 +700,105 @@ <styles xmi:type="notation:FilteringStyle" xmi:id="_I2AawxFmEeydeasO1RaQEg"/> </children> <styles xmi:type="notation:ShapeStyle" xmi:id="_I1_zsRFmEeydeasO1RaQEg" fontName="Segoe UI" fontHeight="8"/> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_I1_zshFmEeydeasO1RaQEg" x="2535" y="751" width="140" height="50"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_I1_zshFmEeydeasO1RaQEg" x="2535" y="751" width="140" height="86"/> + </children> + <children xmi:type="notation:Node" xmi:id="_Q9NrECxEEeyc2bacnWuMrg" type="2003" element="_Q7S_gCxEEeyc2bacnWuMrg"> + <children xmi:type="notation:Node" xmi:id="_Q9SjkCxEEeyc2bacnWuMrg" type="5007"/> + <children xmi:type="notation:Node" xmi:id="_Q9TKoCxEEeyc2bacnWuMrg" type="7004"> + <children xmi:type="notation:Node" xmi:id="_dww2ECxEEeyc2bacnWuMrg" type="3010" element="_dwRt4CxEEeyc2bacnWuMrg"> + <styles xmi:type="notation:FontStyle" xmi:id="_dww2ESxEEeyc2bacnWuMrg" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_dww2EixEEeyc2bacnWuMrg"/> + </children> + <children xmi:type="notation:Node" xmi:id="_hNpMoCxEEeyc2bacnWuMrg" type="3010" element="_hNSnUCxEEeyc2bacnWuMrg"> + <styles xmi:type="notation:FontStyle" xmi:id="_hNpMoSxEEeyc2bacnWuMrg" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_hNpMoixEEeyc2bacnWuMrg"/> + </children> + <styles xmi:type="notation:SortingStyle" xmi:id="_Q9TKoSxEEeyc2bacnWuMrg"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_Q9TKoixEEeyc2bacnWuMrg"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="_Q9NrESxEEeyc2bacnWuMrg" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Q9NrEixEEeyc2bacnWuMrg" x="1506" y="306" width="171" height="75"/> + </children> + <children xmi:type="notation:Node" xmi:id="_ipaesCxSEeyc2bacnWuMrg" type="2003" element="_ipG8sCxSEeyc2bacnWuMrg"> + <children xmi:type="notation:Node" xmi:id="_ipbFwCxSEeyc2bacnWuMrg" type="5007"/> + <children xmi:type="notation:Node" xmi:id="_ipbFwSxSEeyc2bacnWuMrg" type="7004"> + <children xmi:type="notation:Node" xmi:id="_WEJAsDC6Eeys5_IXgF_hBA" type="3010" element="_WDgukDC6Eeys5_IXgF_hBA"> + <styles xmi:type="notation:FontStyle" xmi:id="_WEJAsTC6Eeys5_IXgF_hBA" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_WEJAsjC6Eeys5_IXgF_hBA"/> + </children> + <styles xmi:type="notation:SortingStyle" xmi:id="_ipbFwixSEeyc2bacnWuMrg"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_ipbFwyxSEeyc2bacnWuMrg"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="_ipaesSxSEeyc2bacnWuMrg" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ipaesixSEeyc2bacnWuMrg" x="1806" y="714" width="195" height="100"/> + </children> + <children xmi:type="notation:Node" xmi:id="_-3jIcJSJEeyJ0bON1VCj7g" type="2003" element="_-2weQJSJEeyJ0bON1VCj7g"> + <children xmi:type="notation:Node" xmi:id="_-3jvgJSJEeyJ0bON1VCj7g" type="5007"/> + <children xmi:type="notation:Node" xmi:id="_-3jvgZSJEeyJ0bON1VCj7g" type="7004"> + <children xmi:type="notation:Node" xmi:id="_E3gfwJSKEeyJ0bON1VCj7g" type="3010" element="_E3M9wJSKEeyJ0bON1VCj7g"> + <styles xmi:type="notation:FontStyle" xmi:id="_E3gfwZSKEeyJ0bON1VCj7g" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_E3gfwpSKEeyJ0bON1VCj7g"/> + </children> + <children xmi:type="notation:Node" xmi:id="_gVeQwJSKEeyJ0bON1VCj7g" type="3010" element="_gVMj8JSKEeyJ0bON1VCj7g"> + <styles xmi:type="notation:FontStyle" xmi:id="_gVeQwZSKEeyJ0bON1VCj7g" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_gVeQwpSKEeyJ0bON1VCj7g"/> + </children> + <children xmi:type="notation:Node" xmi:id="_R2M8EJSQEeyJ0bON1VCj7g" type="3010" element="_R19rgJSQEeyJ0bON1VCj7g"> + <styles xmi:type="notation:FontStyle" xmi:id="_R2M8EZSQEeyJ0bON1VCj7g" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_R2M8EpSQEeyJ0bON1VCj7g"/> + </children> + <children xmi:type="notation:Node" xmi:id="_YXErQJSUEeyJ0bON1VCj7g" type="3010" element="_YW1asJSUEeyJ0bON1VCj7g"> + <styles xmi:type="notation:FontStyle" xmi:id="_YXErQZSUEeyJ0bON1VCj7g" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_YXErQpSUEeyJ0bON1VCj7g"/> + </children> + <children xmi:type="notation:Node" xmi:id="_5dKL8JriEeybDM53IXNodQ" type="3010" element="_5c0NsJriEeybDM53IXNodQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_5dKL8ZriEeybDM53IXNodQ" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_5dKL8priEeybDM53IXNodQ"/> + </children> + <styles xmi:type="notation:SortingStyle" xmi:id="_-3jvgpSJEeyJ0bON1VCj7g"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_-3jvg5SJEeyJ0bON1VCj7g"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="_-3jIcZSJEeyJ0bON1VCj7g" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-3jIcpSJEeyJ0bON1VCj7g" x="1477" y="642" width="190" height="142"/> + </children> + <children xmi:type="notation:Node" xmi:id="_swdx1JSKEeyJ0bON1VCj7g" type="2003" element="_swMsEJSKEeyJ0bON1VCj7g"> + <children xmi:type="notation:Node" xmi:id="_swdx15SKEeyJ0bON1VCj7g" type="5007"/> + <children xmi:type="notation:Node" xmi:id="_sweY4JSKEeyJ0bON1VCj7g" type="7004"> + <children xmi:type="notation:Node" xmi:id="_sweY45SKEeyJ0bON1VCj7g" type="3010" element="_swUA0pSKEeyJ0bON1VCj7g"> + <styles xmi:type="notation:FontStyle" xmi:id="_sweY5JSKEeyJ0bON1VCj7g" fontName="Segoe UI" fontHeight="8" italic="true"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_sweY5ZSKEeyJ0bON1VCj7g"/> + </children> + <styles xmi:type="notation:SortingStyle" xmi:id="_sweY4ZSKEeyJ0bON1VCj7g"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_sweY4pSKEeyJ0bON1VCj7g"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="_swdx1ZSKEeyJ0bON1VCj7g" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_swdx1pSKEeyJ0bON1VCj7g" x="2406" y="937" width="140" height="62"/> + </children> + <children xmi:type="notation:Node" xmi:id="_-HZlMJosEeybDM53IXNodQ" type="2003" element="_-GdxEJosEeybDM53IXNodQ"> + <children xmi:type="notation:Node" xmi:id="_-HfEwJosEeybDM53IXNodQ" type="5007"/> + <children xmi:type="notation:Node" xmi:id="_-Hfr0JosEeybDM53IXNodQ" type="7004"> + <children xmi:type="notation:Node" xmi:id="_-HhhAJosEeybDM53IXNodQ" type="3010" element="_-G09cJosEeybDM53IXNodQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_-HhhAZosEeybDM53IXNodQ" fontName="Segoe UI" fontHeight="8" italic="true"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_-HhhAposEeybDM53IXNodQ"/> + </children> + <styles xmi:type="notation:SortingStyle" xmi:id="_-Hfr0ZosEeybDM53IXNodQ"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_-Hfr0posEeybDM53IXNodQ"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="_-HZlMZosEeybDM53IXNodQ" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-HZlMposEeybDM53IXNodQ" x="2715" y="924" width="276" height="141"/> + </children> + <children xmi:type="notation:Node" xmi:id="_evlZ8KEgEeyjYoAVD5IwbQ" type="2003" element="_evTGEKEgEeyjYoAVD5IwbQ"> + <children xmi:type="notation:Node" xmi:id="_evlZ86EgEeyjYoAVD5IwbQ" type="5007"/> + <children xmi:type="notation:Node" xmi:id="_evlZ9KEgEeyjYoAVD5IwbQ" type="7004"> + <children xmi:type="notation:Node" xmi:id="_evmBAKEgEeyjYoAVD5IwbQ" type="3010" element="_evdeJKEgEeyjYoAVD5IwbQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_evmBAaEgEeyjYoAVD5IwbQ" fontName="Segoe UI" fontHeight="8" italic="true"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_evmBAqEgEeyjYoAVD5IwbQ"/> + </children> + <styles xmi:type="notation:SortingStyle" xmi:id="_evlZ9aEgEeyjYoAVD5IwbQ"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_evlZ9qEgEeyjYoAVD5IwbQ"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="_evlZ8aEgEeyjYoAVD5IwbQ" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_evlZ8qEgEeyjYoAVD5IwbQ" x="2232" y="967" width="140" height="50"/> </children> <styles xmi:type="notation:DiagramStyle" xmi:id="_EuqzogQNEey-kNQ7esRa_g"/> <edges xmi:type="notation:Edge" xmi:id="_slHHwAQOEey-kNQ7esRa_g" type="4001" element="_sk66gAQOEey-kNQ7esRa_g" source="_OVBp4AQNEey-kNQ7esRa_g" target="_hS0UIAQOEey-kNQ7esRa_g"> @@ -781,70 +817,22 @@ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_slKyIAQOEey-kNQ7esRa_g" id="(0.6101694915254238,0.0)"/> <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_slKyIQQOEey-kNQ7esRa_g" id="(0.5,0.5)"/> </edges> - <edges xmi:type="notation:Edge" xmi:id="_idWLkAQkEey-kNQ7esRa_g" type="4001" element="_idHiEAQkEey-kNQ7esRa_g" source="_UOFQgAQkEey-kNQ7esRa_g" target="_SIv7sAQkEey-kNQ7esRa_g"> - <children xmi:type="notation:Node" xmi:id="_idWyoAQkEey-kNQ7esRa_g" type="6001"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_idWyoQQkEey-kNQ7esRa_g" x="-10" y="-10"/> - </children> - <children xmi:type="notation:Node" xmi:id="_idWyogQkEey-kNQ7esRa_g" type="6002"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_idWyowQkEey-kNQ7esRa_g" x="-14" y="10"/> - </children> - <children xmi:type="notation:Node" xmi:id="_idWypAQkEey-kNQ7esRa_g" type="6003"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_idWypQQkEey-kNQ7esRa_g" x="-16"/> - </children> - <styles xmi:type="notation:ConnectorStyle" xmi:id="_idWLkQQkEey-kNQ7esRa_g" routing="Tree"/> - <styles xmi:type="notation:FontStyle" xmi:id="_idWLkgQkEey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_idWLkwQkEey-kNQ7esRa_g" points="[0, 22, -206, -9]$[0, 23, -206, -8]$[187, 23, -19, -8]$[187, -18, -19, -49]"/> - <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_idWypgQkEey-kNQ7esRa_g" id="(1.0,0.1836734693877551)"/> - <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_idWypwQkEey-kNQ7esRa_g" id="(0.15172413793103448,0.4489795918367347)"/> - </edges> <edges xmi:type="notation:Edge" xmi:id="_jdZ6YAQkEey-kNQ7esRa_g" type="4001" element="_jdJbsAQkEey-kNQ7esRa_g" source="_VW89EAQkEey-kNQ7esRa_g" target="_aKkdFgQkEey-kNQ7esRa_g"> <children xmi:type="notation:Node" xmi:id="_jdZ6ZAQkEey-kNQ7esRa_g" type="6001"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_jdZ6ZQQkEey-kNQ7esRa_g" x="6" y="-10"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_jdZ6ZQQkEey-kNQ7esRa_g" x="-10" y="-10"/> </children> <children xmi:type="notation:Node" xmi:id="_jdZ6ZgQkEey-kNQ7esRa_g" type="6002"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_jdZ6ZwQkEey-kNQ7esRa_g" x="70" y="-10"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_jdZ6ZwQkEey-kNQ7esRa_g" x="44" y="-59"/> </children> <children xmi:type="notation:Node" xmi:id="_jdZ6aAQkEey-kNQ7esRa_g" type="6003"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_jdZ6aQQkEey-kNQ7esRa_g" x="27" y="-17"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_jdZ6aQQkEey-kNQ7esRa_g" x="22" y="21"/> </children> <styles xmi:type="notation:ConnectorStyle" xmi:id="_jdZ6YQQkEey-kNQ7esRa_g" routing="Tree"/> <styles xmi:type="notation:FontStyle" xmi:id="_jdZ6YgQkEey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_jdZ6YwQkEey-kNQ7esRa_g" points="[0, 0, 160, 39]$[0, -102, 160, -63]$[-174, -102, -14, -63]$[-174, -78, -14, -39]"/> - <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_jdahcAQkEey-kNQ7esRa_g" id="(0.22033898305084745,0.02040816326530612)"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_jdZ6YwQkEey-kNQ7esRa_g" points="[0, -51, 0, 93]$[0, -75, 0, 69]$[-63, -75, -63, 69]$[-63, -85, -63, 59]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_jdahcAQkEey-kNQ7esRa_g" id="(0.4491525423728814,0.21428571428571427)"/> <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_jdahcQQkEey-kNQ7esRa_g" id="(0.9830508474576272,0.3979591836734694)"/> </edges> - <edges xmi:type="notation:Edge" xmi:id="_lXoLYAQkEey-kNQ7esRa_g" type="4001" element="_lXawBgQkEey-kNQ7esRa_g" source="_11mPIAQjEey-kNQ7esRa_g" target="_fodekAQjEey-kNQ7esRa_g"> - <children xmi:type="notation:Node" xmi:id="_lXoycAQkEey-kNQ7esRa_g" type="6001"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_lXoycQQkEey-kNQ7esRa_g" y="-10"/> - </children> - <children xmi:type="notation:Node" xmi:id="_lXoycgQkEey-kNQ7esRa_g" type="6002"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_lXoycwQkEey-kNQ7esRa_g" y="10"/> - </children> - <children xmi:type="notation:Node" xmi:id="_lXoydAQkEey-kNQ7esRa_g" type="6003"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_lXoydQQkEey-kNQ7esRa_g" y="10"/> - </children> - <styles xmi:type="notation:ConnectorStyle" xmi:id="_lXoLYQQkEey-kNQ7esRa_g" routing="Tree"/> - <styles xmi:type="notation:FontStyle" xmi:id="_lXoLYgQkEey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_lXoLYwQkEey-kNQ7esRa_g" points="[0, 0, -67, 108]$[67, -108, 0, 0]"/> - <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_lXoydgQkEey-kNQ7esRa_g" id="(0.5,0.0)"/> - <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_lXoydwQkEey-kNQ7esRa_g" id="(0.5,0.5)"/> - </edges> - <edges xmi:type="notation:Edge" xmi:id="_lyh-sAQkEey-kNQ7esRa_g" type="4001" element="_lyTVNgQkEey-kNQ7esRa_g" source="_37e9kAQjEey-kNQ7esRa_g" target="_fodekAQjEey-kNQ7esRa_g"> - <children xmi:type="notation:Node" xmi:id="_lyh-tAQkEey-kNQ7esRa_g" type="6001"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_lyh-tQQkEey-kNQ7esRa_g" y="-10"/> - </children> - <children xmi:type="notation:Node" xmi:id="_lyh-tgQkEey-kNQ7esRa_g" type="6002"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_lyh-twQkEey-kNQ7esRa_g" y="10"/> - </children> - <children xmi:type="notation:Node" xmi:id="_lyilwAQkEey-kNQ7esRa_g" type="6003"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_lyilwQQkEey-kNQ7esRa_g" y="10"/> - </children> - <styles xmi:type="notation:ConnectorStyle" xmi:id="_lyh-sQQkEey-kNQ7esRa_g" routing="Tree"/> - <styles xmi:type="notation:FontStyle" xmi:id="_lyh-sgQkEey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_lyh-swQkEey-kNQ7esRa_g" points="[0, 0, 99, 72]$[-99, -72, 0, 0]"/> - <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_lyilwgQkEey-kNQ7esRa_g" id="(0.5677966101694916,0.0)"/> - <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_lyilwwQkEey-kNQ7esRa_g" id="(0.5,0.5)"/> - </edges> <edges xmi:type="notation:Edge" xmi:id="_s-PXcAQkEey-kNQ7esRa_g" type="4001" element="_s-J3-AQkEey-kNQ7esRa_g" source="_Pg1TsAQjEey-kNQ7esRa_g" target="_hS0UIAQOEey-kNQ7esRa_g"> <children xmi:type="notation:Node" xmi:id="_s-PXdAQkEey-kNQ7esRa_g" type="6001"> <layoutConstraint xmi:type="notation:Bounds" xmi:id="_s-PXdQQkEey-kNQ7esRa_g" y="-10"/> @@ -863,157 +851,61 @@ </edges> <edges xmi:type="notation:Edge" xmi:id="_-D87MAQkEey-kNQ7esRa_g" type="4001" element="_-DqnUAQkEey-kNQ7esRa_g" source="_OVBp4AQNEey-kNQ7esRa_g" target="_Pg1TsAQjEey-kNQ7esRa_g"> <children xmi:type="notation:Node" xmi:id="_-D87NAQkEey-kNQ7esRa_g" type="6001"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-D87NQQkEey-kNQ7esRa_g" y="-10"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-D87NQQkEey-kNQ7esRa_g" x="-3" y="-10"/> </children> <children xmi:type="notation:Node" xmi:id="_-D87NgQkEey-kNQ7esRa_g" type="6002"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-D87NwQkEey-kNQ7esRa_g" y="10"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-D87NwQkEey-kNQ7esRa_g" x="-5" y="10"/> </children> <children xmi:type="notation:Node" xmi:id="_-D87OAQkEey-kNQ7esRa_g" type="6003"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-D87OQQkEey-kNQ7esRa_g" y="10"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-D87OQQkEey-kNQ7esRa_g" x="-5" y="10"/> </children> <styles xmi:type="notation:ConnectorStyle" xmi:id="_-D87MQQkEey-kNQ7esRa_g" routing="Rectilinear"/> <styles xmi:type="notation:FontStyle" xmi:id="_-D87MgQkEey-kNQ7esRa_g" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> - <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_-D87MwQkEey-kNQ7esRa_g" points="[0, 0, -212, 0]$[212, 0, 0, 0]"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_-D87MwQkEey-kNQ7esRa_g" points="[0, -6, -122, 0]$[122, -6, 0, 0]"/> <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_-D9iQAQkEey-kNQ7esRa_g" id="(1.0,0.12244897959183673)"/> <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_-D9iQQQkEey-kNQ7esRa_g" id="(0.0,0.12244897959183673)"/> </edges> - <edges xmi:type="notation:Edge" xmi:id="__-O2kAQkEey-kNQ7esRa_g" type="4001" element="__99JwAQkEey-kNQ7esRa_g" source="_Pg1TsAQjEey-kNQ7esRa_g" target="_ZOlLYwQjEey-kNQ7esRa_g"> - <children xmi:type="notation:Node" xmi:id="__-O2lAQkEey-kNQ7esRa_g" type="6001"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="__-O2lQQkEey-kNQ7esRa_g" x="3"/> - </children> - <children xmi:type="notation:Node" xmi:id="__-O2lgQkEey-kNQ7esRa_g" type="6002"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="__-O2lwQkEey-kNQ7esRa_g" x="4" y="-10"/> - </children> - <children xmi:type="notation:Node" xmi:id="__-O2mAQkEey-kNQ7esRa_g" type="6003"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="__-O2mQQkEey-kNQ7esRa_g" x="-79" y="10"/> - </children> - <styles xmi:type="notation:ConnectorStyle" xmi:id="__-O2kQQkEey-kNQ7esRa_g" routing="Rectilinear"/> - <styles xmi:type="notation:FontStyle" xmi:id="__-O2kgQkEey-kNQ7esRa_g" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> - <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__-O2kwQkEey-kNQ7esRa_g" points="[0, 36, 102, -90]$[-36, 36, 66, -90]$[-36, 150, 66, 24]$[-56, 150, 46, 24]"/> - <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__-PdoAQkEey-kNQ7esRa_g" id="(0.0,0.12244897959183673)"/> - <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__-PdoQQkEey-kNQ7esRa_g" id="(0.6101694915254238,0.0)"/> - </edges> - <edges xmi:type="notation:Edge" xmi:id="_JBhcAAQlEey-kNQ7esRa_g" type="4001" element="_JBUntgQlEey-kNQ7esRa_g" source="_OVBp4AQNEey-kNQ7esRa_g" target="_C_NUQAQlEey-kNQ7esRa_g"> - <children xmi:type="notation:Node" xmi:id="_JBiDEAQlEey-kNQ7esRa_g" type="6001"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_JBiDEQQlEey-kNQ7esRa_g" y="-10"/> - </children> - <children xmi:type="notation:Node" xmi:id="_JBiDEgQlEey-kNQ7esRa_g" type="6002"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_JBiDEwQlEey-kNQ7esRa_g" y="10"/> - </children> - <children xmi:type="notation:Node" xmi:id="_JBiDFAQlEey-kNQ7esRa_g" type="6003"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_JBiDFQQlEey-kNQ7esRa_g" y="10"/> - </children> - <styles xmi:type="notation:ConnectorStyle" xmi:id="_JBhcAQQlEey-kNQ7esRa_g" routing="Rectilinear"/> - <styles xmi:type="notation:FontStyle" xmi:id="_JBhcAgQlEey-kNQ7esRa_g" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> - <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_JBhcAwQlEey-kNQ7esRa_g" points="[0, 0, 128, 0]$[-128, 0, 0, 0]"/> - <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JBiDFgQlEey-kNQ7esRa_g" id="(0.0,0.030612244897959183)"/> - <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JBiDFwQlEey-kNQ7esRa_g" id="(1.0,0.030612244897959183)"/> - </edges> - <edges xmi:type="notation:Edge" xmi:id="_NKA7YAQlEey-kNQ7esRa_g" type="4001" element="_NJv1oAQlEey-kNQ7esRa_g" source="_Pg1TsAQjEey-kNQ7esRa_g" target="_beL2gAQjEey-kNQ7esRa_g"> - <children xmi:type="notation:Node" xmi:id="_NKA7ZAQlEey-kNQ7esRa_g" type="6001"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_NKA7ZQQlEey-kNQ7esRa_g" x="10" y="-9"/> - </children> - <children xmi:type="notation:Node" xmi:id="_NKA7ZgQlEey-kNQ7esRa_g" type="6002"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_NKA7ZwQlEey-kNQ7esRa_g" x="24" y="10"/> - </children> - <children xmi:type="notation:Node" xmi:id="_NKBicAQlEey-kNQ7esRa_g" type="6003"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_NKBicQQlEey-kNQ7esRa_g" x="-24" y="10"/> - </children> - <styles xmi:type="notation:ConnectorStyle" xmi:id="_NKA7YQQlEey-kNQ7esRa_g" routing="Rectilinear"/> - <styles xmi:type="notation:FontStyle" xmi:id="_NKA7YgQlEey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_NKA7YwQlEey-kNQ7esRa_g" points="[0, 0, 0, -148]$[0, 148, 0, 0]"/> - <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_NKBicgQlEey-kNQ7esRa_g" id="(0.7034482758620689,1.0)"/> - <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_NKBicwQlEey-kNQ7esRa_g" id="(0.711864406779661,0.0)"/> - </edges> <edges xmi:type="notation:Edge" xmi:id="_OlUbwAQlEey-kNQ7esRa_g" type="4001" element="_OlBg0AQlEey-kNQ7esRa_g" source="_beL2gAQjEey-kNQ7esRa_g" target="_fodekAQjEey-kNQ7esRa_g"> <children xmi:type="notation:Node" xmi:id="_OlUbxAQlEey-kNQ7esRa_g" type="6001"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OlUbxQQlEey-kNQ7esRa_g" x="-2" y="-6"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OlUbxQQlEey-kNQ7esRa_g" y="50"/> </children> <children xmi:type="notation:Node" xmi:id="_OlUbxgQlEey-kNQ7esRa_g" type="6002"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OlUbxwQlEey-kNQ7esRa_g" x="-6" y="10"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OlUbxwQlEey-kNQ7esRa_g" x="10"/> </children> <children xmi:type="notation:Node" xmi:id="_OlVC0AQlEey-kNQ7esRa_g" type="6003"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OlVC0QQlEey-kNQ7esRa_g" x="-36" y="10"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OlVC0QQlEey-kNQ7esRa_g" x="10"/> </children> <styles xmi:type="notation:ConnectorStyle" xmi:id="_OlUbwQQlEey-kNQ7esRa_g" routing="Rectilinear"/> <styles xmi:type="notation:FontStyle" xmi:id="_OlUbwgQlEey-kNQ7esRa_g" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> - <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_OlUbwwQlEey-kNQ7esRa_g" points="[0, 0, 0, -64]$[0, 64, 0, 0]"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_OlUbwwQlEey-kNQ7esRa_g" points="[0, 0, 0, -35]$[0, 35, 0, 0]"/> <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_OlVC0gQlEey-kNQ7esRa_g" id="(0.5338983050847458,1.0)"/> <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_OlVC0wQlEey-kNQ7esRa_g" id="(0.5338983050847458,0.0)"/> </edges> - <edges xmi:type="notation:Edge" xmi:id="_S3n-cAQlEey-kNQ7esRa_g" type="4001" element="_S3W4sAQlEey-kNQ7esRa_g" source="_beL2gAQjEey-kNQ7esRa_g" target="_hdV8kAQjEey-kNQ7esRa_g"> - <children xmi:type="notation:Node" xmi:id="_S3n-dAQlEey-kNQ7esRa_g" type="6001"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_S3n-dQQlEey-kNQ7esRa_g" x="10" y="-10"/> - </children> - <children xmi:type="notation:Node" xmi:id="_S3olgAQlEey-kNQ7esRa_g" type="6002"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_S3olgQQlEey-kNQ7esRa_g" x="47" y="10"/> - </children> - <children xmi:type="notation:Node" xmi:id="_S3olggQlEey-kNQ7esRa_g" type="6003"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_S3olgwQlEey-kNQ7esRa_g" y="10"/> - </children> - <styles xmi:type="notation:ConnectorStyle" xmi:id="_S3n-cQQlEey-kNQ7esRa_g" routing="Rectilinear"/> - <styles xmi:type="notation:FontStyle" xmi:id="_S3n-cgQlEey-kNQ7esRa_g" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> - <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_S3n-cwQlEey-kNQ7esRa_g" points="[0, 12, -197, 66]$[149, 12, -48, 66]"/> - <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_S3pMkAQlEey-kNQ7esRa_g" id="(1.0,0.12244897959183673)"/> - <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_S3pMkQQlEey-kNQ7esRa_g" id="(0.4067796610169492,0.0)"/> - </edges> - <edges xmi:type="notation:Edge" xmi:id="_cJyGUAQlEey-kNQ7esRa_g" type="4001" element="_cJaS5gQlEey-kNQ7esRa_g" source="_11mPIAQjEey-kNQ7esRa_g" target="_738MEAQjEey-kNQ7esRa_g"> - <children xmi:type="notation:Node" xmi:id="_cJyGVAQlEey-kNQ7esRa_g" type="6001"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cJyGVQQlEey-kNQ7esRa_g" x="-10" y="1"/> - </children> - <children xmi:type="notation:Node" xmi:id="_cJyGVgQlEey-kNQ7esRa_g" type="6002"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cJyGVwQlEey-kNQ7esRa_g" y="10"/> - </children> - <children xmi:type="notation:Node" xmi:id="_cJyGWAQlEey-kNQ7esRa_g" type="6003"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cJyGWQQlEey-kNQ7esRa_g" x="-2" y="10"/> - </children> - <styles xmi:type="notation:ConnectorStyle" xmi:id="_cJyGUQQlEey-kNQ7esRa_g" routing="Rectilinear"/> - <styles xmi:type="notation:FontStyle" xmi:id="_cJyGUgQlEey-kNQ7esRa_g" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> - <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_cJyGUwQlEey-kNQ7esRa_g" points="[0, 0, 0, -82]$[0, 82, 0, 0]"/> - <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_cJytYAQlEey-kNQ7esRa_g" id="(0.5,1.0)"/> - <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_cJytYQQlEey-kNQ7esRa_g" id="(0.4057142857142857,0.0)"/> - </edges> - <edges xmi:type="notation:Edge" xmi:id="_g7Vw0AQlEey-kNQ7esRa_g" type="4001" element="_g7KKrAQlEey-kNQ7esRa_g" source="_37e9kAQjEey-kNQ7esRa_g" target="_SIv7sAQkEey-kNQ7esRa_g"> - <children xmi:type="notation:Node" xmi:id="_g7Vw1AQlEey-kNQ7esRa_g" type="6001"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_g7Vw1QQlEey-kNQ7esRa_g" x="-42" y="10"/> - </children> - <children xmi:type="notation:Node" xmi:id="_g7Vw1gQlEey-kNQ7esRa_g" type="6002"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_g7Vw1wQlEey-kNQ7esRa_g" x="-89"/> - </children> - <children xmi:type="notation:Node" xmi:id="_g7WX4AQlEey-kNQ7esRa_g" type="6003"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_g7WX4QQlEey-kNQ7esRa_g" x="-2"/> - </children> - <styles xmi:type="notation:ConnectorStyle" xmi:id="_g7Vw0QQlEey-kNQ7esRa_g" routing="Rectilinear"/> - <styles xmi:type="notation:FontStyle" xmi:id="_g7Vw0gQlEey-kNQ7esRa_g" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> - <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_g7Vw0wQlEey-kNQ7esRa_g" points="[-59, 50, 431, 315]$[-143, 50, 347, 315]$[-143, 312, 347, 577]$[-562, 312, -72, 577]$[-562, -178, -72, 87]"/> - <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_g7WX4gQlEey-kNQ7esRa_g" id="(0.5,0.0)"/> - <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_g7WX4wQlEey-kNQ7esRa_g" id="(1.0,0.11224489795918367)"/> - </edges> <edges xmi:type="notation:Edge" xmi:id="_i57kcAQlEey-kNQ7esRa_g" type="4001" element="_i5qetgQlEey-kNQ7esRa_g" source="_UOFQgAQkEey-kNQ7esRa_g" target="_XZkVEAQkEey-kNQ7esRa_g"> <children xmi:type="notation:Node" xmi:id="_i57kdAQlEey-kNQ7esRa_g" type="6001"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_i57kdQQlEey-kNQ7esRa_g" y="-10"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_i57kdQQlEey-kNQ7esRa_g" y="-39"/> </children> <children xmi:type="notation:Node" xmi:id="_i57kdgQlEey-kNQ7esRa_g" type="6002"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_i57kdwQlEey-kNQ7esRa_g" y="10"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_i57kdwQlEey-kNQ7esRa_g" x="12" y="10"/> </children> <children xmi:type="notation:Node" xmi:id="_i57keAQlEey-kNQ7esRa_g" type="6003"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_i57keQQlEey-kNQ7esRa_g" y="10"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_i57keQQlEey-kNQ7esRa_g" x="-18" y="10"/> </children> <styles xmi:type="notation:ConnectorStyle" xmi:id="_i57kcQQlEey-kNQ7esRa_g" routing="Rectilinear"/> <styles xmi:type="notation:FontStyle" xmi:id="_i57kcgQlEey-kNQ7esRa_g" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> - <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_i57kcwQlEey-kNQ7esRa_g" points="[0, 0, 0, -40]$[0, 40, 0, 0]"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_i57kcwQlEey-kNQ7esRa_g" points="[0, 0, 0, -45]$[0, 45, 0, 0]"/> <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_i58LgAQlEey-kNQ7esRa_g" id="(0.5,1.0)"/> <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_i58LgQQlEey-kNQ7esRa_g" id="(0.5,0.0)"/> </edges> <edges xmi:type="notation:Edge" xmi:id="_j8yvoAQlEey-kNQ7esRa_g" type="4001" element="_j8d_gAQlEey-kNQ7esRa_g" source="_VW89EAQkEey-kNQ7esRa_g" target="_UOFQgAQkEey-kNQ7esRa_g"> <children xmi:type="notation:Node" xmi:id="_j8yvpAQlEey-kNQ7esRa_g" type="6001"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_j8yvpQQlEey-kNQ7esRa_g" y="-10"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_j8yvpQQlEey-kNQ7esRa_g" x="-7" y="-30"/> </children> <children xmi:type="notation:Node" xmi:id="_j8yvpgQlEey-kNQ7esRa_g" type="6002"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_j8yvpwQlEey-kNQ7esRa_g" y="10"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_j8yvpwQlEey-kNQ7esRa_g" x="-5" y="10"/> </children> <children xmi:type="notation:Node" xmi:id="_j8yvqAQlEey-kNQ7esRa_g" type="6003"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_j8yvqQQlEey-kNQ7esRa_g" y="10"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_j8yvqQQlEey-kNQ7esRa_g" x="-43" y="10"/> </children> <styles xmi:type="notation:ConnectorStyle" xmi:id="_j8yvoQQlEey-kNQ7esRa_g" routing="Rectilinear"/> <styles xmi:type="notation:FontStyle" xmi:id="_j8yvogQlEey-kNQ7esRa_g" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> @@ -1021,35 +913,19 @@ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_j8yvqgQlEey-kNQ7esRa_g" id="(0.5,1.0)"/> <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_j8yvqwQlEey-kNQ7esRa_g" id="(0.5,0.0)"/> </edges> - <edges xmi:type="notation:Edge" xmi:id="_YoEukAQvEey-kNQ7esRa_g" type="4001" element="_Yn8yzAQvEey-kNQ7esRa_g" source="_OVBp4AQNEey-kNQ7esRa_g" target="_ZOlLYwQjEey-kNQ7esRa_g"> - <children xmi:type="notation:Node" xmi:id="_YoFVoAQvEey-kNQ7esRa_g" type="6001"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_YoFVoQQvEey-kNQ7esRa_g" x="3" y="-10"/> - </children> - <children xmi:type="notation:Node" xmi:id="_YoFVogQvEey-kNQ7esRa_g" type="6002"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_YoFVowQvEey-kNQ7esRa_g" x="1" y="10"/> - </children> - <children xmi:type="notation:Node" xmi:id="_YoFVpAQvEey-kNQ7esRa_g" type="6003"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_YoFVpQQvEey-kNQ7esRa_g" x="-1" y="10"/> - </children> - <styles xmi:type="notation:ConnectorStyle" xmi:id="_YoEukQQvEey-kNQ7esRa_g" routing="Rectilinear"/> - <styles xmi:type="notation:FontStyle" xmi:id="_YoEukgQvEey-kNQ7esRa_g" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> - <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_YoEukwQvEey-kNQ7esRa_g" points="[0, 0, -132, -40]$[0, 20, -132, -20]$[132, 20, 0, -20]$[132, 40, 0, 0]"/> - <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_YoFVpgQvEey-kNQ7esRa_g" id="(0.5,1.0)"/> - <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_YoFVpwQvEey-kNQ7esRa_g" id="(0.2966101694915254,0.0)"/> - </edges> <edges xmi:type="notation:Edge" xmi:id="_t9tkgAQxEey-kNQ7esRa_g" type="4001" element="_t9fiEwQxEey-kNQ7esRa_g" source="_SIv7sAQkEey-kNQ7esRa_g" target="_beL2gAQjEey-kNQ7esRa_g"> <children xmi:type="notation:Node" xmi:id="_t9uLkAQxEey-kNQ7esRa_g" type="6001"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_t9uLkQQxEey-kNQ7esRa_g" x="1" y="3"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_t9uLkQQxEey-kNQ7esRa_g" x="-43" y="-30"/> </children> <children xmi:type="notation:Node" xmi:id="_t9uLkgQxEey-kNQ7esRa_g" type="6002"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_t9uLkwQxEey-kNQ7esRa_g" y="10"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_t9uLkwQxEey-kNQ7esRa_g" x="-26" y="10"/> </children> <children xmi:type="notation:Node" xmi:id="_t9uLlAQxEey-kNQ7esRa_g" type="6003"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_t9uLlQQxEey-kNQ7esRa_g" y="10"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_t9uLlQQxEey-kNQ7esRa_g" x="-4" y="10"/> </children> <styles xmi:type="notation:ConnectorStyle" xmi:id="_t9tkgQQxEey-kNQ7esRa_g" routing="Rectilinear"/> <styles xmi:type="notation:FontStyle" xmi:id="_t9tkggQxEey-kNQ7esRa_g" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> - <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_t9tkgwQxEey-kNQ7esRa_g" points="[0, 0, -293, 65]$[146, 0, -147, 65]$[146, -65, -147, 0]$[293, -65, 0, 0]"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_t9tkgwQxEey-kNQ7esRa_g" points="[0, 0, -251, 36]$[110, 0, -141, 36]$[110, -36, -141, 0]$[251, -36, 0, 0]"/> <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_t9uLlgQxEey-kNQ7esRa_g" id="(1.0,0.12244897959183673)"/> <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_t9uLlwQxEey-kNQ7esRa_g" id="(0.0,0.4387755102040816)"/> </edges> @@ -1069,22 +945,6 @@ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_-HyUdgT3Eey-kNQ7esRa_g" id="(0.3481749802464828,0.0)"/> <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_-HyUdwT3Eey-kNQ7esRa_g" id="(0.5,0.5)"/> </edges> - <edges xmi:type="notation:Edge" xmi:id="_DvLwoAWOEey-kNQ7esRa_g" type="4001" element="_N_3LvAWNEey-kNQ7esRa_g" source="_37e9kAQjEey-kNQ7esRa_g" target="_lk5_0AWMEey-kNQ7esRa_g"> - <children xmi:type="notation:Node" xmi:id="_DvMXsAWOEey-kNQ7esRa_g" type="6001"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_DvMXsQWOEey-kNQ7esRa_g" x="-76" y="-9"/> - </children> - <children xmi:type="notation:Node" xmi:id="_DvMXsgWOEey-kNQ7esRa_g" type="6002"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_DvMXswWOEey-kNQ7esRa_g" x="1" y="10"/> - </children> - <children xmi:type="notation:Node" xmi:id="_DvMXtAWOEey-kNQ7esRa_g" type="6003"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_DvMXtQWOEey-kNQ7esRa_g" x="-133" y="10"/> - </children> - <styles xmi:type="notation:ConnectorStyle" xmi:id="_DvLwoQWOEey-kNQ7esRa_g" routing="Rectilinear"/> - <styles xmi:type="notation:FontStyle" xmi:id="_DvLwogWOEey-kNQ7esRa_g" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> - <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_DvLwowWOEey-kNQ7esRa_g" points="[16, -1, -242, 0]$[258, -1, 0, 0]"/> - <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_DvNl0AWOEey-kNQ7esRa_g" id="(0.864406779661017,0.17346938775510204)"/> - <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_DvNl0QWOEey-kNQ7esRa_g" id="(0.0,0.16326530612244897)"/> - </edges> <edges xmi:type="notation:Edge" xmi:id="_M1yv0AWOEey-kNQ7esRa_g" type="4001" element="_M1gb_AWOEey-kNQ7esRa_g" source="_Ecj4gAQkEey-kNQ7esRa_g" target="_lk5_0AWMEey-kNQ7esRa_g"> <children xmi:type="notation:Node" xmi:id="_M1yv1AWOEey-kNQ7esRa_g" type="6001"> <layoutConstraint xmi:type="notation:Bounds" xmi:id="_M1yv1QWOEey-kNQ7esRa_g" y="-10"/> @@ -1117,54 +977,6 @@ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_NUMjEgWOEey-kNQ7esRa_g" id="(0.6610169491525424,0.0)"/> <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_NUMjEwWOEey-kNQ7esRa_g" id="(0.0,0.16326530612244897)"/> </edges> - <edges xmi:type="notation:Edge" xmi:id="_oPAegAWgEey-kNQ7esRa_g" type="4001" element="_oOv_0AWgEey-kNQ7esRa_g" source="_ZOlLYwQjEey-kNQ7esRa_g" target="_OVBp4AQNEey-kNQ7esRa_g"> - <children xmi:type="notation:Node" xmi:id="_oPAehAWgEey-kNQ7esRa_g" type="6001"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_oPAehQWgEey-kNQ7esRa_g" y="-10"/> - </children> - <children xmi:type="notation:Node" xmi:id="_oPAehgWgEey-kNQ7esRa_g" type="6002"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_oPAehwWgEey-kNQ7esRa_g" y="10"/> - </children> - <children xmi:type="notation:Node" xmi:id="_oPAeiAWgEey-kNQ7esRa_g" type="6003"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_oPAeiQWgEey-kNQ7esRa_g" y="10"/> - </children> - <styles xmi:type="notation:ConnectorStyle" xmi:id="_oPAegQWgEey-kNQ7esRa_g" routing="Rectilinear"/> - <styles xmi:type="notation:FontStyle" xmi:id="_oPAeggWgEey-kNQ7esRa_g" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> - <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_oPAegwWgEey-kNQ7esRa_g" points="[0, 0, 120, 82]$[-120, 0, 0, 82]$[-120, -82, 0, 0]"/> - <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_oPBFkAWgEey-kNQ7esRa_g" id="(0.0,0.42857142857142855)"/> - <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_oPBFkQWgEey-kNQ7esRa_g" id="(0.3050847457627119,1.0)"/> - </edges> - <edges xmi:type="notation:Edge" xmi:id="_p5GBwAWgEey-kNQ7esRa_g" type="4001" element="_p4wqlgWgEey-kNQ7esRa_g" source="_ZOlLYwQjEey-kNQ7esRa_g" target="_Pg1TsAQjEey-kNQ7esRa_g"> - <children xmi:type="notation:Node" xmi:id="_p5GBxAWgEey-kNQ7esRa_g" type="6001"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_p5GBxQWgEey-kNQ7esRa_g" x="9" y="-11"/> - </children> - <children xmi:type="notation:Node" xmi:id="_p5Go0AWgEey-kNQ7esRa_g" type="6002"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_p5Go0QWgEey-kNQ7esRa_g" x="4" y="10"/> - </children> - <children xmi:type="notation:Node" xmi:id="_p5Go0gWgEey-kNQ7esRa_g" type="6003"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_p5Go0wWgEey-kNQ7esRa_g" x="-4" y="10"/> - </children> - <styles xmi:type="notation:ConnectorStyle" xmi:id="_p5GBwQWgEey-kNQ7esRa_g" routing="Rectilinear"/> - <styles xmi:type="notation:FontStyle" xmi:id="_p5GBwgWgEey-kNQ7esRa_g" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> - <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_p5GBwwWgEey-kNQ7esRa_g" points="[0, 0, -116, 89]$[86, 0, -30, 89]$[86, -89, -30, 0]"/> - <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_p5Go1AWgEey-kNQ7esRa_g" id="(1.0,0.5)"/> - <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_p5Go1QWgEey-kNQ7esRa_g" id="(0.41379310344827586,1.0)"/> - </edges> - <edges xmi:type="notation:Edge" xmi:id="_3iJRYAWgEey-kNQ7esRa_g" type="4001" element="_3h3klgWgEey-kNQ7esRa_g" source="_ZOlLYwQjEey-kNQ7esRa_g" target="_hS0UIAQOEey-kNQ7esRa_g"> - <children xmi:type="notation:Node" xmi:id="_3iJ4cAWgEey-kNQ7esRa_g" type="6001"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_3iJ4cQWgEey-kNQ7esRa_g" y="-10"/> - </children> - <children xmi:type="notation:Node" xmi:id="_3iJ4cgWgEey-kNQ7esRa_g" type="6002"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_3iJ4cwWgEey-kNQ7esRa_g" y="10"/> - </children> - <children xmi:type="notation:Node" xmi:id="_3iJ4dAWgEey-kNQ7esRa_g" type="6003"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_3iJ4dQWgEey-kNQ7esRa_g" y="10"/> - </children> - <styles xmi:type="notation:ConnectorStyle" xmi:id="_3iJRYQWgEey-kNQ7esRa_g" routing="Tree"/> - <styles xmi:type="notation:FontStyle" xmi:id="_3iJRYgWgEey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_3iJRYwWgEey-kNQ7esRa_g" points="[0, 0, 5, 184]$[-5, -184, 0, 0]"/> - <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_3iJ4dgWgEey-kNQ7esRa_g" id="(0.5,0.0)"/> - <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_3iJ4dwWgEey-kNQ7esRa_g" id="(0.5,0.5)"/> - </edges> <edges xmi:type="notation:Edge" xmi:id="_Oe-kEAWiEey-kNQ7esRa_g" type="4001" element="_OeuFcgWiEey-kNQ7esRa_g" source="_FeuEgAWiEey-kNQ7esRa_g" target="_DsJToAWiEey-kNQ7esRa_g"> <children xmi:type="notation:Node" xmi:id="_Oe-kFAWiEey-kNQ7esRa_g" type="6001"> <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Oe-kFQWiEey-kNQ7esRa_g" y="-10"/> @@ -1197,35 +1009,19 @@ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_PAtYIAWiEey-kNQ7esRa_g" id="(0.6101694915254238,0.0)"/> <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_PAtYIQWiEey-kNQ7esRa_g" id="(0.6068965517241379,1.0)"/> </edges> - <edges xmi:type="notation:Edge" xmi:id="_cCGVYAWjEey-kNQ7esRa_g" type="4001" element="_cB2dzAWjEey-kNQ7esRa_g" source="_NxDRoAWjEey-kNQ7esRa_g" target="_Sn_ycAWjEey-kNQ7esRa_g"> - <children xmi:type="notation:Node" xmi:id="_cCGVZAWjEey-kNQ7esRa_g" type="6001"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cCG8cAWjEey-kNQ7esRa_g" x="3" y="-10"/> - </children> - <children xmi:type="notation:Node" xmi:id="_cCG8cQWjEey-kNQ7esRa_g" type="6002"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cCG8cgWjEey-kNQ7esRa_g" y="10"/> - </children> - <children xmi:type="notation:Node" xmi:id="_cCG8cwWjEey-kNQ7esRa_g" type="6003"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cCG8dAWjEey-kNQ7esRa_g" x="-37" y="-15"/> - </children> - <styles xmi:type="notation:ConnectorStyle" xmi:id="_cCGVYQWjEey-kNQ7esRa_g" routing="Rectilinear"/> - <styles xmi:type="notation:FontStyle" xmi:id="_cCGVYgWjEey-kNQ7esRa_g" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> - <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_cCGVYwWjEey-kNQ7esRa_g" points="[0, 0, 49, -58]$[0, 14, 49, -44]$[-49, 14, 0, -44]$[-49, 58, 0, 0]"/> - <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_cCG8dQWjEey-kNQ7esRa_g" id="(0.5,1.0)"/> - <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_cCG8dgWjEey-kNQ7esRa_g" id="(0.5423728813559322,0.0)"/> - </edges> <edges xmi:type="notation:Edge" xmi:id="_cxxe0AWjEey-kNQ7esRa_g" type="4001" element="_cxcusAWjEey-kNQ7esRa_g" source="_NxDRoAWjEey-kNQ7esRa_g" target="_YPBsYAWjEey-kNQ7esRa_g"> <children xmi:type="notation:Node" xmi:id="_cxyF4AWjEey-kNQ7esRa_g" type="6001"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cxyF4QWjEey-kNQ7esRa_g" x="-21" y="-10"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cxyF4QWjEey-kNQ7esRa_g" x="-10" y="-10"/> </children> <children xmi:type="notation:Node" xmi:id="_cxyF4gWjEey-kNQ7esRa_g" type="6002"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cxyF4wWjEey-kNQ7esRa_g" x="-14" y="-2"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cxyF4wWjEey-kNQ7esRa_g" x="14" y="10"/> </children> <children xmi:type="notation:Node" xmi:id="_cxyF5AWjEey-kNQ7esRa_g" type="6003"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cxyF5QWjEey-kNQ7esRa_g" x="-24" y="22"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cxyF5QWjEey-kNQ7esRa_g" x="-21" y="22"/> </children> <styles xmi:type="notation:ConnectorStyle" xmi:id="_cxxe0QWjEey-kNQ7esRa_g" routing="Rectilinear"/> <styles xmi:type="notation:FontStyle" xmi:id="_cxxe0gWjEey-kNQ7esRa_g" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> - <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_cxxe0wWjEey-kNQ7esRa_g" points="[0, 0, -65, -58]$[0, 14, -65, -44]$[65, 14, 0, -44]$[65, 58, 0, 0]"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_cxxe0wWjEey-kNQ7esRa_g" points="[0, 0, -65, -81]$[0, 37, -65, -44]$[65, 37, 0, -44]$[65, 81, 0, 0]"/> <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_cxyF5gWjEey-kNQ7esRa_g" id="(0.559322033898305,1.0)"/> <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_cxyF5wWjEey-kNQ7esRa_g" id="(0.5,0.0)"/> </edges> @@ -1261,22 +1057,6 @@ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_izFhCgWjEey-kNQ7esRa_g" id="(0.3724137931034483,0.0)"/> <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_izFhCwWjEey-kNQ7esRa_g" id="(0.5,0.5)"/> </edges> - <edges xmi:type="notation:Edge" xmi:id="_T8AZIAaBEey-kNQ7esRa_g" type="4001" element="_T72oPgaBEey-kNQ7esRa_g" source="_ovs3EAZsEey-kNQ7esRa_g" target="__k3HcAWcEey-kNQ7esRa_g"> - <children xmi:type="notation:Node" xmi:id="_T8AZJAaBEey-kNQ7esRa_g" type="6001"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_T8AZJQaBEey-kNQ7esRa_g" x="253" y="-10"/> - </children> - <children xmi:type="notation:Node" xmi:id="_T8AZJgaBEey-kNQ7esRa_g" type="6002"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_T8AZJwaBEey-kNQ7esRa_g" x="607" y="10"/> - </children> - <children xmi:type="notation:Node" xmi:id="_T8AZKAaBEey-kNQ7esRa_g" type="6003"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_T8AZKQaBEey-kNQ7esRa_g" x="76" y="10"/> - </children> - <styles xmi:type="notation:ConnectorStyle" xmi:id="_T8AZIQaBEey-kNQ7esRa_g" routing="Rectilinear"/> - <styles xmi:type="notation:FontStyle" xmi:id="_T8AZIgaBEey-kNQ7esRa_g" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> - <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_T8AZIwaBEey-kNQ7esRa_g" points="[0, 6, 722, 6]$[-722, 6, 0, 6]"/> - <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_T8BAMAaBEey-kNQ7esRa_g" id="(0.0,0.10204081632653061)"/> - <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_T8BAMQaBEey-kNQ7esRa_g" id="(1.0,0.16326530612244897)"/> - </edges> <edges xmi:type="notation:Edge" xmi:id="_0ITFAAaCEey-kNQ7esRa_g" type="4001" element="_0IAKIgaCEey-kNQ7esRa_g" source="_nuczcAaCEey-kNQ7esRa_g" target="_IONsYAZtEey-kNQ7esRa_g"> <children xmi:type="notation:Node" xmi:id="_0ITFBAaCEey-kNQ7esRa_g" type="6001"> <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0ITFBQaCEey-kNQ7esRa_g" x="-50" y="2"/> @@ -1295,33 +1075,33 @@ </edges> <edges xmi:type="notation:Edge" xmi:id="_SeUy0AaEEey-kNQ7esRa_g" type="4001" element="_SeKa9gaEEey-kNQ7esRa_g" source="_NNRv8AaEEey-kNQ7esRa_g" target="_OVBp4AQNEey-kNQ7esRa_g"> <children xmi:type="notation:Node" xmi:id="_SeUy1AaEEey-kNQ7esRa_g" type="6001"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_SeUy1QaEEey-kNQ7esRa_g" y="-10"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_SeUy1QaEEey-kNQ7esRa_g" x="-99" y="-9"/> </children> <children xmi:type="notation:Node" xmi:id="_SeUy1gaEEey-kNQ7esRa_g" type="6002"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_SeUy1waEEey-kNQ7esRa_g" y="10"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_SeUy1waEEey-kNQ7esRa_g" x="-35" y="10"/> </children> <children xmi:type="notation:Node" xmi:id="_SeUy2AaEEey-kNQ7esRa_g" type="6003"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_SeUy2QaEEey-kNQ7esRa_g" y="10"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_SeUy2QaEEey-kNQ7esRa_g" x="-26" y="10"/> </children> <styles xmi:type="notation:ConnectorStyle" xmi:id="_SeUy0QaEEey-kNQ7esRa_g" routing="Rectilinear"/> <styles xmi:type="notation:FontStyle" xmi:id="_SeUy0gaEEey-kNQ7esRa_g" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> - <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_SeUy0waEEey-kNQ7esRa_g" points="[0, 0, -191, -257]$[191, 0, 0, -257]$[191, 257, 0, 0]"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_SeUy0waEEey-kNQ7esRa_g" points="[0, 0, -140, -137]$[140, 0, 0, -137]$[140, 137, 0, 0]"/> <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_SeVZ4AaEEey-kNQ7esRa_g" id="(1.0,0.1326530612244898)"/> <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_SeVZ4QaEEey-kNQ7esRa_g" id="(0.4576271186440678,0.0)"/> </edges> <edges xmi:type="notation:Edge" xmi:id="_fEPKcAaEEey-kNQ7esRa_g" type="4001" element="_fEHOygaEEey-kNQ7esRa_g" source="_NNRv8AaEEey-kNQ7esRa_g" target="_VW89EAQkEey-kNQ7esRa_g"> <children xmi:type="notation:Node" xmi:id="_fEPKdAaEEey-kNQ7esRa_g" type="6001"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_fEPKdQaEEey-kNQ7esRa_g" x="-10"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_fEPKdQaEEey-kNQ7esRa_g" x="26" y="14"/> </children> <children xmi:type="notation:Node" xmi:id="_fEPKdgaEEey-kNQ7esRa_g" type="6002"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_fEPKdwaEEey-kNQ7esRa_g" x="82" y="10"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_fEPKdwaEEey-kNQ7esRa_g" x="-31" y="10"/> </children> <children xmi:type="notation:Node" xmi:id="_fEPxgAaEEey-kNQ7esRa_g" type="6003"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_fEPxgQaEEey-kNQ7esRa_g" x="-1" y="10"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_fEPxgQaEEey-kNQ7esRa_g" x="-96" y="84"/> </children> <styles xmi:type="notation:ConnectorStyle" xmi:id="_fEPKcQaEEey-kNQ7esRa_g" routing="Rectilinear"/> <styles xmi:type="notation:FontStyle" xmi:id="_fEPKcgaEEey-kNQ7esRa_g" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> - <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_fEPKcwaEEey-kNQ7esRa_g" points="[-63, -48, 28, -412]$[-96, -48, -5, -412]$[-96, 172, -5, -192]$[-91, 172, 0, -192]$[-91, 364, 0, 0]"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_fEPKcwaEEey-kNQ7esRa_g" points="[-3, 0, 187, -34]$[-3, 84, 187, 50]$[-131, 84, 59, 50]"/> <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_fEPxggaEEey-kNQ7esRa_g" id="(0.5338983050847458,1.0)"/> <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_fEPxgwaEEey-kNQ7esRa_g" id="(0.5,0.0)"/> </edges> @@ -1354,7 +1134,7 @@ <styles xmi:type="notation:ConnectorStyle" xmi:id="_WT7CkQcMEey-kNQ7esRa_g" routing="Tree"/> <styles xmi:type="notation:FontStyle" xmi:id="_WT7CkgcMEey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_WT7CkwcMEey-kNQ7esRa_g" points="[0, 0, -342, 161]$[342, -161, 0, 0]"/> - <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_WT7CmgcMEey-kNQ7esRa_g" id="(0.559322033898305,0.0)"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_WT7CmgcMEey-kNQ7esRa_g" id="(0.5076923076923077,0.057692307692307696)"/> <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_WT7CmwcMEey-kNQ7esRa_g" id="(0.5,0.5)"/> </edges> <edges xmi:type="notation:Edge" xmi:id="_9YKTIAcMEey-kNQ7esRa_g" type="4001" element="_9X2xLAcMEey-kNQ7esRa_g" source="_zBjrsAcMEey-kNQ7esRa_g" target="_DsJToAWiEey-kNQ7esRa_g"> @@ -1387,7 +1167,7 @@ <styles xmi:type="notation:FontStyle" xmi:id="_Prz0MgcOEey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Prz0MwcOEey-kNQ7esRa_g" points="[0, 0, -54, 11]$[54, -11, 0, 0]"/> <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Prz0OgcOEey-kNQ7esRa_g" id="(0.5,0.0)"/> - <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Prz0OwcOEey-kNQ7esRa_g" id="(0.5,0.5)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Prz0OwcOEey-kNQ7esRa_g" id="(0.45384615384615384,0.5288461538461539)"/> </edges> <edges xmi:type="notation:Edge" xmi:id="_QKsvoAcOEey-kNQ7esRa_g" type="4001" element="_QKU8MAcOEey-kNQ7esRa_g" source="_K7QPQAcOEey-kNQ7esRa_g" target="_s0mCMAWjEey-kNQ7esRa_g"> <children xmi:type="notation:Node" xmi:id="_QKsvpAcOEey-kNQ7esRa_g" type="6001"> @@ -1403,7 +1183,7 @@ <styles xmi:type="notation:FontStyle" xmi:id="_QKsvogcOEey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_QKsvowcOEey-kNQ7esRa_g" points="[0, 0, 18, 103]$[-18, -103, 0, 0]"/> <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_QKsvqgcOEey-kNQ7esRa_g" id="(0.4406779661016949,0.0)"/> - <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_QKsvqwcOEey-kNQ7esRa_g" id="(0.5,0.5)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_QKsvqwcOEey-kNQ7esRa_g" id="(0.45384615384615384,0.5288461538461539)"/> </edges> <edges xmi:type="notation:Edge" xmi:id="_aEfQgAcUEey-kNQ7esRa_g" type="4001" element="_aEKgcgcUEey-kNQ7esRa_g" source="_VKA6kAcUEey-kNQ7esRa_g" target="_s0mCMAWjEey-kNQ7esRa_g"> <children xmi:type="notation:Node" xmi:id="_aEfQhAcUEey-kNQ7esRa_g" type="6001"> @@ -1419,7 +1199,7 @@ <styles xmi:type="notation:FontStyle" xmi:id="_aEfQggcUEey-kNQ7esRa_g" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_aEfQgwcUEey-kNQ7esRa_g" points="[0, 0, 135, 258]$[-135, -258, 0, 0]"/> <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_aEf3kAcUEey-kNQ7esRa_g" id="(0.5,0.0)"/> - <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_aEf3kQcUEey-kNQ7esRa_g" id="(0.5,0.5)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_aEf3kQcUEey-kNQ7esRa_g" id="(0.45384615384615384,0.5288461538461539)"/> </edges> <edges xmi:type="notation:Edge" xmi:id="_HJJjsAcbEey-kNQ7esRa_g" type="4001" element="_HI0zogcbEey-kNQ7esRa_g" source="_pEG-0AaCEey-kNQ7esRa_g" target="_IONsYAZtEey-kNQ7esRa_g"> <children xmi:type="notation:Node" xmi:id="_HJKKwAcbEey-kNQ7esRa_g" type="6001"> @@ -1437,84 +1217,276 @@ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_HJKKxgcbEey-kNQ7esRa_g" id="(0.5,0.0)"/> <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_HJKKxwcbEey-kNQ7esRa_g" id="(0.8851063829787233,0.05128205128205128)"/> </edges> - <edges xmi:type="notation:Edge" xmi:id="_eXoJkAcoEey-kNQ7esRa_g" type="4001" element="_eXVOvgcoEey-kNQ7esRa_g" source="_YB0RsATxEey-kNQ7esRa_g" target="_hdV8kAQjEey-kNQ7esRa_g"> - <children xmi:type="notation:Node" xmi:id="_eXoJlAcoEey-kNQ7esRa_g" type="6001"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_eXoJlQcoEey-kNQ7esRa_g" y="-10"/> - </children> - <children xmi:type="notation:Node" xmi:id="_eXoJlgcoEey-kNQ7esRa_g" type="6002"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_eXoJlwcoEey-kNQ7esRa_g" y="10"/> - </children> - <children xmi:type="notation:Node" xmi:id="_eXoJmAcoEey-kNQ7esRa_g" type="6003"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_eXoJmQcoEey-kNQ7esRa_g" y="10"/> - </children> - <styles xmi:type="notation:ConnectorStyle" xmi:id="_eXoJkQcoEey-kNQ7esRa_g" routing="Tree"/> - <styles xmi:type="notation:FontStyle" xmi:id="_eXoJkgcoEey-kNQ7esRa_g" fontName="Segoe UI" fontHeight="8"/> - <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_eXoJkwcoEey-kNQ7esRa_g" points="[0, 0, 113, 0]$[-113, 0, 0, 0]"/> - <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_eXowoAcoEey-kNQ7esRa_g" id="(0.0,0.06542056074766354)"/> - <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_eXowoQcoEey-kNQ7esRa_g" id="(0.5,0.5)"/> - </edges> <edges xmi:type="notation:Edge" xmi:id="_oMShkAcoEey-kNQ7esRa_g" type="4001" element="_X6rBlgQlEey-kNQ7esRa_g" source="_fodekAQjEey-kNQ7esRa_g" target="_-LbRoAQjEey-kNQ7esRa_g"> <children xmi:type="notation:Node" xmi:id="_oMShlAcoEey-kNQ7esRa_g" type="6001"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_oMShlQcoEey-kNQ7esRa_g" x="10" y="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_oMShlQcoEey-kNQ7esRa_g" x="-29" y="-49"/> </children> <children xmi:type="notation:Node" xmi:id="_oMShlgcoEey-kNQ7esRa_g" type="6002"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_oMShlwcoEey-kNQ7esRa_g" x="21" y="10"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_oMShlwcoEey-kNQ7esRa_g" x="-10" y="10"/> </children> <children xmi:type="notation:Node" xmi:id="_oMShmAcoEey-kNQ7esRa_g" type="6003"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_oMShmQcoEey-kNQ7esRa_g" x="-69" y="-7"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_oMShmQcoEey-kNQ7esRa_g" x="6"/> </children> <styles xmi:type="notation:ConnectorStyle" xmi:id="_oMShkQcoEey-kNQ7esRa_g" routing="Rectilinear"/> <styles xmi:type="notation:FontStyle" xmi:id="_oMShkgcoEey-kNQ7esRa_g" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> - <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_oMShkwcoEey-kNQ7esRa_g" points="[59, 41, -229, 48]$[229, 41, -59, 48]"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_oMShkwcoEey-kNQ7esRa_g" points="[54, -49, -198, 264]$[54, -77, -198, 236]$[157, -77, -95, 236]$[157, -263, -95, 50]$[193, -263, -59, 50]"/> <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_oMTIoQcoEey-kNQ7esRa_g" id="(0.5,0.0)"/> </edges> - <edges xmi:type="notation:Edge" xmi:id="_RDIQ0AcsEey-kNQ7esRa_g" type="4001" element="_RCvPUgcsEey-kNQ7esRa_g" source="_Ml8T0AcsEey-kNQ7esRa_g" target="_fodekAQjEey-kNQ7esRa_g"> - <children xmi:type="notation:Node" xmi:id="_RDIQ1AcsEey-kNQ7esRa_g" type="6001"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_RDIQ1QcsEey-kNQ7esRa_g" y="-10"/> + <edges xmi:type="notation:Edge" xmi:id="_omOJEBrzEeyPOIo-WqURQQ" type="4001" element="_ollP6RrzEeyPOIo-WqURQQ" source="_738MEAQjEey-kNQ7esRa_g" target="_lk5_0AWMEey-kNQ7esRa_g"> + <children xmi:type="notation:Node" xmi:id="_omTooBrzEeyPOIo-WqURQQ" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_omTooRrzEeyPOIo-WqURQQ" y="-10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_omUPsBrzEeyPOIo-WqURQQ" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_omUPsRrzEeyPOIo-WqURQQ" y="10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_omVd0BrzEeyPOIo-WqURQQ" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_omVd0RrzEeyPOIo-WqURQQ" y="10"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_omOJERrzEeyPOIo-WqURQQ" routing="Tree"/> + <styles xmi:type="notation:FontStyle" xmi:id="_omOJEhrzEeyPOIo-WqURQQ" fontName="Segoe UI" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_omOJExrzEeyPOIo-WqURQQ" points="[0, 0, 201, 144]$[-201, -144, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_omX6EBrzEeyPOIo-WqURQQ" id="(0.5028571428571429,0.0)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_omX6ERrzEeyPOIo-WqURQQ" id="(0.0,0.16326530612244897)"/> + </edges> + <edges xmi:type="notation:Edge" xmi:id="_r_Uy4BrzEeyPOIo-WqURQQ" type="4001" element="_r-z1gBrzEeyPOIo-WqURQQ" source="_fodekAQjEey-kNQ7esRa_g" target="_lk5_0AWMEey-kNQ7esRa_g"> + <children xmi:type="notation:Node" xmi:id="_r_Uy5BrzEeyPOIo-WqURQQ" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_r_Uy5RrzEeyPOIo-WqURQQ" x="-6" y="-49"/> + </children> + <children xmi:type="notation:Node" xmi:id="_r_Uy5hrzEeyPOIo-WqURQQ" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_r_Uy5xrzEeyPOIo-WqURQQ" x="20" y="10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_r_Uy6BrzEeyPOIo-WqURQQ" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_r_Uy6RrzEeyPOIo-WqURQQ" x="-28" y="10"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_r_Uy4RrzEeyPOIo-WqURQQ" routing="Rectilinear"/> + <styles xmi:type="notation:FontStyle" xmi:id="_r_Uy4hrzEeyPOIo-WqURQQ" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_r_Uy4xrzEeyPOIo-WqURQQ" points="[0, -42, -191, 73]$[92, -42, -99, 73]$[92, -67, -99, 48]$[191, -67, 0, 48]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_r_VZ8BrzEeyPOIo-WqURQQ" id="(1.0,0.5)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_r_VZ8RrzEeyPOIo-WqURQQ" id="(0.0,0.5)"/> + </edges> + <edges xmi:type="notation:Edge" xmi:id="_t33o4BrzEeyPOIo-WqURQQ" type="4001" element="_t3gckhrzEeyPOIo-WqURQQ" source="_fodekAQjEey-kNQ7esRa_g" target="_SIv7sAQkEey-kNQ7esRa_g"> + <children xmi:type="notation:Node" xmi:id="_t33o5BrzEeyPOIo-WqURQQ" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_t33o5RrzEeyPOIo-WqURQQ" x="-157" y="-9"/> + </children> + <children xmi:type="notation:Node" xmi:id="_t33o5hrzEeyPOIo-WqURQQ" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_t33o5xrzEeyPOIo-WqURQQ" x="292" y="10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_t33o6BrzEeyPOIo-WqURQQ" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_t33o6RrzEeyPOIo-WqURQQ" x="-9"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_t33o4RrzEeyPOIo-WqURQQ" routing="Rectilinear"/> + <styles xmi:type="notation:FontStyle" xmi:id="_t33o4hrzEeyPOIo-WqURQQ" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_t33o4xrzEeyPOIo-WqURQQ" points="[36, 38, 287, 79]$[36, 71, 287, 112]$[-341, 71, -90, 112]$[-341, -28, -90, 13]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_t34P8BrzEeyPOIo-WqURQQ" id="(0.0,0.6122448979591837)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_t34P8RrzEeyPOIo-WqURQQ" id="(1.0,0.8673469387755102)"/> + </edges> + <edges xmi:type="notation:Edge" xmi:id="_ajy4sBsKEeyPOIo-WqURQQ" type="4001" element="_ajhzHRsKEeyPOIo-WqURQQ" source="_NNRv8AaEEey-kNQ7esRa_g" target="_Ml8T0AcsEey-kNQ7esRa_g"> + <children xmi:type="notation:Node" xmi:id="_ajy4tBsKEeyPOIo-WqURQQ" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ajy4tRsKEeyPOIo-WqURQQ" x="-175" y="-28"/> + </children> + <children xmi:type="notation:Node" xmi:id="_ajy4thsKEeyPOIo-WqURQQ" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ajy4txsKEeyPOIo-WqURQQ" x="-78" y="10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_ajy4uBsKEeyPOIo-WqURQQ" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ajy4uRsKEeyPOIo-WqURQQ" x="-114"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_ajy4sRsKEeyPOIo-WqURQQ" routing="Rectilinear"/> + <styles xmi:type="notation:FontStyle" xmi:id="_ajy4shsKEeyPOIo-WqURQQ" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_ajy4sxsKEeyPOIo-WqURQQ" points="[-22, 0, -275, -353]$[-22, 400, -275, 47]$[183, 400, -70, 47]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ajy4uhsKEeyPOIo-WqURQQ" id="(0.8389830508474576,1.0)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ajy4uxsKEeyPOIo-WqURQQ" id="(0.5035971223021583,0.0)"/> + </edges> + <edges xmi:type="notation:Edge" xmi:id="_9UCkgBsKEeyPOIo-WqURQQ" type="4001" element="_9TmfrBsKEeyPOIo-WqURQQ" source="_NNRv8AaEEey-kNQ7esRa_g" target="_SIv7sAQkEey-kNQ7esRa_g"> + <children xmi:type="notation:Node" xmi:id="_9UDLkBsKEeyPOIo-WqURQQ" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9UDLkRsKEeyPOIo-WqURQQ" x="-103" y="8"/> + </children> + <children xmi:type="notation:Node" xmi:id="_9UDLkhsKEeyPOIo-WqURQQ" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9UDLkxsKEeyPOIo-WqURQQ" x="9" y="15"/> + </children> + <children xmi:type="notation:Node" xmi:id="_9UDLlBsKEeyPOIo-WqURQQ" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9UDLlRsKEeyPOIo-WqURQQ" x="-20" y="10"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_9UCkgRsKEeyPOIo-WqURQQ" routing="Rectilinear"/> + <styles xmi:type="notation:FontStyle" xmi:id="_9UCkghsKEeyPOIo-WqURQQ" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_9UCkgxsKEeyPOIo-WqURQQ" points="[43, -38, -32, -299]$[117, -38, 42, -299]$[117, 261, 42, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_9UDLlhsKEeyPOIo-WqURQQ" id="(0.635593220338983,1.0)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_9UDLlxsKEeyPOIo-WqURQQ" id="(0.3310344827586207,0.0)"/> + </edges> + <edges xmi:type="notation:Edge" xmi:id="_cP774BuCEeyPOIo-WqURQQ" type="4001" element="_cPgeFhuCEeyPOIo-WqURQQ" source="_Pg1TsAQjEey-kNQ7esRa_g" target="_OVBp4AQNEey-kNQ7esRa_g"> + <children xmi:type="notation:Node" xmi:id="_cP775BuCEeyPOIo-WqURQQ" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cP775RuCEeyPOIo-WqURQQ" x="3" y="-10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_cP775huCEeyPOIo-WqURQQ" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cP775xuCEeyPOIo-WqURQQ" x="6" y="10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_cP776BuCEeyPOIo-WqURQQ" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cP776RuCEeyPOIo-WqURQQ" x="5" y="10"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_cP774RuCEeyPOIo-WqURQQ" routing="Rectilinear"/> + <styles xmi:type="notation:FontStyle" xmi:id="_cP774huCEeyPOIo-WqURQQ" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_cP774xuCEeyPOIo-WqURQQ" points="[0, 35, 122, 29]$[-122, 35, 0, 29]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_cP8i8BuCEeyPOIo-WqURQQ" id="(0.0,0.1326530612244898)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_cP8i8RuCEeyPOIo-WqURQQ" id="(1.0,0.1326530612244898)"/> + </edges> + <edges xmi:type="notation:Edge" xmi:id="_Q-7IYBuHEeyPOIo-WqURQQ" type="4001" element="_Q-uURhuHEeyPOIo-WqURQQ" source="_Pg1TsAQjEey-kNQ7esRa_g" target="_beL2gAQjEey-kNQ7esRa_g"> + <children xmi:type="notation:Node" xmi:id="_Q-7IZBuHEeyPOIo-WqURQQ" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Q-7IZRuHEeyPOIo-WqURQQ" x="-1" y="58"/> + </children> + <children xmi:type="notation:Node" xmi:id="_Q-7IZhuHEeyPOIo-WqURQQ" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Q-7IZxuHEeyPOIo-WqURQQ" x="21" y="10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_Q-7IaBuHEeyPOIo-WqURQQ" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Q-7IaRuHEeyPOIo-WqURQQ" x="-18" y="10"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_Q-7IYRuHEeyPOIo-WqURQQ" routing="Rectilinear"/> + <styles xmi:type="notation:FontStyle" xmi:id="_Q-7IYhuHEeyPOIo-WqURQQ" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Q-7IYxuHEeyPOIo-WqURQQ" points="[-6, 0, -42, -50]$[-6, 50, -42, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Q-7IahuHEeyPOIo-WqURQQ" id="(0.503448275862069,1.0)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Q-7IaxuHEeyPOIo-WqURQQ" id="(0.4661016949152542,0.0)"/> + </edges> + <edges xmi:type="notation:Edge" xmi:id="_G-RsUBxXEeyPOIo-WqURQQ" type="4001" element="_G94qwBxXEeyPOIo-WqURQQ" source="_XZkVEAQkEey-kNQ7esRa_g" target="_beL2gAQjEey-kNQ7esRa_g"> + <children xmi:type="notation:Node" xmi:id="_G-STYBxXEeyPOIo-WqURQQ" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_G-STYRxXEeyPOIo-WqURQQ" x="-117" y="-13"/> + </children> + <children xmi:type="notation:Node" xmi:id="_G-STYhxXEeyPOIo-WqURQQ" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_G-STYxxXEeyPOIo-WqURQQ" x="48" y="10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_G-STZBxXEeyPOIo-WqURQQ" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_G-STZRxXEeyPOIo-WqURQQ" x="-7" y="10"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_G-RsURxXEeyPOIo-WqURQQ" routing="Rectilinear"/> + <styles xmi:type="notation:FontStyle" xmi:id="_G-RsUhxXEeyPOIo-WqURQQ" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_G-RsUxxXEeyPOIo-WqURQQ" points="[31, 50, -566, 171]$[81, 50, -516, 171]$[81, -122, -516, -1]$[597, -122, 0, -1]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_G-S6cBxXEeyPOIo-WqURQQ" id="(0.7372881355932204,0.0)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_G-S6cRxXEeyPOIo-WqURQQ" id="(0.0,0.12244897959183673)"/> + </edges> + <edges xmi:type="notation:Edge" xmi:id="_BMxgQCemEeyTddajI1jY8w" type="4001" element="_RCvPUgcsEey-kNQ7esRa_g" source="_Ml8T0AcsEey-kNQ7esRa_g" target="_beL2gAQjEey-kNQ7esRa_g"> + <children xmi:type="notation:Node" xmi:id="_BM41ACemEeyTddajI1jY8w" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BM41ASemEeyTddajI1jY8w" x="-18" y="-41"/> + </children> + <children xmi:type="notation:Node" xmi:id="_BM6DICemEeyTddajI1jY8w" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BM6DISemEeyTddajI1jY8w" x="-11" y="-12"/> + </children> + <children xmi:type="notation:Node" xmi:id="_BNmmsCemEeyTddajI1jY8w" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BNmmsSemEeyTddajI1jY8w" x="1" y="10"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_BMxgQSemEeyTddajI1jY8w" routing="Rectilinear"/> + <styles xmi:type="notation:FontStyle" xmi:id="_BMxgQiemEeyTddajI1jY8w" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_BMxgQyemEeyTddajI1jY8w" points="[0, 0, -82, 91]$[24, 0, -58, 91]$[24, -92, -58, -1]$[77, -92, -5, -1]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_BNpqACemEeyTddajI1jY8w" id="(1.0,0.1326530612244898)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_BNpqASemEeyTddajI1jY8w" id="(0.0423728813559322,0.826530612244898)"/> + </edges> + <edges xmi:type="notation:Edge" xmi:id="_r0eocCxEEeyc2bacnWuMrg" type="4001" element="_rz8c8CxEEeyc2bacnWuMrg" source="_lCMqkAZsEey-kNQ7esRa_g" target="_Q9NrECxEEeyc2bacnWuMrg"> + <children xmi:type="notation:Node" xmi:id="_r0gdoCxEEeyc2bacnWuMrg" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_r0gdoSxEEeyc2bacnWuMrg" y="10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_r0gdoixEEeyc2bacnWuMrg" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_r0gdoyxEEeyc2bacnWuMrg" x="1" y="-10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_r0hEsCxEEeyc2bacnWuMrg" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_r0hEsSxEEeyc2bacnWuMrg" x="1" y="-10"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_r0eocSxEEeyc2bacnWuMrg" routing="Rectilinear"/> + <styles xmi:type="notation:FontStyle" xmi:id="_r0eocixEEeyc2bacnWuMrg" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_r0eocyxEEeyc2bacnWuMrg" points="[-6, 0, 0, 248]$[-6, -248, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_r0jg8CxEEeyc2bacnWuMrg" id="(0.6779661016949152,1.0)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_r0jg8SxEEeyc2bacnWuMrg" id="(0.47337278106508873,0.0)"/> + </edges> + <edges xmi:type="notation:Edge" xmi:id="_rXBsgOMUEeylWPfcS0Eglw" type="4001" element="_rWe5_OMUEeylWPfcS0Eglw" source="_YB0RsATxEey-kNQ7esRa_g" target="_hdV8kAQjEey-kNQ7esRa_g"> + <children xmi:type="notation:Node" xmi:id="_rXCTkOMUEeylWPfcS0Eglw" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_rXCTkeMUEeylWPfcS0Eglw" x="31" y="26"/> + </children> + <children xmi:type="notation:Node" xmi:id="_rXCTkuMUEeylWPfcS0Eglw" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_rXCTk-MUEeylWPfcS0Eglw" x="76" y="6"/> + </children> + <children xmi:type="notation:Node" xmi:id="_rXCTlOMUEeylWPfcS0Eglw" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_rXCTleMUEeylWPfcS0Eglw" x="-1" y="10"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_rXBsgeMUEeylWPfcS0Eglw" routing="Tree"/> + <styles xmi:type="notation:FontStyle" xmi:id="_rXBsguMUEeylWPfcS0Eglw" fontName="Segoe UI" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_rXBsg-MUEeylWPfcS0Eglw" points="[0, 0, 58, -52]$[0, 113, 58, 61]$[-52, 113, 6, 61]$[-52, 93, 6, 41]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_rXCTluMUEeylWPfcS0Eglw" id="(0.0,0.09345794392523364)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_rXCTl-MUEeylWPfcS0Eglw" id="(0.9322033898305084,0.5816326530612245)"/> + </edges> + <edges xmi:type="notation:Edge" xmi:id="_IPuHUOjBEeyhBPt9z4CQLw" type="4001" element="_cB2dzAWjEey-kNQ7esRa_g" source="_NxDRoAWjEey-kNQ7esRa_g" target="_YB0RsATxEey-kNQ7esRa_g"> + <children xmi:type="notation:Node" xmi:id="_IPuHVOjBEeyhBPt9z4CQLw" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_IPuHVejBEeyhBPt9z4CQLw" x="59" y="102"/> + </children> + <children xmi:type="notation:Node" xmi:id="_IPuHVujBEeyhBPt9z4CQLw" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_IPuHV-jBEeyhBPt9z4CQLw" x="60"/> + </children> + <children xmi:type="notation:Node" xmi:id="_IPuuYOjBEeyhBPt9z4CQLw" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_IPuuYejBEeyhBPt9z4CQLw" x="-25" y="-10"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_IPuHUejBEeyhBPt9z4CQLw" routing="Rectilinear"/> + <styles xmi:type="notation:FontStyle" xmi:id="_IPuHUujBEeyhBPt9z4CQLw" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_IPuHU-jBEeyhBPt9z4CQLw" points="[12, 76, 200, -247]$[12, 360, 200, 37]$[-134, 360, 54, 37]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_IPuuYujBEeyhBPt9z4CQLw" id="(0.0847457627118644,0.22448979591836735)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_IPuuY-jBEeyhBPt9z4CQLw" id="(0.5423728813559322,0.1308411214953271)"/> + </edges> + <edges xmi:type="notation:Edge" xmi:id="_z6Ce4Or1EeyhBPt9z4CQLw" type="4001" element="_S3W4sAQlEey-kNQ7esRa_g" source="_beL2gAQjEey-kNQ7esRa_g" target="_hdV8kAQjEey-kNQ7esRa_g"> + <children xmi:type="notation:Node" xmi:id="_z6DF8Or1EeyhBPt9z4CQLw" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_z6DF8er1EeyhBPt9z4CQLw" x="63" y="-10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_z6DF8ur1EeyhBPt9z4CQLw" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_z6DF8-r1EeyhBPt9z4CQLw" x="19" y="10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_z6DF9Or1EeyhBPt9z4CQLw" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_z6DF9er1EeyhBPt9z4CQLw" x="1" y="10"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_z6Ce4er1EeyhBPt9z4CQLw" routing="Rectilinear"/> + <styles xmi:type="notation:FontStyle" xmi:id="_z6Ce4ur1EeyhBPt9z4CQLw" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_z6Ce4-r1EeyhBPt9z4CQLw" points="[0, 0, -175, 341]$[67, 0, -108, 341]$[67, -336, -108, 5]$[149, -336, -26, 5]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_z6DF9ur1EeyhBPt9z4CQLw" id="(1.0,0.12244897959183673)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_z6DF9-r1EeyhBPt9z4CQLw" id="(0.22033898305084745,0.6020408163265306)"/> + </edges> + <edges xmi:type="notation:Edge" xmi:id="_AnWfAOr2EeyhBPt9z4CQLw" type="4001" element="_92h2_gccEey-kNQ7esRa_g" source="_lCMqkAZsEey-kNQ7esRa_g" target="_beL2gAQjEey-kNQ7esRa_g"> + <children xmi:type="notation:Node" xmi:id="_AnXGEOr2EeyhBPt9z4CQLw" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AnXGEer2EeyhBPt9z4CQLw" y="-10"/> </children> - <children xmi:type="notation:Node" xmi:id="_RDIQ1gcsEey-kNQ7esRa_g" type="6002"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_RDIQ1wcsEey-kNQ7esRa_g" y="10"/> + <children xmi:type="notation:Node" xmi:id="_AnXGEur2EeyhBPt9z4CQLw" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AnXGE-r2EeyhBPt9z4CQLw" y="10"/> </children> - <children xmi:type="notation:Node" xmi:id="_RDIQ2AcsEey-kNQ7esRa_g" type="6003"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_RDIQ2QcsEey-kNQ7esRa_g" y="10"/> + <children xmi:type="notation:Node" xmi:id="_AnXGFOr2EeyhBPt9z4CQLw" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AnXGFer2EeyhBPt9z4CQLw" y="10"/> </children> - <styles xmi:type="notation:ConnectorStyle" xmi:id="_RDIQ0QcsEey-kNQ7esRa_g" routing="Rectilinear"/> - <styles xmi:type="notation:FontStyle" xmi:id="_RDIQ0gcsEey-kNQ7esRa_g" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> - <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_RDIQ0wcsEey-kNQ7esRa_g" points="[0, 0, -119, 0]$[119, 0, 0, 0]"/> - <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_RDI34AcsEey-kNQ7esRa_g" id="(1.0,0.1326530612244898)"/> - <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_RDI34QcsEey-kNQ7esRa_g" id="(0.0,0.030612244897959183)"/> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_AnWfAer2EeyhBPt9z4CQLw" routing="Rectilinear"/> + <styles xmi:type="notation:FontStyle" xmi:id="_AnWfAur2EeyhBPt9z4CQLw" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_AnWfA-r2EeyhBPt9z4CQLw" points="[-60, -2, 756, 145]$[-184, -2, 632, 145]$[-184, -147, 632, 0]$[-770, -147, 46, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AnXGFur2EeyhBPt9z4CQLw" id="(0.5084745762711864,0.1836734693877551)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AnXGF-r2EeyhBPt9z4CQLw" id="(0.6101694915254238,0.11224489795918367)"/> </edges> - <edges xmi:type="notation:Edge" xmi:id="_JkaXUAc-Eey-kNQ7esRa_g" type="4001" element="_JkOxSgc-Eey-kNQ7esRa_g" source="_IONsYAZtEey-kNQ7esRa_g" target="_D9ZrgAc-Eey-kNQ7esRa_g"> - <children xmi:type="notation:Node" xmi:id="_JkaXVAc-Eey-kNQ7esRa_g" type="6001"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_JkaXVQc-Eey-kNQ7esRa_g" x="-17" y="-10"/> + <edges xmi:type="notation:Edge" xmi:id="_Emxh8Or2EeyhBPt9z4CQLw" type="4001" element="_36hE0CxSEeyc2bacnWuMrg" source="_ipaesCxSEeyc2bacnWuMrg" target="_lCMqkAZsEey-kNQ7esRa_g"> + <children xmi:type="notation:Node" xmi:id="_EmyJAOr2EeyhBPt9z4CQLw" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_EmyJAer2EeyhBPt9z4CQLw" x="-97" y="-3"/> </children> - <children xmi:type="notation:Node" xmi:id="_JkaXVgc-Eey-kNQ7esRa_g" type="6002"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_JkaXVwc-Eey-kNQ7esRa_g" x="7" y="10"/> + <children xmi:type="notation:Node" xmi:id="_EmyJAur2EeyhBPt9z4CQLw" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_EmyJA-r2EeyhBPt9z4CQLw" y="10"/> </children> - <children xmi:type="notation:Node" xmi:id="_JkaXWAc-Eey-kNQ7esRa_g" type="6003"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_JkaXWQc-Eey-kNQ7esRa_g" x="7" y="9"/> + <children xmi:type="notation:Node" xmi:id="_EmyJBOr2EeyhBPt9z4CQLw" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_EmyJBer2EeyhBPt9z4CQLw" y="10"/> </children> - <styles xmi:type="notation:ConnectorStyle" xmi:id="_JkaXUQc-Eey-kNQ7esRa_g" routing="Rectilinear"/> - <styles xmi:type="notation:FontStyle" xmi:id="_JkaXUgc-Eey-kNQ7esRa_g" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> - <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_JkaXUwc-Eey-kNQ7esRa_g" points="[0, 0, -78, -119]$[0, 52, -78, -67]$[78, 52, 0, -67]$[78, 79, 0, -40]"/> - <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JkaXWgc-Eey-kNQ7esRa_g" id="(0.4340425531914894,1.0)"/> - <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JkaXWwc-Eey-kNQ7esRa_g" id="(0.5196506550218342,0.1696234031589832)"/> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_Emxh8er2EeyhBPt9z4CQLw" routing="Rectilinear"/> + <styles xmi:type="notation:FontStyle" xmi:id="_Emxh8ur2EeyhBPt9z4CQLw" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Emxh8-r2EeyhBPt9z4CQLw" points="[31, -7, 236, 238]$[31, -245, 236, 0]$[-176, -245, 29, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_EmyJBur2EeyhBPt9z4CQLw" id="(0.0,0.07142857142857142)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_EmyJB-r2EeyhBPt9z4CQLw" id="(0.7542372881355932,0.20408163265306123)"/> </edges> - <edges xmi:type="notation:Edge" xmi:id="_pBGXIBFDEeydeasO1RaQEg" type="4001" element="_92h2_gccEey-kNQ7esRa_g" source="_lCMqkAZsEey-kNQ7esRa_g" target="_beL2gAQjEey-kNQ7esRa_g"> - <children xmi:type="notation:Node" xmi:id="_pBVAoBFDEeydeasO1RaQEg" type="6001"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_pBVAoRFDEeydeasO1RaQEg" y="-10"/> + <edges xmi:type="notation:Edge" xmi:id="_YtFeAOr4EeyhBPt9z4CQLw" type="4001" element="_JkOxSgc-Eey-kNQ7esRa_g" source="_IONsYAZtEey-kNQ7esRa_g" target="_pEG-0AaCEey-kNQ7esRa_g"> + <children xmi:type="notation:Node" xmi:id="_YtGFEOr4EeyhBPt9z4CQLw" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_YtGFEer4EeyhBPt9z4CQLw" y="-10"/> </children> - <children xmi:type="notation:Node" xmi:id="_pBWOwBFDEeydeasO1RaQEg" type="6002"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_pBWOwRFDEeydeasO1RaQEg" y="10"/> + <children xmi:type="notation:Node" xmi:id="_YtGFEur4EeyhBPt9z4CQLw" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_YtGFE-r4EeyhBPt9z4CQLw" y="10"/> </children> - <children xmi:type="notation:Node" xmi:id="_pBbHQBFDEeydeasO1RaQEg" type="6003"> - <layoutConstraint xmi:type="notation:Bounds" xmi:id="_pBbHQRFDEeydeasO1RaQEg" y="10"/> + <children xmi:type="notation:Node" xmi:id="_YtGFFOr4EeyhBPt9z4CQLw" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_YtGFFer4EeyhBPt9z4CQLw" y="10"/> </children> - <styles xmi:type="notation:ConnectorStyle" xmi:id="_pBGXIRFDEeydeasO1RaQEg" routing="Rectilinear"/> - <styles xmi:type="notation:FontStyle" xmi:id="_pBGXIhFDEeydeasO1RaQEg" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> - <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_pBGXIxFDEeydeasO1RaQEg" points="[0, 0, 738, 235]$[-154, 0, 584, 235]$[-154, -237, 584, -2]$[-734, -237, 4, -2]"/> - <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_pBmGYBFDEeydeasO1RaQEg" id="(0.0,0.1326530612244898)"/> - <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_pBmtcBFDEeydeasO1RaQEg" id="(0.9661016949152542,0.7346938775510204)"/> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_YtFeAer4EeyhBPt9z4CQLw" routing="Rectilinear"/> + <styles xmi:type="notation:FontStyle" xmi:id="_YtFeAur4EeyhBPt9z4CQLw" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_YtFeA-r4EeyhBPt9z4CQLw" points="[74, 0, -182, -59]$[74, 45, -182, -14]$[248, 45, -8, -14]$[248, 52, -8, -7]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_YtGFFur4EeyhBPt9z4CQLw" id="(0.4340425531914894,1.0)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_YtGFF-r4EeyhBPt9z4CQLw" id="(0.4406779661016949,0.07142857142857142)"/> </edges> </data> </ownedAnnotationEntries> @@ -1541,26 +1513,26 @@ </computedStyleDescriptions> </data> </ownedAnnotationEntries> - <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_OUqdgAQNEey-kNQ7esRa_g" name="Agent" tooltipText="" outgoingEdges="_sk66gAQOEey-kNQ7esRa_g _-DqnUAQkEey-kNQ7esRa_g _JBUntgQlEey-kNQ7esRa_g _Yn8yzAQvEey-kNQ7esRa_g" incomingEdges="_oOv_0AWgEey-kNQ7esRa_g _SeKa9gaEEey-kNQ7esRa_g" width="12" height="10"> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_OUqdgAQNEey-kNQ7esRa_g" name="Agent" tooltipText="" outgoingEdges="_sk66gAQOEey-kNQ7esRa_g _-DqnUAQkEey-kNQ7esRa_g" incomingEdges="_SeKa9gaEEey-kNQ7esRa_g _cPgeFhuCEeyPOIo-WqURQQ" width="12" height="10"> <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//Agent"/> <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//Agent"/> <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> <arrangeConstraints>KEEP_SIZE</arrangeConstraints> <arrangeConstraints>KEEP_RATIO</arrangeConstraints> - <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_IZzMIQQOEey-kNQ7esRa_g" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_BWDIURuCEeyPOIo-WqURQQ" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> </ownedStyle> <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> - <ownedElements xmi:type="diagram:DNodeListElement" uid="_UecfMAQNEey-kNQ7esRa_g" name="name : EString" tooltipText=""> - <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//Agent/name"/> - <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//Agent/name"/> - <ownedStyle xmi:type="diagram:BundledImage" uid="_IZzzMQQOEey-kNQ7esRa_g" labelAlignment="LEFT"> + <ownedElements xmi:type="diagram:DNodeListElement" uid="__pp38BuBEeyPOIo-WqURQQ" name="agentType : EString" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//Agent/agentType"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//Agent/agentType"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_BWE9ghuCEeyPOIo-WqURQQ" labelAlignment="LEFT"> <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> </ownedStyle> <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> </ownedElements> </ownedDiagramElements> - <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_hSvboAQOEey-kNQ7esRa_g" name="Entity" tooltipText="" incomingEdges="_sk66gAQOEey-kNQ7esRa_g _s-J3-AQkEey-kNQ7esRa_g _3h3klgWgEey-kNQ7esRa_g" width="12" height="10"> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_hSvboAQOEey-kNQ7esRa_g" name="Entity" tooltipText="" incomingEdges="_sk66gAQOEey-kNQ7esRa_g _s-J3-AQkEey-kNQ7esRa_g" width="12" height="10"> <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//Entity"/> <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//Entity"/> <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> @@ -1582,16 +1554,16 @@ <ownedDiagramElements xmi:type="diagram:DEdge" uid="_sk66gAQOEey-kNQ7esRa_g" sourceNode="_OUqdgAQNEey-kNQ7esRa_g" targetNode="_hSvboAQOEey-kNQ7esRa_g"> <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//Agent"/> <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//Agent"/> - <ownedStyle xmi:type="diagram:EdgeStyle" uid="_sk990AQOEey-kNQ7esRa_g" targetArrow="InputClosedArrow" routingStyle="tree"> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_BWKdEBuCEeyPOIo-WqURQQ" targetArrow="InputClosedArrow" routingStyle="tree"> <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/> - <beginLabelStyle xmi:type="diagram:BeginLabelStyle" uid="_sk-k4AQOEey-kNQ7esRa_g" showIcon="false"> + <beginLabelStyle xmi:type="diagram:BeginLabelStyle" uid="_BWKdERuCEeyPOIo-WqURQQ" showIcon="false"> <labelFormat>italic</labelFormat> </beginLabelStyle> - <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_sk-k4QQOEey-kNQ7esRa_g" showIcon="false"/> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_BWKdEhuCEeyPOIo-WqURQQ" showIcon="false"/> </ownedStyle> <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/> </ownedDiagramElements> - <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_PgvNEAQjEey-kNQ7esRa_g" name="LocalizableObject" tooltipText="" outgoingEdges="_s-J3-AQkEey-kNQ7esRa_g __99JwAQkEey-kNQ7esRa_g _NJv1oAQlEey-kNQ7esRa_g" incomingEdges="_-DqnUAQkEey-kNQ7esRa_g _p4wqlgWgEey-kNQ7esRa_g" width="12" height="10"> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_PgvNEAQjEey-kNQ7esRa_g" name="LocalizableObject" tooltipText="" outgoingEdges="_s-J3-AQkEey-kNQ7esRa_g _cPgeFhuCEeyPOIo-WqURQQ _Q-uURhuHEeyPOIo-WqURQQ" incomingEdges="_-DqnUAQkEey-kNQ7esRa_g" width="12" height="10"> <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//LocalizableObject"/> <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//LocalizableObject"/> <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> @@ -1609,35 +1581,16 @@ </ownedStyle> <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> </ownedElements> - <ownedElements xmi:type="diagram:DNodeListElement" uid="_Ri6rgAcpEey-kNQ7esRa_g" name="type : EString" tooltipText=""> - <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//LocalizableObject/type"/> - <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//LocalizableObject/type"/> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_Ri6rgAcpEey-kNQ7esRa_g" name="sensorType : EString" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//LocalizableObject/sensorType"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//LocalizableObject/sensorType"/> <ownedStyle xmi:type="diagram:BundledImage" uid="_S14vQQcpEey-kNQ7esRa_g" labelAlignment="LEFT"> <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> </ownedStyle> <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> </ownedElements> </ownedDiagramElements> - <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_ZOg58AQjEey-kNQ7esRa_g" name="PositionSensor" tooltipText="" outgoingEdges="_oOv_0AWgEey-kNQ7esRa_g _p4wqlgWgEey-kNQ7esRa_g _3h3klgWgEey-kNQ7esRa_g" incomingEdges="__99JwAQkEey-kNQ7esRa_g _Yn8yzAQvEey-kNQ7esRa_g" width="12" height="10"> - <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//PositionSensor"/> - <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//PositionSensor"/> - <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> - <arrangeConstraints>KEEP_SIZE</arrangeConstraints> - <arrangeConstraints>KEEP_RATIO</arrangeConstraints> - <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_8XnV8gcpEey-kNQ7esRa_g" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> - <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> - </ownedStyle> - <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> - <ownedElements xmi:type="diagram:DNodeListElement" uid="_7XFGAAcpEey-kNQ7esRa_g" name="type : EString" tooltipText=""> - <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//PositionSensor/type"/> - <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//PositionSensor/type"/> - <ownedStyle xmi:type="diagram:BundledImage" uid="_8XokJgcpEey-kNQ7esRa_g" labelAlignment="LEFT"> - <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> - </ownedStyle> - <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> - </ownedElements> - </ownedDiagramElements> - <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_beGW8AQjEey-kNQ7esRa_g" name="Placing" tooltipText="" outgoingEdges="_OlBg0AQlEey-kNQ7esRa_g _S3W4sAQlEey-kNQ7esRa_g" incomingEdges="_NJv1oAQlEey-kNQ7esRa_g _t9fiEwQxEey-kNQ7esRa_g _92h2_gccEey-kNQ7esRa_g" width="12" height="10"> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_beGW8AQjEey-kNQ7esRa_g" name="Placing" tooltipText="" outgoingEdges="_OlBg0AQlEey-kNQ7esRa_g _S3W4sAQlEey-kNQ7esRa_g" incomingEdges="_t9fiEwQxEey-kNQ7esRa_g _Q-uURhuHEeyPOIo-WqURQQ _G94qwBxXEeyPOIo-WqURQQ _RCvPUgcsEey-kNQ7esRa_g _92h2_gccEey-kNQ7esRa_g" width="12" height="10"> <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//Placing"/> <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//Placing"/> <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> @@ -1648,7 +1601,7 @@ </ownedStyle> <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> </ownedDiagramElements> - <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_foX_AAQjEey-kNQ7esRa_g" name="Position" tooltipText="" outgoingEdges="_X6rBlgQlEey-kNQ7esRa_g" incomingEdges="_lXawBgQkEey-kNQ7esRa_g _lyTVNgQkEey-kNQ7esRa_g _OlBg0AQlEey-kNQ7esRa_g _RCvPUgcsEey-kNQ7esRa_g" width="12" height="10"> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_foX_AAQjEey-kNQ7esRa_g" name="Position" tooltipText="" outgoingEdges="_X6rBlgQlEey-kNQ7esRa_g _r-z1gBrzEeyPOIo-WqURQQ _t3gckhrzEeyPOIo-WqURQQ" incomingEdges="_OlBg0AQlEey-kNQ7esRa_g" width="12" height="10"> <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//Position"/> <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//Position"/> <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> @@ -1659,7 +1612,7 @@ </ownedStyle> <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> </ownedDiagramElements> - <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_hdQdAAQjEey-kNQ7esRa_g" name="Orientation" tooltipText="" incomingEdges="_S3W4sAQlEey-kNQ7esRa_g _eXVOvgcoEey-kNQ7esRa_g" width="12" height="10"> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_hdQdAAQjEey-kNQ7esRa_g" name="Orientation" tooltipText="" incomingEdges="_rWe5_OMUEeylWPfcS0Eglw _S3W4sAQlEey-kNQ7esRa_g" width="12" height="10"> <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//Orientation"/> <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//Orientation"/> <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> @@ -1670,29 +1623,7 @@ </ownedStyle> <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> </ownedDiagramElements> - <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_11gvkAQjEey-kNQ7esRa_g" name="AbsolutePosition" tooltipText="" outgoingEdges="_lXawBgQkEey-kNQ7esRa_g _cJaS5gQlEey-kNQ7esRa_g" width="12" height="10"> - <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//AbsolutePosition"/> - <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//AbsolutePosition"/> - <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> - <arrangeConstraints>KEEP_SIZE</arrangeConstraints> - <arrangeConstraints>KEEP_RATIO</arrangeConstraints> - <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_11gvkQQjEey-kNQ7esRa_g" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> - <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> - </ownedStyle> - <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> - </ownedDiagramElements> - <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_37ZeAAQjEey-kNQ7esRa_g" name="RelativePosition" tooltipText="" outgoingEdges="_lyTVNgQkEey-kNQ7esRa_g _g7KKrAQlEey-kNQ7esRa_g _N_3LvAWNEey-kNQ7esRa_g" width="12" height="10"> - <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//RelativePosition"/> - <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//RelativePosition"/> - <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> - <arrangeConstraints>KEEP_SIZE</arrangeConstraints> - <arrangeConstraints>KEEP_RATIO</arrangeConstraints> - <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_37ZeAQQjEey-kNQ7esRa_g" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> - <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> - </ownedStyle> - <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> - </ownedDiagramElements> - <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_733TkAQjEey-kNQ7esRa_g" name="WGS84Point" tooltipText="" incomingEdges="_cJaS5gQlEey-kNQ7esRa_g" width="12" height="10"> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_733TkAQjEey-kNQ7esRa_g" name="WGS84Point" tooltipText="" outgoingEdges="_ollP6RrzEeyPOIo-WqURQQ" width="12" height="10"> <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//WGS84Point"/> <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//WGS84Point"/> <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> @@ -1800,7 +1731,7 @@ <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> </ownedElements> </ownedDiagramElements> - <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_SIp1EAQkEey-kNQ7esRa_g" name="ReferenceSystem" tooltipText="" outgoingEdges="_t9fiEwQxEey-kNQ7esRa_g" incomingEdges="_idHiEAQkEey-kNQ7esRa_g _g7KKrAQlEey-kNQ7esRa_g" width="12" height="10"> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_SIp1EAQkEey-kNQ7esRa_g" name="ReferenceSystem" tooltipText="" outgoingEdges="_t9fiEwQxEey-kNQ7esRa_g" incomingEdges="_t3gckhrzEeyPOIo-WqURQQ _9TmfrBsKEeyPOIo-WqURQQ" width="12" height="10"> <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//ReferenceSystem"/> <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//ReferenceSystem"/> <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> @@ -1827,16 +1758,32 @@ <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> </ownedElements> </ownedDiagramElements> - <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_UN3OEAQkEey-kNQ7esRa_g" name="Zone" tooltipText="" outgoingEdges="_idHiEAQkEey-kNQ7esRa_g _i5qetgQlEey-kNQ7esRa_g" incomingEdges="_j8d_gAQlEey-kNQ7esRa_g" width="12" height="10"> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_UN3OEAQkEey-kNQ7esRa_g" name="Zone" tooltipText="" outgoingEdges="_i5qetgQlEey-kNQ7esRa_g" incomingEdges="_j8d_gAQlEey-kNQ7esRa_g" width="12" height="10"> <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//Zone"/> <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//Zone"/> <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> <arrangeConstraints>KEEP_SIZE</arrangeConstraints> <arrangeConstraints>KEEP_RATIO</arrangeConstraints> - <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_mcZCnQcuEey-kNQ7esRa_g" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_9i-28hrzEeyPOIo-WqURQQ" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> </ownedStyle> <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_6lo8ABrzEeyPOIo-WqURQQ" name="name : EString" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//Zone/name"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//Zone/name"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_7rLAtxrzEeyPOIo-WqURQQ" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_8ybjsBrzEeyPOIo-WqURQQ" name="id : EString" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//Zone/id"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//Zone/id"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_9jBTJBrzEeyPOIo-WqURQQ" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> </ownedDiagramElements> <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_VW3dgAQkEey-kNQ7esRa_g" name="ZoneMap" tooltipText="" outgoingEdges="_jdJbsAQkEey-kNQ7esRa_g _j8d_gAQlEey-kNQ7esRa_g" incomingEdges="_fEHOygaEEey-kNQ7esRa_g" width="12" height="10"> <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//ZoneMap"/> @@ -1849,7 +1796,7 @@ </ownedStyle> <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> </ownedDiagramElements> - <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_XZe1gAQkEey-kNQ7esRa_g" name="Space" tooltipText="" incomingEdges="_i5qetgQlEey-kNQ7esRa_g" width="12" height="10"> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_XZe1gAQkEey-kNQ7esRa_g" name="Space" tooltipText="" outgoingEdges="_G94qwBxXEeyPOIo-WqURQQ" incomingEdges="_i5qetgQlEey-kNQ7esRa_g" width="12" height="10"> <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//Space"/> <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//Space"/> <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> @@ -1895,18 +1842,6 @@ </ownedStyle> <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> </ownedDiagramElements> - <ownedDiagramElements xmi:type="diagram:DEdge" uid="_idHiEAQkEey-kNQ7esRa_g" sourceNode="_UN3OEAQkEey-kNQ7esRa_g" targetNode="_SIp1EAQkEey-kNQ7esRa_g"> - <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//Zone"/> - <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//Zone"/> - <ownedStyle xmi:type="diagram:EdgeStyle" uid="_mceiFgcuEey-kNQ7esRa_g" targetArrow="InputClosedArrow" routingStyle="tree"> - <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/> - <beginLabelStyle xmi:type="diagram:BeginLabelStyle" uid="_mceiFwcuEey-kNQ7esRa_g" showIcon="false"> - <labelFormat>italic</labelFormat> - </beginLabelStyle> - <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_mceiGAcuEey-kNQ7esRa_g" showIcon="false"/> - </ownedStyle> - <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/> - </ownedDiagramElements> <ownedDiagramElements xmi:type="diagram:DEdge" uid="_jdJbsAQkEey-kNQ7esRa_g" sourceNode="_VW3dgAQkEey-kNQ7esRa_g" targetNode="_aKe9gAQkEey-kNQ7esRa_g"> <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//ZoneMap"/> <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//ZoneMap"/> @@ -1919,30 +1854,6 @@ </ownedStyle> <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/> </ownedDiagramElements> - <ownedDiagramElements xmi:type="diagram:DEdge" uid="_lXawBgQkEey-kNQ7esRa_g" sourceNode="_11gvkAQjEey-kNQ7esRa_g" targetNode="_foX_AAQjEey-kNQ7esRa_g"> - <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//AbsolutePosition"/> - <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//AbsolutePosition"/> - <ownedStyle xmi:type="diagram:EdgeStyle" uid="_lXbXEAQkEey-kNQ7esRa_g" targetArrow="InputClosedArrow" routingStyle="tree"> - <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/> - <beginLabelStyle xmi:type="diagram:BeginLabelStyle" uid="_lXbXEQQkEey-kNQ7esRa_g" showIcon="false"> - <labelFormat>italic</labelFormat> - </beginLabelStyle> - <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_lXbXEgQkEey-kNQ7esRa_g" showIcon="false"/> - </ownedStyle> - <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/> - </ownedDiagramElements> - <ownedDiagramElements xmi:type="diagram:DEdge" uid="_lyTVNgQkEey-kNQ7esRa_g" sourceNode="_37ZeAAQjEey-kNQ7esRa_g" targetNode="_foX_AAQjEey-kNQ7esRa_g"> - <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//RelativePosition"/> - <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//RelativePosition"/> - <ownedStyle xmi:type="diagram:EdgeStyle" uid="_lyT8QAQkEey-kNQ7esRa_g" targetArrow="InputClosedArrow" routingStyle="tree"> - <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/> - <beginLabelStyle xmi:type="diagram:BeginLabelStyle" uid="_lyT8QQQkEey-kNQ7esRa_g" showIcon="false"> - <labelFormat>italic</labelFormat> - </beginLabelStyle> - <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_lyT8QgQkEey-kNQ7esRa_g" showIcon="false"/> - </ownedStyle> - <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/> - </ownedDiagramElements> <ownedDiagramElements xmi:type="diagram:DEdge" uid="_s-J3-AQkEey-kNQ7esRa_g" sourceNode="_PgvNEAQjEey-kNQ7esRa_g" targetNode="_hSvboAQOEey-kNQ7esRa_g"> <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//LocalizableObject"/> <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//LocalizableObject"/> @@ -1969,50 +1880,6 @@ </ownedStyle> <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> </ownedDiagramElements> - <ownedDiagramElements xmi:type="diagram:DEdge" uid="__99JwAQkEey-kNQ7esRa_g" name="[1..1] pSensor" sourceNode="_PgvNEAQjEey-kNQ7esRa_g" targetNode="_ZOg58AQjEey-kNQ7esRa_g"> - <target xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//LocalizableObject/pSensor"/> - <semanticElements xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//LocalizableObject/pSensor"/> - <ownedStyle xmi:type="diagram:EdgeStyle" uid="_oD68EwQwEey-kNQ7esRa_g" description="_oD68EAQwEey-kNQ7esRa_g" routingStyle="manhattan" strokeColor="0,0,0"> - <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_oD68FQQwEey-kNQ7esRa_g" showIcon="false"> - <labelFormat>bold</labelFormat> - </centerLabelStyle> - <endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_oD68FAQwEey-kNQ7esRa_g" labelSize="6" showIcon="false" labelColor="39,76,114"/> - </ownedStyle> - <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> - </ownedDiagramElements> - <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_C_GmkAQlEey-kNQ7esRa_g" name="NetworkInterface" tooltipText="" incomingEdges="_JBUntgQlEey-kNQ7esRa_g" width="12" height="10"> - <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//NetworkInterface"/> - <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//NetworkInterface"/> - <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> - <arrangeConstraints>KEEP_SIZE</arrangeConstraints> - <arrangeConstraints>KEEP_RATIO</arrangeConstraints> - <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_C_GmkQQlEey-kNQ7esRa_g" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> - <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> - </ownedStyle> - <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> - </ownedDiagramElements> - <ownedDiagramElements xmi:type="diagram:DEdge" uid="_JBUntgQlEey-kNQ7esRa_g" name="[1..1] netInt" sourceNode="_OUqdgAQNEey-kNQ7esRa_g" targetNode="_C_GmkAQlEey-kNQ7esRa_g"> - <target xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//Agent/netInt"/> - <semanticElements xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//Agent/netInt"/> - <ownedStyle xmi:type="diagram:EdgeStyle" uid="_xqra9gQwEey-kNQ7esRa_g" description="_oD68EAQwEey-kNQ7esRa_g" routingStyle="manhattan" strokeColor="0,0,0"> - <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_xqra-AQwEey-kNQ7esRa_g" showIcon="false"> - <labelFormat>bold</labelFormat> - </centerLabelStyle> - <endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_xqra9wQwEey-kNQ7esRa_g" labelSize="6" showIcon="false" labelColor="39,76,114"/> - </ownedStyle> - <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> - </ownedDiagramElements> - <ownedDiagramElements xmi:type="diagram:DEdge" uid="_NJv1oAQlEey-kNQ7esRa_g" sourceNode="_PgvNEAQjEey-kNQ7esRa_g" targetNode="_beGW8AQjEey-kNQ7esRa_g" beginLabel="[1..1] lObject" endLabel="[0..1] currentPlacing"> - <target xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//LocalizableObject/currentPlacing"/> - <semanticElements xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//LocalizableObject/currentPlacing"/> - <semanticElements xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//Placing/lObject"/> - <ownedStyle xmi:type="diagram:EdgeStyle" uid="_NJxq0AQlEey-kNQ7esRa_g" sourceArrow="InputArrow" routingStyle="manhattan" strokeColor="0,0,0"> - <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='Bi-directional%20EC_EReference%20']/@style"/> - <beginLabelStyle xmi:type="diagram:BeginLabelStyle" uid="_NJyR4AQlEey-kNQ7esRa_g" showIcon="false"/> - <endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_NJyR4QQlEey-kNQ7esRa_g" showIcon="false"/> - </ownedStyle> - <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='Bi-directional%20EC_EReference%20']"/> - </ownedDiagramElements> <ownedDiagramElements xmi:type="diagram:DEdge" uid="_OlBg0AQlEey-kNQ7esRa_g" name="[1..1] position" sourceNode="_beGW8AQjEey-kNQ7esRa_g" targetNode="_foX_AAQjEey-kNQ7esRa_g"> <target xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//Placing/position"/> <semanticElements xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//Placing/position"/> @@ -2029,9 +1896,12 @@ <semanticElements xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//Placing/orientation"/> <ownedStyle xmi:type="diagram:EdgeStyle" uid="_1P1jwAQwEey-kNQ7esRa_g" description="_oD68EAQwEey-kNQ7esRa_g" routingStyle="manhattan" strokeColor="0,0,0"> <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_1P1jwgQwEey-kNQ7esRa_g" showIcon="false"> + <customFeatures>labelSize</customFeatures> <labelFormat>bold</labelFormat> </centerLabelStyle> - <endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_1P1jwQQwEey-kNQ7esRa_g" labelSize="6" showIcon="false" labelColor="39,76,114"/> + <endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_1P1jwQQwEey-kNQ7esRa_g" showIcon="false" labelColor="39,76,114"> + <customFeatures>labelSize</customFeatures> + </endLabelStyle> </ownedStyle> <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> </ownedDiagramElements> @@ -2045,28 +1915,6 @@ </ownedStyle> <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> </ownedDiagramElements> - <ownedDiagramElements xmi:type="diagram:DEdge" uid="_cJaS5gQlEey-kNQ7esRa_g" name="[1..1] point" sourceNode="_11gvkAQjEey-kNQ7esRa_g" targetNode="_733TkAQjEey-kNQ7esRa_g"> - <target xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//AbsolutePosition/point"/> - <semanticElements xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//AbsolutePosition/point"/> - <ownedStyle xmi:type="diagram:EdgeStyle" uid="_RusxHAQxEey-kNQ7esRa_g" description="_oD68EAQwEey-kNQ7esRa_g" routingStyle="manhattan" strokeColor="0,0,0"> - <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_RusxHgQxEey-kNQ7esRa_g" showIcon="false"> - <labelFormat>bold</labelFormat> - </centerLabelStyle> - <endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_RusxHQQxEey-kNQ7esRa_g" labelSize="6" showIcon="false" labelColor="39,76,114"/> - </ownedStyle> - <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> - </ownedDiagramElements> - <ownedDiagramElements xmi:type="diagram:DEdge" uid="_g7KKrAQlEey-kNQ7esRa_g" name="[1..1] reference" sourceNode="_37ZeAAQjEey-kNQ7esRa_g" targetNode="_SIp1EAQkEey-kNQ7esRa_g"> - <target xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//RelativePosition/reference"/> - <semanticElements xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//RelativePosition/reference"/> - <ownedStyle xmi:type="diagram:EdgeStyle" uid="_en-wrAQxEey-kNQ7esRa_g" description="_oD68EAQwEey-kNQ7esRa_g" routingStyle="manhattan" strokeColor="0,0,0"> - <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_en-wrgQxEey-kNQ7esRa_g" showIcon="false"> - <labelFormat>bold</labelFormat> - </centerLabelStyle> - <endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_en-wrQQxEey-kNQ7esRa_g" labelSize="6" showIcon="false" labelColor="39,76,114"/> - </ownedStyle> - <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> - </ownedDiagramElements> <ownedDiagramElements xmi:type="diagram:DEdge" uid="_i5qetgQlEey-kNQ7esRa_g" name="[0..*] space" sourceNode="_UN3OEAQkEey-kNQ7esRa_g" targetNode="_XZe1gAQkEey-kNQ7esRa_g"> <target xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//Zone/space"/> <semanticElements xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//Zone/space"/> @@ -2093,32 +1941,17 @@ </ownedStyle> <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> </ownedDiagramElements> - <ownedDiagramElements xmi:type="diagram:DEdge" uid="_Yn8yzAQvEey-kNQ7esRa_g" name="[0..*] pSensors" sourceNode="_OUqdgAQNEey-kNQ7esRa_g" targetNode="_ZOg58AQjEey-kNQ7esRa_g"> - <target xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//Agent/pSensors"/> - <semanticElements xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//Agent/pSensors"/> - <ownedStyle xmi:type="diagram:EdgeStyle" uid="_Yn9Z0AQvEey-kNQ7esRa_g" routingStyle="manhattan" strokeColor="0,0,0"> - <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']/@style"/> - <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_Yn9Z0gQvEey-kNQ7esRa_g" showIcon="false"> - <customFeatures>labelSize</customFeatures> - </centerLabelStyle> - <endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_Yn9Z0QQvEey-kNQ7esRa_g" showIcon="false" labelColor="39,76,114"> - <customFeatures>labelSize</customFeatures> - </endLabelStyle> - </ownedStyle> - <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> - </ownedDiagramElements> - <ownedDiagramElements xmi:type="diagram:DEdge" uid="_t9fiEwQxEey-kNQ7esRa_g" name="[1..1] origin" sourceNode="_SIp1EAQkEey-kNQ7esRa_g" targetNode="_beGW8AQjEey-kNQ7esRa_g"> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_t9fiEwQxEey-kNQ7esRa_g" name="[0..1] origin" sourceNode="_SIp1EAQkEey-kNQ7esRa_g" targetNode="_beGW8AQjEey-kNQ7esRa_g"> <target xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//ReferenceSystem/origin"/> <semanticElements xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//ReferenceSystem/origin"/> - <ownedStyle xmi:type="diagram:EdgeStyle" uid="_v12K4gQxEey-kNQ7esRa_g" description="_oD68EAQwEey-kNQ7esRa_g" routingStyle="manhattan" strokeColor="0,0,0"> - <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_v12K5AQxEey-kNQ7esRa_g" showIcon="false"> - <labelFormat>bold</labelFormat> - </centerLabelStyle> - <endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_v12K4wQxEey-kNQ7esRa_g" labelSize="6" showIcon="false" labelColor="39,76,114"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_AiIU-Bt-EeyPOIo-WqURQQ" routingStyle="manhattan" strokeColor="0,0,0"> + <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']/@style"/> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_AiIU-ht-EeyPOIo-WqURQQ" showIcon="false"/> + <endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_AiIU-Rt-EeyPOIo-WqURQQ" labelSize="6" showIcon="false" labelColor="39,76,114"/> </ownedStyle> <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> </ownedDiagramElements> - <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_YBru0ATxEey-kNQ7esRa_g" name="Quaternion" tooltipText="" outgoingEdges="_eXVOvgcoEey-kNQ7esRa_g" width="12" height="10"> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_YBru0ATxEey-kNQ7esRa_g" name="Quaternion" tooltipText="" outgoingEdges="_rWe5_OMUEeylWPfcS0Eglw" incomingEdges="_cB2dzAWjEey-kNQ7esRa_g" width="12" height="10"> <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//Quaternion"/> <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//Quaternion"/> <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> @@ -2192,7 +2025,7 @@ </ownedStyle> <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/> </ownedDiagramElements> - <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_lkw14AWMEey-kNQ7esRa_g" name="Point" tooltipText="" incomingEdges="_N_3LvAWNEey-kNQ7esRa_g _M1gb_AWOEey-kNQ7esRa_g _NT8rfwWOEey-kNQ7esRa_g" width="12" height="10"> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_lkw14AWMEey-kNQ7esRa_g" name="Point" tooltipText="" incomingEdges="_M1gb_AWOEey-kNQ7esRa_g _NT8rfwWOEey-kNQ7esRa_g _ollP6RrzEeyPOIo-WqURQQ _r-z1gBrzEeyPOIo-WqURQQ" width="12" height="10"> <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//Point"/> <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//Point"/> <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> @@ -2203,20 +2036,6 @@ </ownedStyle> <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> </ownedDiagramElements> - <ownedDiagramElements xmi:type="diagram:DEdge" uid="_N_3LvAWNEey-kNQ7esRa_g" name="[1..1] point" sourceNode="_37ZeAAQjEey-kNQ7esRa_g" targetNode="_lkw14AWMEey-kNQ7esRa_g"> - <target xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//RelativePosition/point"/> - <semanticElements xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//RelativePosition/point"/> - <ownedStyle xmi:type="diagram:EdgeStyle" uid="_P99QFgWNEey-kNQ7esRa_g" description="_oD68EAQwEey-kNQ7esRa_g" routingStyle="manhattan" strokeColor="0,0,0"> - <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_P99QGAWNEey-kNQ7esRa_g" showIcon="false"> - <customFeatures>labelSize</customFeatures> - <labelFormat>bold</labelFormat> - </centerLabelStyle> - <endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_P99QFwWNEey-kNQ7esRa_g" showIcon="false" labelColor="39,76,114"> - <customFeatures>labelSize</customFeatures> - </endLabelStyle> - </ownedStyle> - <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> - </ownedDiagramElements> <ownedDiagramElements xmi:type="diagram:DEdge" uid="_M1gb_AWOEey-kNQ7esRa_g" sourceNode="_EcfnEAQkEey-kNQ7esRa_g" targetNode="_lkw14AWMEey-kNQ7esRa_g"> <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//Point2D"/> <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//Point2D"/> @@ -2241,66 +2060,25 @@ </ownedStyle> <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/> </ownedDiagramElements> - <ownedDiagramElements xmi:type="diagram:DNodeList" uid="__kvLoAWcEey-kNQ7esRa_g" name="Rawdata" tooltipText="" incomingEdges="_iSeHXgWjEey-kNQ7esRa_g _iy-MfAWjEey-kNQ7esRa_g _T72oPgaBEey-kNQ7esRa_g _WTwDiAcMEey-kNQ7esRa_g" width="12" height="10"> - <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//Rawdata"/> - <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//Rawdata"/> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="__kvLoAWcEey-kNQ7esRa_g" name="RawdataEvent" tooltipText="" incomingEdges="_iSeHXgWjEey-kNQ7esRa_g _iy-MfAWjEey-kNQ7esRa_g _WTwDiAcMEey-kNQ7esRa_g" width="12" height="10"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//RawdataEvent"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//RawdataEvent"/> <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> <arrangeConstraints>KEEP_SIZE</arrangeConstraints> <arrangeConstraints>KEEP_RATIO</arrangeConstraints> - <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="__rmE0wWgEey-kNQ7esRa_g" iconPath="/org.eclipse.emf.ecoretools.design/icons/full/obj16/EClass_abstract.gif" borderSize="1" borderSizeComputationExpression="1" borderColor="125,125,125" backgroundStyle="Liquid" foregroundColor="228,228,228"> - <labelFormat>italic</labelFormat> - <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@conditionnalStyles.1/@style"/> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_6Oi9IyeVEeydzb6PKf1sDQ" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> </ownedStyle> <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> - <ownedElements xmi:type="diagram:DNodeListElement" uid="_9wYVQAWgEey-kNQ7esRa_g" name="sensorId : EString" tooltipText=""> - <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//Rawdata/sensorId"/> - <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//Rawdata/sensorId"/> - <ownedStyle xmi:type="diagram:BundledImage" uid="__rnS5wWgEey-kNQ7esRa_g" labelAlignment="LEFT"> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_4ZOaQCeVEeydzb6PKf1sDQ" name="timeStamp : String" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//RawdataEvent/timeStamp"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//RawdataEvent/timeStamp"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_6OnOkyeVEeydzb6PKf1sDQ" labelAlignment="LEFT"> <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> </ownedStyle> <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> </ownedElements> </ownedDiagramElements> - <ownedDiagramElements xmi:type="diagram:DEdge" uid="_oOv_0AWgEey-kNQ7esRa_g" name="[0..1] agent" sourceNode="_ZOg58AQjEey-kNQ7esRa_g" targetNode="_OUqdgAQNEey-kNQ7esRa_g"> - <target xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//PositionSensor/agent"/> - <semanticElements xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//PositionSensor/agent"/> - <ownedStyle xmi:type="diagram:EdgeStyle" uid="_oOwm4AWgEey-kNQ7esRa_g" routingStyle="manhattan" strokeColor="0,0,0"> - <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']/@style"/> - <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_oOwm4gWgEey-kNQ7esRa_g" showIcon="false"> - <customFeatures>labelSize</customFeatures> - </centerLabelStyle> - <endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_oOwm4QWgEey-kNQ7esRa_g" showIcon="false" labelColor="39,76,114"> - <customFeatures>labelSize</customFeatures> - </endLabelStyle> - </ownedStyle> - <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> - </ownedDiagramElements> - <ownedDiagramElements xmi:type="diagram:DEdge" uid="_p4wqlgWgEey-kNQ7esRa_g" name="[0..1] lObject" sourceNode="_ZOg58AQjEey-kNQ7esRa_g" targetNode="_PgvNEAQjEey-kNQ7esRa_g"> - <target xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//PositionSensor/lObject"/> - <semanticElements xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//PositionSensor/lObject"/> - <ownedStyle xmi:type="diagram:EdgeStyle" uid="_p4xRoAWgEey-kNQ7esRa_g" routingStyle="manhattan" strokeColor="0,0,0"> - <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']/@style"/> - <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_p4xRogWgEey-kNQ7esRa_g" showIcon="false"> - <customFeatures>labelSize</customFeatures> - </centerLabelStyle> - <endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_p4xRoQWgEey-kNQ7esRa_g" showIcon="false" labelColor="39,76,114"> - <customFeatures>labelSize</customFeatures> - </endLabelStyle> - </ownedStyle> - <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> - </ownedDiagramElements> - <ownedDiagramElements xmi:type="diagram:DEdge" uid="_3h3klgWgEey-kNQ7esRa_g" sourceNode="_ZOg58AQjEey-kNQ7esRa_g" targetNode="_hSvboAQOEey-kNQ7esRa_g"> - <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//PositionSensor"/> - <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//PositionSensor"/> - <ownedStyle xmi:type="diagram:EdgeStyle" uid="_8XuDrAcpEey-kNQ7esRa_g" targetArrow="InputClosedArrow" routingStyle="tree"> - <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/> - <beginLabelStyle xmi:type="diagram:BeginLabelStyle" uid="_8XuDrQcpEey-kNQ7esRa_g" showIcon="false"> - <labelFormat>italic</labelFormat> - </beginLabelStyle> - <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_8XuDrgcpEey-kNQ7esRa_g" showIcon="false"/> - </ownedStyle> - <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/> - </ownedDiagramElements> <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_DsBX0AWiEey-kNQ7esRa_g" name="Proximity" tooltipText="" outgoingEdges="_iy-MfAWjEey-kNQ7esRa_g" incomingEdges="_OeuFcgWiEey-kNQ7esRa_g _PAbrUAWiEey-kNQ7esRa_g _QifPfAcMEey-kNQ7esRa_g _9X2xLAcMEey-kNQ7esRa_g" width="12" height="10"> <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//Proximity"/> <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//Proximity"/> @@ -2404,21 +2182,18 @@ <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> <arrangeConstraints>KEEP_SIZE</arrangeConstraints> <arrangeConstraints>KEEP_RATIO</arrangeConstraints> - <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_Nw8j8QWjEey-kNQ7esRa_g" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> - <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> - </ownedStyle> - <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> - </ownedDiagramElements> - <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_Sn32oAWjEey-kNQ7esRa_g" name="AngularRate" tooltipText="" incomingEdges="_cB2dzAWjEey-kNQ7esRa_g" width="12" height="10"> - <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//AngularRate"/> - <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//AngularRate"/> - <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> - <arrangeConstraints>KEEP_SIZE</arrangeConstraints> - <arrangeConstraints>KEEP_RATIO</arrangeConstraints> - <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_Sn32oQWjEey-kNQ7esRa_g" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_76gZlieeEeydzb6PKf1sDQ" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> </ownedStyle> <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_5-c8kCeeEeydzb6PKf1sDQ" name="sensorId : String" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IMU/sensorId"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IMU/sensorId"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_76kD8ieeEeydzb6PKf1sDQ" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> </ownedDiagramElements> <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_YO6XoAWjEey-kNQ7esRa_g" name="Acceleration" tooltipText="" incomingEdges="_cxcusAWjEey-kNQ7esRa_g" width="12" height="10"> <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//Acceleration"/> @@ -2426,19 +2201,46 @@ <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> <arrangeConstraints>KEEP_SIZE</arrangeConstraints> <arrangeConstraints>KEEP_RATIO</arrangeConstraints> - <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_YO6-sAWjEey-kNQ7esRa_g" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_hliX-ydREey8t_kDLBrwCg" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> </ownedStyle> <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_ZHyIgCdREey8t_kDLBrwCg" name="x : Float = 0.0" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//Acceleration/x"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//Acceleration/x"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_adqWUSdREey8t_kDLBrwCg" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_dZJ3ECdREey8t_kDLBrwCg" name="y : Float = 0.0" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//Acceleration/y"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//Acceleration/y"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_fTxwtydREey8t_kDLBrwCg" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_g0c5QCdREey8t_kDLBrwCg" name="z : Float = 0.0" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//Acceleration/z"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//Acceleration/z"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_hlk0NSdREey8t_kDLBrwCg" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> </ownedDiagramElements> - <ownedDiagramElements xmi:type="diagram:DEdge" uid="_cB2dzAWjEey-kNQ7esRa_g" name="[1..1] angularrate" sourceNode="_Nw8j8AWjEey-kNQ7esRa_g" targetNode="_Sn32oAWjEey-kNQ7esRa_g"> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_cB2dzAWjEey-kNQ7esRa_g" name="[1..1] angularrate" sourceNode="_Nw8j8AWjEey-kNQ7esRa_g" targetNode="_YBru0ATxEey-kNQ7esRa_g"> <target xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//IMU/angularrate"/> <semanticElements xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//IMU/angularrate"/> <ownedStyle xmi:type="diagram:EdgeStyle" uid="_eks1GwWjEey-kNQ7esRa_g" description="_oD68EAQwEey-kNQ7esRa_g" routingStyle="manhattan" strokeColor="0,0,0"> <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_eks1HQWjEey-kNQ7esRa_g" showIcon="false"> + <customFeatures>labelSize</customFeatures> <labelFormat>bold</labelFormat> </centerLabelStyle> - <endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_eks1HAWjEey-kNQ7esRa_g" labelSize="6" showIcon="false" labelColor="39,76,114"/> + <endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_eks1HAWjEey-kNQ7esRa_g" showIcon="false" labelColor="39,76,114"> + <customFeatures>labelSize</customFeatures> + </endLabelStyle> </ownedStyle> <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> </ownedDiagramElements> @@ -2456,12 +2258,12 @@ <ownedDiagramElements xmi:type="diagram:DEdge" uid="_iSeHXgWjEey-kNQ7esRa_g" sourceNode="_Nw8j8AWjEey-kNQ7esRa_g" targetNode="__kvLoAWcEey-kNQ7esRa_g"> <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IMU"/> <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IMU"/> - <ownedStyle xmi:type="diagram:EdgeStyle" uid="_iSeHXwWjEey-kNQ7esRa_g" targetArrow="InputClosedArrow" routingStyle="tree"> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_76tN7CeeEeydzb6PKf1sDQ" targetArrow="InputClosedArrow" routingStyle="tree"> <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/> - <beginLabelStyle xmi:type="diagram:BeginLabelStyle" uid="_iSeHYAWjEey-kNQ7esRa_g" showIcon="false"> + <beginLabelStyle xmi:type="diagram:BeginLabelStyle" uid="_76tN7SeeEeydzb6PKf1sDQ" showIcon="false"> <labelFormat>italic</labelFormat> </beginLabelStyle> - <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_iSeHYQWjEey-kNQ7esRa_g" showIcon="false"/> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_76tN7ieeEeydzb6PKf1sDQ" showIcon="false"/> </ownedStyle> <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/> </ownedDiagramElements> @@ -2483,14 +2285,14 @@ <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> <arrangeConstraints>KEEP_SIZE</arrangeConstraints> <arrangeConstraints>KEEP_RATIO</arrangeConstraints> - <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_E4I5hQcSEey-kNQ7esRa_g" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_JD5w_j4VEeyWNq6fFfWVSw" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> </ownedStyle> <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> <ownedElements xmi:type="diagram:DNodeListElement" uid="_mxJQsAcREey-kNQ7esRa_g" name="distances : EMap" tooltipText=""> <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//Beacon/distances"/> <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//Beacon/distances"/> - <ownedStyle xmi:type="diagram:BundledImage" uid="_E4Mj1AcSEey-kNQ7esRa_g" labelAlignment="LEFT"> + <ownedStyle xmi:type="diagram:BundledImage" uid="_JD-pej4VEeyWNq6fFfWVSw" labelAlignment="LEFT"> <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> </ownedStyle> <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> @@ -2503,14 +2305,22 @@ </ownedStyle> <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_9NuU8CeeEeydzb6PKf1sDQ" name="sensorId : String" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//Beacon/sensorId"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//Beacon/sensorId"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_-ajUdieeEeydzb6PKf1sDQ" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> </ownedDiagramElements> - <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_lBuJcAZsEey-kNQ7esRa_g" name="PositionEvent" tooltipText="" outgoingEdges="_92h2_gccEey-kNQ7esRa_g" width="12" height="10"> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_lBuJcAZsEey-kNQ7esRa_g" name="PositionEvent" tooltipText="" outgoingEdges="_rz8c8CxEEeyc2bacnWuMrg _92h2_gccEey-kNQ7esRa_g" incomingEdges="_36hE0CxSEeyc2bacnWuMrg" width="12" height="10"> <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//PositionEvent"/> <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//PositionEvent"/> <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> <arrangeConstraints>KEEP_SIZE</arrangeConstraints> <arrangeConstraints>KEEP_RATIO</arrangeConstraints> - <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_crga1RFAEeydeasO1RaQEg" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_ZchbXyBzEeyaJIyxidrtuQ" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> </ownedStyle> <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> @@ -2522,61 +2332,14 @@ </ownedStyle> <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> </ownedElements> - </ownedDiagramElements> - <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_ovifAAZsEey-kNQ7esRa_g" name="RawdataEvent" tooltipText="" outgoingEdges="_T72oPgaBEey-kNQ7esRa_g" width="12" height="10"> - <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//RawdataEvent"/> - <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//RawdataEvent"/> - <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> - <arrangeConstraints>KEEP_SIZE</arrangeConstraints> - <arrangeConstraints>KEEP_RATIO</arrangeConstraints> - <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_ovjGEAZsEey-kNQ7esRa_g" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> - <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> - </ownedStyle> - <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> - </ownedDiagramElements> - <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_uNHiAAZsEey-kNQ7esRa_g" name="TrackingRequest" tooltipText="" width="12" height="10"> - <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//TrackingRequest"/> - <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//TrackingRequest"/> - <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> - <arrangeConstraints>KEEP_SIZE</arrangeConstraints> - <arrangeConstraints>KEEP_RATIO</arrangeConstraints> - <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_uNIJEAZsEey-kNQ7esRa_g" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> - <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> - </ownedStyle> - <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> - </ownedDiagramElements> - <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_vpcWEAZsEey-kNQ7esRa_g" name="MonitoringRequest" tooltipText="" width="12" height="10"> - <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//MonitoringRequest"/> - <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//MonitoringRequest"/> - <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> - <arrangeConstraints>KEEP_SIZE</arrangeConstraints> - <arrangeConstraints>KEEP_RATIO</arrangeConstraints> - <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_vpcWEQZsEey-kNQ7esRa_g" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> - <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> - </ownedStyle> - <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> - </ownedDiagramElements> - <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_yny9kAZsEey-kNQ7esRa_g" name="WorldModelUpdateRequest" tooltipText="" width="12" height="10"> - <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//WorldModelUpdateRequest"/> - <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//WorldModelUpdateRequest"/> - <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> - <arrangeConstraints>KEEP_SIZE</arrangeConstraints> - <arrangeConstraints>KEEP_RATIO</arrangeConstraints> - <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_yny9kQZsEey-kNQ7esRa_g" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> - <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> - </ownedStyle> - <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> - </ownedDiagramElements> - <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_60U6IAZsEey-kNQ7esRa_g" name="DataStorageRequest" tooltipText="" width="12" height="10"> - <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//DataStorageRequest"/> - <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//DataStorageRequest"/> - <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> - <arrangeConstraints>KEEP_SIZE</arrangeConstraints> - <arrangeConstraints>KEEP_RATIO</arrangeConstraints> - <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_60U6IQZsEey-kNQ7esRa_g" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> - <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> - </ownedStyle> - <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_onxBUBvcEeyPOIo-WqURQQ" name="lObjectId : EString" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//PositionEvent/lObjectId"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//PositionEvent/lObjectId"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_qwZhwRvcEeyPOIo-WqURQQ" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> </ownedDiagramElements> <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_IOFwkAZtEey-kNQ7esRa_g" name="EventFilterConfiguration" tooltipText="" outgoingEdges="_JkOxSgc-Eey-kNQ7esRa_g" incomingEdges="_0IAKIgaCEey-kNQ7esRa_g _HI0zogcbEey-kNQ7esRa_g" width="12" height="10"> <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//EventFilterConfiguration"/> @@ -2613,50 +2376,6 @@ <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> </ownedElements> </ownedDiagramElements> - <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_fnEkAAZ_Eey-kNQ7esRa_g" name="WorldModelQueryRequest" tooltipText="" width="12" height="10"> - <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//WorldModelQueryRequest"/> - <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//WorldModelQueryRequest"/> - <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> - <arrangeConstraints>KEEP_SIZE</arrangeConstraints> - <arrangeConstraints>KEEP_RATIO</arrangeConstraints> - <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_fnEkAQZ_Eey-kNQ7esRa_g" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> - <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> - </ownedStyle> - <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> - </ownedDiagramElements> - <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_jeEDsAZ_Eey-kNQ7esRa_g" name="DataStorageQueryRequest" tooltipText="" width="12" height="10"> - <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//DataStorageQueryRequest"/> - <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//DataStorageQueryRequest"/> - <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> - <arrangeConstraints>KEEP_SIZE</arrangeConstraints> - <arrangeConstraints>KEEP_RATIO</arrangeConstraints> - <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_jeEDsQZ_Eey-kNQ7esRa_g" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> - <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> - </ownedStyle> - <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> - </ownedDiagramElements> - <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_Pe6YMAaAEey-kNQ7esRa_g" name="AgentRegistrationRequest" tooltipText="" width="12" height="10"> - <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//AgentRegistrationRequest"/> - <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//AgentRegistrationRequest"/> - <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> - <arrangeConstraints>KEEP_SIZE</arrangeConstraints> - <arrangeConstraints>KEEP_RATIO</arrangeConstraints> - <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_Pe6_QAaAEey-kNQ7esRa_g" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> - <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> - </ownedStyle> - <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> - </ownedDiagramElements> - <ownedDiagramElements xmi:type="diagram:DEdge" uid="_T72oPgaBEey-kNQ7esRa_g" name="[1..*] rawdata" sourceNode="_ovifAAZsEey-kNQ7esRa_g" targetNode="__kvLoAWcEey-kNQ7esRa_g"> - <target xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//RawdataEvent/rawdata"/> - <semanticElements xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//RawdataEvent/rawdata"/> - <ownedStyle xmi:type="diagram:EdgeStyle" uid="_XIKMRgaBEey-kNQ7esRa_g" description="_oD68EAQwEey-kNQ7esRa_g" routingStyle="manhattan" strokeColor="0,0,0"> - <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_XIKMSAaBEey-kNQ7esRa_g" showIcon="false"> - <labelFormat>bold</labelFormat> - </centerLabelStyle> - <endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_XIKMRwaBEey-kNQ7esRa_g" labelSize="6" showIcon="false" labelColor="39,76,114"/> - </ownedStyle> - <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> - </ownedDiagramElements> <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_nuR0UAaCEey-kNQ7esRa_g" name="MonitoringTask" tooltipText="" outgoingEdges="_0IAKIgaCEey-kNQ7esRa_g" width="12" height="10"> <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//MonitoringTask"/> <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//MonitoringTask"/> @@ -2668,7 +2387,7 @@ </ownedStyle> <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> </ownedDiagramElements> - <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_pD8mwAaCEey-kNQ7esRa_g" name="TrackingTask" tooltipText="" outgoingEdges="_HI0zogcbEey-kNQ7esRa_g" width="12" height="10"> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_pD8mwAaCEey-kNQ7esRa_g" name="TrackingTask" tooltipText="" outgoingEdges="_HI0zogcbEey-kNQ7esRa_g" incomingEdges="_JkOxSgc-Eey-kNQ7esRa_g" width="12" height="10"> <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//TrackingTask"/> <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//TrackingTask"/> <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> @@ -2690,7 +2409,7 @@ </ownedStyle> <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> </ownedDiagramElements> - <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_NNImAAaEEey-kNQ7esRa_g" name="WorldModel" tooltipText="" outgoingEdges="_SeKa9gaEEey-kNQ7esRa_g _fEHOygaEEey-kNQ7esRa_g" width="12" height="10"> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_NNImAAaEEey-kNQ7esRa_g" name="WorldModel" tooltipText="" outgoingEdges="_SeKa9gaEEey-kNQ7esRa_g _fEHOygaEEey-kNQ7esRa_g _ajhzHRsKEeyPOIo-WqURQQ _9TmfrBsKEeyPOIo-WqURQQ" width="12" height="10"> <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//WorldModel"/> <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//WorldModel"/> <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> @@ -2715,9 +2434,9 @@ </ownedStyle> <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> </ownedDiagramElements> - <ownedDiagramElements xmi:type="diagram:DEdge" uid="_fEHOygaEEey-kNQ7esRa_g" name="[0..*] zonemap" sourceNode="_NNImAAaEEey-kNQ7esRa_g" targetNode="_VW3dgAQkEey-kNQ7esRa_g"> - <target xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//WorldModel/zonemap"/> - <semanticElements xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//WorldModel/zonemap"/> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_fEHOygaEEey-kNQ7esRa_g" name="[0..*] zoneMap" sourceNode="_NNImAAaEEey-kNQ7esRa_g" targetNode="_VW3dgAQkEey-kNQ7esRa_g"> + <target xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//WorldModel/zoneMap"/> + <semanticElements xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//WorldModel/zoneMap"/> <ownedStyle xmi:type="diagram:EdgeStyle" uid="_fEHOywaEEey-kNQ7esRa_g" routingStyle="manhattan" strokeColor="0,0,0"> <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']/@style"/> <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_fEHOzQaEEey-kNQ7esRa_g" showIcon="false"> @@ -2755,12 +2474,12 @@ <ownedDiagramElements xmi:type="diagram:DEdge" uid="_WTwDiAcMEey-kNQ7esRa_g" sourceNode="_s0dfUAWjEey-kNQ7esRa_g" targetNode="__kvLoAWcEey-kNQ7esRa_g"> <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//Beacon"/> <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//Beacon"/> - <ownedStyle xmi:type="diagram:EdgeStyle" uid="_E4UfrAcSEey-kNQ7esRa_g" targetArrow="InputClosedArrow" routingStyle="tree"> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_JEEwND4VEeyWNq6fFfWVSw" targetArrow="InputClosedArrow" routingStyle="tree"> <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/> - <beginLabelStyle xmi:type="diagram:BeginLabelStyle" uid="_E4UfrQcSEey-kNQ7esRa_g" showIcon="false"> + <beginLabelStyle xmi:type="diagram:BeginLabelStyle" uid="_JEEwNT4VEeyWNq6fFfWVSw" showIcon="false"> <labelFormat>italic</labelFormat> </beginLabelStyle> - <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_E4UfrgcSEey-kNQ7esRa_g" showIcon="false"/> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_JEEwNj4VEeyWNq6fFfWVSw" showIcon="false"/> </ownedStyle> <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/> </ownedDiagramElements> @@ -2801,14 +2520,14 @@ <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> <arrangeConstraints>KEEP_SIZE</arrangeConstraints> <arrangeConstraints>KEEP_RATIO</arrangeConstraints> - <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_I-N60QcOEey-kNQ7esRa_g" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_d_Ac5iejEeyTddajI1jY8w" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> </ownedStyle> <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> <ownedElements xmi:type="diagram:DNodeListElement" uid="_10SAEAcOEey-kNQ7esRa_g" name="rss : EMap" tooltipText=""> <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//Bluetooth/rss"/> <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//Bluetooth/rss"/> - <ownedStyle xmi:type="diagram:BundledImage" uid="_D-2hAQcSEey-kNQ7esRa_g" labelAlignment="LEFT"> + <ownedStyle xmi:type="diagram:BundledImage" uid="_d_K08iejEeyTddajI1jY8w" labelAlignment="LEFT"> <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> </ownedStyle> <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> @@ -2828,12 +2547,12 @@ <ownedDiagramElements xmi:type="diagram:DEdge" uid="_PraypgcOEey-kNQ7esRa_g" sourceNode="_I-N60AcOEey-kNQ7esRa_g" targetNode="_s0dfUAWjEey-kNQ7esRa_g"> <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//Bluetooth"/> <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//Bluetooth"/> - <ownedStyle xmi:type="diagram:EdgeStyle" uid="_PraypwcOEey-kNQ7esRa_g" targetArrow="InputClosedArrow" routingStyle="tree"> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_d_dI0CejEeyTddajI1jY8w" targetArrow="InputClosedArrow" routingStyle="tree"> <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/> - <beginLabelStyle xmi:type="diagram:BeginLabelStyle" uid="_PrayqAcOEey-kNQ7esRa_g" showIcon="false"> + <beginLabelStyle xmi:type="diagram:BeginLabelStyle" uid="_d_dI0SejEeyTddajI1jY8w" showIcon="false"> <labelFormat>italic</labelFormat> </beginLabelStyle> - <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_PrayqQcOEey-kNQ7esRa_g" showIcon="false"/> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_d_dI0iejEeyTddajI1jY8w" showIcon="false"/> </ownedStyle> <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/> </ownedDiagramElements> @@ -2849,17 +2568,6 @@ </ownedStyle> <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/> </ownedDiagramElements> - <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_CJeJMAcREey-kNQ7esRa_g" name="SensorConfigurationRequest" tooltipText="" width="12" height="10"> - <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//SensorConfigurationRequest"/> - <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//SensorConfigurationRequest"/> - <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> - <arrangeConstraints>KEEP_SIZE</arrangeConstraints> - <arrangeConstraints>KEEP_RATIO</arrangeConstraints> - <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_CCYZAQctEey-kNQ7esRa_g" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> - <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> - </ownedStyle> - <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> - </ownedDiagramElements> <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_VJ0tUAcUEey-kNQ7esRa_g" name="OtherBeacon" tooltipText="" outgoingEdges="_aEKgcgcUEey-kNQ7esRa_g" width="12" height="10"> <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//OtherBeacon"/> <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//OtherBeacon"/> @@ -2916,55 +2624,62 @@ </ownedStyle> <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> </ownedDiagramElements> - <ownedDiagramElements xmi:type="diagram:DEdge" uid="_eXVOvgcoEey-kNQ7esRa_g" sourceNode="_YBru0ATxEey-kNQ7esRa_g" targetNode="_hdQdAAQjEey-kNQ7esRa_g"> - <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//Quaternion"/> - <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//Quaternion"/> - <ownedStyle xmi:type="diagram:EdgeStyle" uid="_eXV1sAcoEey-kNQ7esRa_g" targetArrow="InputClosedArrow" routingStyle="tree"> - <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/> - <beginLabelStyle xmi:type="diagram:BeginLabelStyle" uid="_eXV1sQcoEey-kNQ7esRa_g" showIcon="false"> - <labelFormat>italic</labelFormat> - </beginLabelStyle> - <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_eXV1sgcoEey-kNQ7esRa_g" showIcon="false"/> - </ownedStyle> - <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/> - </ownedDiagramElements> - <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_Mlx7wAcsEey-kNQ7esRa_g" name="ReferencePosition" tooltipText="" outgoingEdges="_RCvPUgcsEey-kNQ7esRa_g" width="12" height="10"> - <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//ReferencePosition"/> - <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//ReferencePosition"/> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_Mlx7wAcsEey-kNQ7esRa_g" name="POI" tooltipText="" outgoingEdges="_RCvPUgcsEey-kNQ7esRa_g" incomingEdges="_ajhzHRsKEeyPOIo-WqURQQ" width="12" height="10"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//POI"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//POI"/> <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> <arrangeConstraints>KEEP_SIZE</arrangeConstraints> <arrangeConstraints>KEEP_RATIO</arrangeConstraints> - <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_T3ZvTQcsEey-kNQ7esRa_g" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_kGqDfiXpEeyb5750APOSQw" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> </ownedStyle> <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> - <ownedElements xmi:type="diagram:DNodeListElement" uid="_SqUREAcsEey-kNQ7esRa_g" name="id : EString" tooltipText=""> - <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//ReferencePosition/id"/> - <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//ReferencePosition/id"/> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_SqUREAcsEey-kNQ7esRa_g" name="description : EString" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//POI/description"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//POI/description"/> <ownedStyle xmi:type="diagram:BundledImage" uid="_T3cLhAcsEey-kNQ7esRa_g" labelAlignment="LEFT"> <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> </ownedStyle> <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_91YjkBr1EeyPOIo-WqURQQ" name="data : EMap" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//POI/data"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//POI/data"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_NzXDMBr2EeyPOIo-WqURQQ" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_iRkKECXpEeyb5750APOSQw" name="id : EString" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//POI/id"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//POI/id"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_kGwKFSXpEeyb5750APOSQw" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> </ownedDiagramElements> - <ownedDiagramElements xmi:type="diagram:DEdge" uid="_RCvPUgcsEey-kNQ7esRa_g" name="[1..1] position" sourceNode="_Mlx7wAcsEey-kNQ7esRa_g" targetNode="_foX_AAQjEey-kNQ7esRa_g"> - <target xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//ReferencePosition/position"/> - <semanticElements xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//ReferencePosition/position"/> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_RCvPUgcsEey-kNQ7esRa_g" name="[1..1] placing" sourceNode="_Mlx7wAcsEey-kNQ7esRa_g" targetNode="_beGW8AQjEey-kNQ7esRa_g"> + <target xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//POI/placing"/> + <semanticElements xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//POI/placing"/> <ownedStyle xmi:type="diagram:EdgeStyle" uid="_R838QwcsEey-kNQ7esRa_g" description="_oD68EAQwEey-kNQ7esRa_g" routingStyle="manhattan" strokeColor="0,0,0"> <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_R838RQcsEey-kNQ7esRa_g" showIcon="false"> + <customFeatures>labelSize</customFeatures> <labelFormat>bold</labelFormat> </centerLabelStyle> - <endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_R838RAcsEey-kNQ7esRa_g" labelSize="6" showIcon="false" labelColor="39,76,114"/> + <endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_R838RAcsEey-kNQ7esRa_g" showIcon="false" labelColor="39,76,114"> + <customFeatures>labelSize</customFeatures> + </endLabelStyle> </ownedStyle> <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> </ownedDiagramElements> - <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_D9Ka8Ac-Eey-kNQ7esRa_g" name="EventFilterCondition" tooltipText="" incomingEdges="_JkOxSgc-Eey-kNQ7esRa_g" width="12" height="10"> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_D9Ka8Ac-Eey-kNQ7esRa_g" name="EventFilterCondition" tooltipText="" width="12" height="10"> <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//EventFilterCondition"/> <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//EventFilterCondition"/> <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> <arrangeConstraints>KEEP_SIZE</arrangeConstraints> <arrangeConstraints>KEEP_RATIO</arrangeConstraints> - <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_7MmbTRFkEeydeasO1RaQEg" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_KjE6L4ThEeybc9Dj6t-c7Q" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> </ownedStyle> <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> @@ -2976,22 +2691,6 @@ </ownedStyle> <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> </ownedElements> - <ownedElements xmi:type="diagram:DNodeListElement" uid="_GJ1sEBE9EeydeasO1RaQEg" name="categoryCondition : StringList" tooltipText=""> - <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//EventFilterCondition/categoryCondition"/> - <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//EventFilterCondition/categoryCondition"/> - <ownedStyle xmi:type="diagram:BundledImage" uid="_LfaCkxE9EeydeasO1RaQEg" labelAlignment="LEFT"> - <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> - </ownedStyle> - <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> - </ownedElements> - <ownedElements xmi:type="diagram:DNodeListElement" uid="_RSvTIBE9EeydeasO1RaQEg" name="idCondition : StringList" tooltipText=""> - <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//EventFilterCondition/idCondition"/> - <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//EventFilterCondition/idCondition"/> - <ownedStyle xmi:type="diagram:BundledImage" uid="_WX3Z5xE9EeydeasO1RaQEg" labelAlignment="LEFT"> - <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> - </ownedStyle> - <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> - </ownedElements> <ownedElements xmi:type="diagram:DNodeListElement" uid="_WzdJsBE9EeydeasO1RaQEg" name="accuracyCondition : Float = 0.0" tooltipText=""> <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//EventFilterCondition/accuracyCondition"/> <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//EventFilterCondition/accuracyCondition"/> @@ -3040,16 +2739,40 @@ </ownedStyle> <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> </ownedElements> - <ownedElements xmi:type="diagram:DNodeListElement" uid="_1GZ5EBFkEeydeasO1RaQEg" name="positionConditionCell : FloatArray3d" tooltipText=""> - <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//EventFilterCondition/positionConditionCell"/> - <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//EventFilterCondition/positionConditionCell"/> - <ownedStyle xmi:type="diagram:BundledImage" uid="_7MoQfhFkEeydeasO1RaQEg" labelAlignment="LEFT"> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_1GZ5EBFkEeydeasO1RaQEg" name="positionConditionCells : EMap" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//EventFilterCondition/positionConditionCells"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//EventFilterCondition/positionConditionCells"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_TI5G5jASEeys5_IXgF_hBA" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_eIgtsB_NEeyaJIyxidrtuQ" name="idCondition : StringList" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//EventFilterCondition/idCondition"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//EventFilterCondition/idCondition"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_hcgOBR_NEeyaJIyxidrtuQ" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_iWX1QB_NEeyaJIyxidrtuQ" name="categoryCondition : StringList" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//EventFilterCondition/categoryCondition"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//EventFilterCondition/categoryCondition"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_l9EPIx_NEeyaJIyxidrtuQ" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_Fvq1gIThEeybc9Dj6t-c7Q" name="propertyCondition : StringList" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//EventFilterCondition/propertyCondition"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//EventFilterCondition/propertyCondition"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_KjLn1YThEeybc9Dj6t-c7Q" labelAlignment="LEFT"> <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> </ownedStyle> <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> </ownedElements> </ownedDiagramElements> - <ownedDiagramElements xmi:type="diagram:DEdge" uid="_JkOxSgc-Eey-kNQ7esRa_g" name="[0..*] eventfiltercondition" sourceNode="_IOFwkAZtEey-kNQ7esRa_g" targetNode="_D9Ka8Ac-Eey-kNQ7esRa_g"> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_JkOxSgc-Eey-kNQ7esRa_g" name="[0..*] eventfiltercondition" sourceNode="_IOFwkAZtEey-kNQ7esRa_g" targetNode="_pD8mwAaCEey-kNQ7esRa_g"> <target xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//EventFilterConfiguration/eventfiltercondition"/> <semanticElements xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//EventFilterConfiguration/eventfiltercondition"/> <ownedStyle xmi:type="diagram:EdgeStyle" uid="_JkOxSwc-Eey-kNQ7esRa_g" routingStyle="manhattan" strokeColor="0,0,0"> @@ -3178,11 +2901,2916 @@ <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EDataType']/@subNodeMappings[name='EC_DataType_InstanceClassName']"/> </ownedElements> </ownedDiagramElements> - <description xmi:type="description_1:DiagramDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']"/> - <filterVariableHistory xmi:type="diagram:FilterVariableHistory" uid="_EthkIAQNEey-kNQ7esRa_g"/> - <activatedLayers xmi:type="description_1:Layer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer"/> - <activatedLayers xmi:type="description_1:AdditionalLayer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@additionalLayers[name='Package']"/> - <activatedLayers xmi:type="description_1:AdditionalLayer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@additionalLayers[name='Validation']"/> - <target xmi:type="ecore:EPackage" href="iPos_Datamodel.ecore#/"/> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_ollP6RrzEeyPOIo-WqURQQ" sourceNode="_733TkAQjEey-kNQ7esRa_g" targetNode="_lkw14AWMEey-kNQ7esRa_g"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//WGS84Point"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//WGS84Point"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_oll28BrzEeyPOIo-WqURQQ" targetArrow="InputClosedArrow" routingStyle="tree"> + <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/> + <beginLabelStyle xmi:type="diagram:BeginLabelStyle" uid="_oll28RrzEeyPOIo-WqURQQ" showIcon="false"> + <labelFormat>italic</labelFormat> + </beginLabelStyle> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_oll28hrzEeyPOIo-WqURQQ" showIcon="false"/> + </ownedStyle> + <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_r-z1gBrzEeyPOIo-WqURQQ" name="[1..1] point" sourceNode="_foX_AAQjEey-kNQ7esRa_g" targetNode="_lkw14AWMEey-kNQ7esRa_g"> + <target xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//Position/point"/> + <semanticElements xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//Position/point"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_0aTbNRrzEeyPOIo-WqURQQ" description="_oD68EAQwEey-kNQ7esRa_g" routingStyle="manhattan" strokeColor="0,0,0"> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_0aTbNxrzEeyPOIo-WqURQQ" showIcon="false"> + <labelFormat>bold</labelFormat> + </centerLabelStyle> + <endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_0aTbNhrzEeyPOIo-WqURQQ" labelSize="6" showIcon="false" labelColor="39,76,114"/> + </ownedStyle> + <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_t3gckhrzEeyPOIo-WqURQQ" name="[1..1] referenceSystem" sourceNode="_foX_AAQjEey-kNQ7esRa_g" targetNode="_SIp1EAQkEey-kNQ7esRa_g"> + <target xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//Position/referenceSystem"/> + <semanticElements xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//Position/referenceSystem"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_1fGgBhrzEeyPOIo-WqURQQ" description="_oD68EAQwEey-kNQ7esRa_g" routingStyle="manhattan" strokeColor="0,0,0"> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_1fGgCBrzEeyPOIo-WqURQQ" showIcon="false"> + <labelFormat>bold</labelFormat> + </centerLabelStyle> + <endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_1fGgBxrzEeyPOIo-WqURQQ" labelSize="6" showIcon="false" labelColor="39,76,114"/> + </ownedStyle> + <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_ajhzHRsKEeyPOIo-WqURQQ" name="[0..*] pois" sourceNode="_NNImAAaEEey-kNQ7esRa_g" targetNode="_Mlx7wAcsEey-kNQ7esRa_g"> + <target xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//WorldModel/pois"/> + <semanticElements xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//WorldModel/pois"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_ajiaABsKEeyPOIo-WqURQQ" routingStyle="manhattan" strokeColor="0,0,0"> + <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']/@style"/> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_ajiaAhsKEeyPOIo-WqURQQ" showIcon="false"> + <customFeatures>labelSize</customFeatures> + </centerLabelStyle> + <endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_ajiaARsKEeyPOIo-WqURQQ" showIcon="false" labelColor="39,76,114"> + <customFeatures>labelSize</customFeatures> + </endLabelStyle> + </ownedStyle> + <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_9TmfrBsKEeyPOIo-WqURQQ" name="[0..*] referenceSystem" sourceNode="_NNImAAaEEey-kNQ7esRa_g" targetNode="_SIp1EAQkEey-kNQ7esRa_g"> + <target xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//WorldModel/referenceSystem"/> + <semanticElements xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//WorldModel/referenceSystem"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_9TntwBsKEeyPOIo-WqURQQ" routingStyle="manhattan" strokeColor="0,0,0"> + <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']/@style"/> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_9TntwhsKEeyPOIo-WqURQQ" showIcon="false"> + <customFeatures>labelSize</customFeatures> + </centerLabelStyle> + <endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_9TntwRsKEeyPOIo-WqURQQ" showIcon="false" labelColor="39,76,114"> + <customFeatures>labelSize</customFeatures> + </endLabelStyle> + </ownedStyle> + <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_cPgeFhuCEeyPOIo-WqURQQ" name="[0..1] agent" sourceNode="_PgvNEAQjEey-kNQ7esRa_g" targetNode="_OUqdgAQNEey-kNQ7esRa_g"> + <target xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//LocalizableObject/agent"/> + <semanticElements xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//LocalizableObject/agent"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_cPhsMBuCEeyPOIo-WqURQQ" routingStyle="manhattan" strokeColor="0,0,0"> + <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']/@style"/> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_cPhsMhuCEeyPOIo-WqURQQ" showIcon="false"> + <customFeatures>labelSize</customFeatures> + </centerLabelStyle> + <endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_cPhsMRuCEeyPOIo-WqURQQ" showIcon="false" labelColor="39,76,114"> + <customFeatures>labelSize</customFeatures> + </endLabelStyle> + </ownedStyle> + <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_Q-uURhuHEeyPOIo-WqURQQ" name="[0..1] currentPlacing" sourceNode="_PgvNEAQjEey-kNQ7esRa_g" targetNode="_beGW8AQjEey-kNQ7esRa_g"> + <target xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//LocalizableObject/currentPlacing"/> + <semanticElements xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//LocalizableObject/currentPlacing"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_Q-u7IBuHEeyPOIo-WqURQQ" routingStyle="manhattan" strokeColor="0,0,0"> + <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']/@style"/> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_Q-u7IhuHEeyPOIo-WqURQQ" showIcon="false"> + <customFeatures>labelSize</customFeatures> + </centerLabelStyle> + <endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_Q-u7IRuHEeyPOIo-WqURQQ" showIcon="false" labelColor="39,76,114"> + <customFeatures>labelSize</customFeatures> + </endLabelStyle> + </ownedStyle> + <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_G94qwBxXEeyPOIo-WqURQQ" name="[1..1] centrePoint" sourceNode="_XZe1gAQkEey-kNQ7esRa_g" targetNode="_beGW8AQjEey-kNQ7esRa_g"> + <target xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//Space/centrePoint"/> + <semanticElements xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//Space/centrePoint"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_Kzax9RxXEeyPOIo-WqURQQ" description="_oD68EAQwEey-kNQ7esRa_g" routingStyle="manhattan" strokeColor="0,0,0"> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_Kzax9xxXEeyPOIo-WqURQQ" showIcon="false"> + <labelFormat>bold</labelFormat> + </centerLabelStyle> + <endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_Kzax9hxXEeyPOIo-WqURQQ" labelSize="6" showIcon="false" labelColor="39,76,114"/> + </ownedStyle> + <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_Q7S_gCxEEeyc2bacnWuMrg" name="ZoneDescriptor" tooltipText="" incomingEdges="_rz8c8CxEEeyc2bacnWuMrg" width="12" height="10"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//ZoneDescriptor"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//ZoneDescriptor"/> + <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> + <arrangeConstraints>KEEP_SIZE</arrangeConstraints> + <arrangeConstraints>KEEP_RATIO</arrangeConstraints> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_jwC3-ixEEeyc2bacnWuMrg" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_dwRt4CxEEeyc2bacnWuMrg" name="zoneId : String" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//ZoneDescriptor/zoneId"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//ZoneDescriptor/zoneId"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_fSuYESxEEeyc2bacnWuMrg" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_hNSnUCxEEeyc2bacnWuMrg" name="notificationType : String" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//ZoneDescriptor/notificationType"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//ZoneDescriptor/notificationType"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_jwHwfixEEeyc2bacnWuMrg" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_rz8c8CxEEeyc2bacnWuMrg" name="[0..*] zonedescriptors" sourceNode="_lBuJcAZsEey-kNQ7esRa_g" targetNode="_Q7S_gCxEEeyc2bacnWuMrg"> + <target xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//PositionEvent/zonedescriptors"/> + <semanticElements xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//PositionEvent/zonedescriptors"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_rz9EACxEEeyc2bacnWuMrg" routingStyle="manhattan" strokeColor="0,0,0"> + <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']/@style"/> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_rz9EAixEEeyc2bacnWuMrg" showIcon="false"> + <customFeatures>labelSize</customFeatures> + </centerLabelStyle> + <endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_rz9EASxEEeyc2bacnWuMrg" showIcon="false" labelColor="39,76,114"> + <customFeatures>labelSize</customFeatures> + </endLabelStyle> + </ownedStyle> + <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_ipG8sCxSEeyc2bacnWuMrg" name="DataStorageQueryResponse" tooltipText="" outgoingEdges="_36hE0CxSEeyc2bacnWuMrg" width="12" height="10"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//DataStorageQueryResponse"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//DataStorageQueryResponse"/> + <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> + <arrangeConstraints>KEEP_SIZE</arrangeConstraints> + <arrangeConstraints>KEEP_RATIO</arrangeConstraints> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_XJ9ZRTC6Eeys5_IXgF_hBA" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_WDgukDC6Eeys5_IXgF_hBA" name="trackingTaskId : String" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//DataStorageQueryResponse/trackingTaskId"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//DataStorageQueryResponse/trackingTaskId"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_XKDf5DC6Eeys5_IXgF_hBA" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_36hE0CxSEeyc2bacnWuMrg" name="[0..*] positionEvents" sourceNode="_ipG8sCxSEeyc2bacnWuMrg" targetNode="_lBuJcAZsEey-kNQ7esRa_g"> + <target xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//DataStorageQueryResponse/positionEvents"/> + <semanticElements xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//DataStorageQueryResponse/positionEvents"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_36hr4CxSEeyc2bacnWuMrg" routingStyle="manhattan" strokeColor="0,0,0"> + <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']/@style"/> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_36hr4ixSEeyc2bacnWuMrg" showIcon="false"> + <customFeatures>labelSize</customFeatures> + </centerLabelStyle> + <endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_36hr4SxSEeyc2bacnWuMrg" showIcon="false" labelColor="39,76,114"> + <customFeatures>labelSize</customFeatures> + </endLabelStyle> + </ownedStyle> + <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_-2weQJSJEeyJ0bON1VCj7g" name="MessageReceivedEvent" tooltipText="" width="12" height="10"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//MessageReceivedEvent"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//MessageReceivedEvent"/> + <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> + <arrangeConstraints>KEEP_SIZE</arrangeConstraints> + <arrangeConstraints>KEEP_RATIO</arrangeConstraints> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_7_EvF5riEeybDM53IXNodQ" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_E3M9wJSKEeyJ0bON1VCj7g" name="protocolName : EString" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//MessageReceivedEvent/protocolName"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//MessageReceivedEvent/protocolName"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_H6qux5SKEeyJ0bON1VCj7g" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_gVMj8JSKEeyJ0bON1VCj7g" name="serializedMsg : ByteArray" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//MessageReceivedEvent/serializedMsg"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//MessageReceivedEvent/serializedMsg"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_6Ez8z5SKEeyJ0bON1VCj7g" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_R19rgJSQEeyJ0bON1VCj7g" name="agentId : EString" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//MessageReceivedEvent/agentId"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//MessageReceivedEvent/agentId"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_U5wMo5SQEeyJ0bON1VCj7g" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_YW1asJSUEeyJ0bON1VCj7g" name="extractedAttributes : ListOfStringMaps" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//MessageReceivedEvent/extractedAttributes"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//MessageReceivedEvent/extractedAttributes"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_kF1ERJotEeybDM53IXNodQ" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_5c0NsJriEeybDM53IXNodQ" name="timestamp : EString" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//MessageReceivedEvent/timestamp"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//MessageReceivedEvent/timestamp"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_7_IZdZriEeybDM53IXNodQ" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_swMsEJSKEeyJ0bON1VCj7g" name="ByteArray" tooltipText="" width="14" height="5"> + <target xmi:type="ecore:EDataType" href="iPos_Datamodel.ecore#//ByteArray"/> + <semanticElements xmi:type="ecore:EDataType" href="iPos_Datamodel.ecore#//ByteArray"/> + <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> + <arrangeConstraints>KEEP_SIZE</arrangeConstraints> + <arrangeConstraints>KEEP_RATIO</arrangeConstraints> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_swMsEZSKEeyJ0bON1VCj7g" borderSize="1" borderSizeComputationExpression="1" borderColor="125,125,125" backgroundStyle="Liquid" foregroundColor="255,250,191"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EDataType']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EDataType']"/> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_swUA0pSKEeyJ0bON1VCj7g" name="java.lang.byte[]" tooltipText=""> + <target xmi:type="ecore:EDataType" href="iPos_Datamodel.ecore#//ByteArray"/> + <semanticElements xmi:type="ecore:EDataType" href="iPos_Datamodel.ecore#//ByteArray"/> + <decorations xmi:type="viewpoint:Decoration" uid="_swUA05SKEeyJ0bON1VCj7g"> + <description xmi:type="description:SemanticBasedDecoration" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@decorationDescriptionsSet/@decorationDescriptions[name='External']"/> + </decorations> + <ownedStyle xmi:type="diagram:BundledImage" uid="_swUA1JSKEeyJ0bON1VCj7g" showIcon="false"> + <labelFormat>italic</labelFormat> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EDataType']/@subNodeMappings[name='EC_DataType_InstanceClassName']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EDataType']/@subNodeMappings[name='EC_DataType_InstanceClassName']"/> + </ownedElements> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_-GdxEJosEeybDM53IXNodQ" name="ListOfStringMaps" tooltipText="" width="14" height="5"> + <target xmi:type="ecore:EDataType" href="iPos_Datamodel.ecore#//ListOfStringMaps"/> + <semanticElements xmi:type="ecore:EDataType" href="iPos_Datamodel.ecore#//ListOfStringMaps"/> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_-GeYIJosEeybDM53IXNodQ" borderSize="1" borderSizeComputationExpression="1" borderColor="125,125,125" backgroundStyle="Liquid" foregroundColor="255,250,191"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EDataType']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EDataType']"/> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_-G09cJosEeybDM53IXNodQ" name="java.util.LinkedList<java.util.HashMap<java.lang.String, java.lang.String>>" tooltipText=""> + <target xmi:type="ecore:EDataType" href="iPos_Datamodel.ecore#//ListOfStringMaps"/> + <semanticElements xmi:type="ecore:EDataType" href="iPos_Datamodel.ecore#//ListOfStringMaps"/> + <decorations xmi:type="viewpoint:Decoration" uid="_-G09cZosEeybDM53IXNodQ"> + <description xmi:type="description:SemanticBasedDecoration" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@decorationDescriptionsSet/@decorationDescriptions[name='External']"/> + </decorations> + <ownedStyle xmi:type="diagram:BundledImage" uid="_-G09cposEeybDM53IXNodQ" showIcon="false"> + <labelFormat>italic</labelFormat> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EDataType']/@subNodeMappings[name='EC_DataType_InstanceClassName']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EDataType']/@subNodeMappings[name='EC_DataType_InstanceClassName']"/> + </ownedElements> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_evTGEKEgEeyjYoAVD5IwbQ" name="IntArray" tooltipText="" width="14" height="5"> + <target xmi:type="ecore:EDataType" href="iPos_Datamodel.ecore#//IntArray"/> + <semanticElements xmi:type="ecore:EDataType" href="iPos_Datamodel.ecore#//IntArray"/> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_evTGEaEgEeyjYoAVD5IwbQ" borderSize="1" borderSizeComputationExpression="1" borderColor="125,125,125" backgroundStyle="Liquid" foregroundColor="255,250,191"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EDataType']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EDataType']"/> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_evdeJKEgEeyjYoAVD5IwbQ" name="int[]" tooltipText=""> + <target xmi:type="ecore:EDataType" href="iPos_Datamodel.ecore#//IntArray"/> + <semanticElements xmi:type="ecore:EDataType" href="iPos_Datamodel.ecore#//IntArray"/> + <decorations xmi:type="viewpoint:Decoration" uid="_evdeJaEgEeyjYoAVD5IwbQ"> + <description xmi:type="description:SemanticBasedDecoration" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@decorationDescriptionsSet/@decorationDescriptions[name='External']"/> + </decorations> + <ownedStyle xmi:type="diagram:BundledImage" uid="_evdeJqEgEeyjYoAVD5IwbQ" showIcon="false"> + <labelFormat>italic</labelFormat> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EDataType']/@subNodeMappings[name='EC_DataType_InstanceClassName']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EDataType']/@subNodeMappings[name='EC_DataType_InstanceClassName']"/> + </ownedElements> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_rWe5_OMUEeylWPfcS0Eglw" sourceNode="_YBru0ATxEey-kNQ7esRa_g" targetNode="_hdQdAAQjEey-kNQ7esRa_g"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//Quaternion"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//Quaternion"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_rWe5_eMUEeylWPfcS0Eglw" targetArrow="InputClosedArrow" routingStyle="tree"> + <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/> + <beginLabelStyle xmi:type="diagram:BeginLabelStyle" uid="_rWe5_uMUEeylWPfcS0Eglw" showIcon="false"> + <labelFormat>italic</labelFormat> + </beginLabelStyle> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_rWe5_-MUEeylWPfcS0Eglw" showIcon="false"/> + </ownedStyle> + <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/> + </ownedDiagramElements> + <description xmi:type="description_1:DiagramDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']"/> + <filterVariableHistory xmi:type="diagram:FilterVariableHistory" uid="_EthkIAQNEey-kNQ7esRa_g"/> + <activatedLayers xmi:type="description_1:Layer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer"/> + <activatedLayers xmi:type="description_1:AdditionalLayer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@additionalLayers[name='Package']"/> + <activatedLayers xmi:type="description_1:AdditionalLayer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@additionalLayers[name='Validation']"/> + <target xmi:type="ecore:EPackage" href="iPos_Datamodel.ecore#/"/> + </diagram:DSemanticDiagram> + <diagram:DSemanticDiagram uid="_vFz5YDx2EeyWNq6fFfWVSw"> + <ownedAnnotationEntries xmi:type="description:AnnotationEntry" uid="_vGCi4Dx2EeyWNq6fFfWVSw" source="GMF_DIAGRAMS"> + <data xmi:type="notation:Diagram" xmi:id="_vGCi4Tx2EeyWNq6fFfWVSw" type="Sirius" element="_vFz5YDx2EeyWNq6fFfWVSw" measurementUnit="Pixel"> + <children xmi:type="notation:Node" xmi:id="_v39IADx2EeyWNq6fFfWVSw" type="2003" element="_v3xh0Dx2EeyWNq6fFfWVSw"> + <children xmi:type="notation:Node" xmi:id="_v39vEDx2EeyWNq6fFfWVSw" type="5007"/> + <children xmi:type="notation:Node" xmi:id="_v3-WIDx2EeyWNq6fFfWVSw" type="7004"> + <children xmi:type="notation:Node" xmi:id="_VdvoIDx4EeyWNq6fFfWVSw" type="3010" element="_Vbj20jx4EeyWNq6fFfWVSw"> + <styles xmi:type="notation:FontStyle" xmi:id="_VdvoITx4EeyWNq6fFfWVSw" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_VdvoIjx4EeyWNq6fFfWVSw"/> + </children> + <styles xmi:type="notation:SortingStyle" xmi:id="_v3-WITx2EeyWNq6fFfWVSw"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_v3-WIjx2EeyWNq6fFfWVSw"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="_v39IATx2EeyWNq6fFfWVSw" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_v39IAjx2EeyWNq6fFfWVSw"/> + </children> + <children xmi:type="notation:Node" xmi:id="_v3-WIzx2EeyWNq6fFfWVSw" type="2003" element="_v3zXADx2EeyWNq6fFfWVSw"> + <children xmi:type="notation:Node" xmi:id="_v3-9MDx2EeyWNq6fFfWVSw" type="5007"/> + <children xmi:type="notation:Node" xmi:id="_v3-9MTx2EeyWNq6fFfWVSw" type="7004"> + <children xmi:type="notation:Node" xmi:id="_VdwPMDx4EeyWNq6fFfWVSw" type="3010" element="_VblsADx4EeyWNq6fFfWVSw"> + <styles xmi:type="notation:FontStyle" xmi:id="_VdwPMTx4EeyWNq6fFfWVSw" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_VdwPMjx4EeyWNq6fFfWVSw"/> + </children> + <children xmi:type="notation:Node" xmi:id="_VdwPMzx4EeyWNq6fFfWVSw" type="3010" element="_VbmTEDx4EeyWNq6fFfWVSw"> + <styles xmi:type="notation:FontStyle" xmi:id="_VdwPNDx4EeyWNq6fFfWVSw" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_VdwPNTx4EeyWNq6fFfWVSw"/> + </children> + <styles xmi:type="notation:SortingStyle" xmi:id="_v3-9Mjx2EeyWNq6fFfWVSw"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_v3-9Mzx2EeyWNq6fFfWVSw"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="_v3-WJDx2EeyWNq6fFfWVSw" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_v3-WJTx2EeyWNq6fFfWVSw" x="288"/> + </children> + <children xmi:type="notation:Node" xmi:id="_v3-9NDx2EeyWNq6fFfWVSw" type="2003" element="_v3z-ETx2EeyWNq6fFfWVSw"> + <children xmi:type="notation:Node" xmi:id="_v3_kQDx2EeyWNq6fFfWVSw" type="5007"/> + <children xmi:type="notation:Node" xmi:id="_v3_kQTx2EeyWNq6fFfWVSw" type="7004"> + <styles xmi:type="notation:SortingStyle" xmi:id="_v3_kQjx2EeyWNq6fFfWVSw"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_v3_kQzx2EeyWNq6fFfWVSw"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="_v3-9NTx2EeyWNq6fFfWVSw" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_v3-9Njx2EeyWNq6fFfWVSw" x="314" y="168"/> + </children> + <children xmi:type="notation:Node" xmi:id="_v3_kRDx2EeyWNq6fFfWVSw" type="2003" element="_v31MMDx2EeyWNq6fFfWVSw"> + <children xmi:type="notation:Node" xmi:id="_v4ALUDx2EeyWNq6fFfWVSw" type="5007"/> + <children xmi:type="notation:Node" xmi:id="_v4ALUTx2EeyWNq6fFfWVSw" type="7004"> + <children xmi:type="notation:Node" xmi:id="_zYsY8Dx4EeyWNq6fFfWVSw" type="3010" element="_zWjq8jx4EeyWNq6fFfWVSw"> + <styles xmi:type="notation:FontStyle" xmi:id="_zYsY8Tx4EeyWNq6fFfWVSw" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_zYsY8jx4EeyWNq6fFfWVSw"/> + </children> + <children xmi:type="notation:Node" xmi:id="_zYsY8zx4EeyWNq6fFfWVSw" type="3010" element="_zWkSATx4EeyWNq6fFfWVSw"> + <styles xmi:type="notation:FontStyle" xmi:id="_zYsY9Dx4EeyWNq6fFfWVSw" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_zYsY9Tx4EeyWNq6fFfWVSw"/> + </children> + <children xmi:type="notation:Node" xmi:id="_zYsY9jx4EeyWNq6fFfWVSw" type="3010" element="_zWk5ETx4EeyWNq6fFfWVSw"> + <styles xmi:type="notation:FontStyle" xmi:id="_zYsY9zx4EeyWNq6fFfWVSw" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_zYsY-Dx4EeyWNq6fFfWVSw"/> + </children> + <styles xmi:type="notation:SortingStyle" xmi:id="_v4ALUjx2EeyWNq6fFfWVSw"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_v4ALUzx2EeyWNq6fFfWVSw"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="_v3_kRTx2EeyWNq6fFfWVSw" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_v3_kRjx2EeyWNq6fFfWVSw" x="294" y="360"/> + </children> + <children xmi:type="notation:Node" xmi:id="_v4AyYDx2EeyWNq6fFfWVSw" type="2003" element="_v31zQTx2EeyWNq6fFfWVSw"> + <children xmi:type="notation:Node" xmi:id="_v4AyYzx2EeyWNq6fFfWVSw" type="5007"/> + <children xmi:type="notation:Node" xmi:id="_v4AyZDx2EeyWNq6fFfWVSw" type="7004"> + <children xmi:type="notation:Node" xmi:id="_Vdw2QDx4EeyWNq6fFfWVSw" type="3010" element="_VbmTEjx4EeyWNq6fFfWVSw"> + <styles xmi:type="notation:FontStyle" xmi:id="_Vdw2QTx4EeyWNq6fFfWVSw" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_Vdw2Qjx4EeyWNq6fFfWVSw"/> + </children> + <children xmi:type="notation:Node" xmi:id="_VdxdUDx4EeyWNq6fFfWVSw" type="3010" element="_Vbm6ITx4EeyWNq6fFfWVSw"> + <styles xmi:type="notation:FontStyle" xmi:id="_VdxdUTx4EeyWNq6fFfWVSw" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_VdxdUjx4EeyWNq6fFfWVSw"/> + </children> + <children xmi:type="notation:Node" xmi:id="_VdxdUzx4EeyWNq6fFfWVSw" type="3010" element="_Vbm6Izx4EeyWNq6fFfWVSw"> + <styles xmi:type="notation:FontStyle" xmi:id="_VdxdVDx4EeyWNq6fFfWVSw" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_VdxdVTx4EeyWNq6fFfWVSw"/> + </children> + <styles xmi:type="notation:SortingStyle" xmi:id="_v4AyZTx2EeyWNq6fFfWVSw"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_v4AyZjx2EeyWNq6fFfWVSw"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="_v4AyYTx2EeyWNq6fFfWVSw" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_v4AyYjx2EeyWNq6fFfWVSw" x="12" y="198"/> + </children> + <styles xmi:type="notation:DiagramStyle" xmi:id="_vGCi4jx2EeyWNq6fFfWVSw"/> + <edges xmi:type="notation:Edge" xmi:id="_zYuOIDx4EeyWNq6fFfWVSw" type="4001" element="_zWmuQDx4EeyWNq6fFfWVSw" source="_v39IADx2EeyWNq6fFfWVSw" target="_v4AyYDx2EeyWNq6fFfWVSw"> + <children xmi:type="notation:Node" xmi:id="_zYvcQDx4EeyWNq6fFfWVSw" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_zYvcQTx4EeyWNq6fFfWVSw" x="-8" y="60"/> + </children> + <children xmi:type="notation:Node" xmi:id="_zYvcQjx4EeyWNq6fFfWVSw" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_zYvcQzx4EeyWNq6fFfWVSw" x="1" y="-10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_zYwDUDx4EeyWNq6fFfWVSw" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_zYwDUTx4EeyWNq6fFfWVSw" x="1" y="-10"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_zYuOITx4EeyWNq6fFfWVSw" routing="Rectilinear"/> + <styles xmi:type="notation:FontStyle" xmi:id="_zYuOIjx4EeyWNq6fFfWVSw" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_zYuOIzx4EeyWNq6fFfWVSw" points="[62, 198, 45, 0]$[-50, 198, -67, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_zY3_IDx4EeyWNq6fFfWVSw" id="(0.5,0.5)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_zY3_ITx4EeyWNq6fFfWVSw" id="(0.5,0.5)"/> + </edges> + <edges xmi:type="notation:Edge" xmi:id="_zY3_Ijx4EeyWNq6fFfWVSw" type="4001" element="_zWn8YDx4EeyWNq6fFfWVSw" source="_v39IADx2EeyWNq6fFfWVSw" target="_v3-WIzx2EeyWNq6fFfWVSw"> + <children xmi:type="notation:Node" xmi:id="_zY4mMDx4EeyWNq6fFfWVSw" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_zY4mMTx4EeyWNq6fFfWVSw" x="-4" y="25"/> + </children> + <children xmi:type="notation:Node" xmi:id="_zY4mMjx4EeyWNq6fFfWVSw" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_zY4mMzx4EeyWNq6fFfWVSw" y="10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_zY4mNDx4EeyWNq6fFfWVSw" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_zY4mNTx4EeyWNq6fFfWVSw" y="10"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_zY3_Izx4EeyWNq6fFfWVSw" routing="Rectilinear"/> + <styles xmi:type="notation:FontStyle" xmi:id="_zY3_JDx4EeyWNq6fFfWVSw" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_zY3_JTx4EeyWNq6fFfWVSw" points="[62, 0, -248, 0]$[226, 0, -84, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_zY5NQDx4EeyWNq6fFfWVSw" id="(0.5,0.5)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_zY5NQTx4EeyWNq6fFfWVSw" id="(0.5,0.5)"/> + </edges> + <edges xmi:type="notation:Edge" xmi:id="_zY5NQjx4EeyWNq6fFfWVSw" type="4001" element="_zWn8Zzx4EeyWNq6fFfWVSw" source="_v3-WIzx2EeyWNq6fFfWVSw" target="_v3-9NDx2EeyWNq6fFfWVSw"> + <children xmi:type="notation:Node" xmi:id="_zY5NRjx4EeyWNq6fFfWVSw" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_zY5NRzx4EeyWNq6fFfWVSw" x="-5" y="-61"/> + </children> + <children xmi:type="notation:Node" xmi:id="_zY50UDx4EeyWNq6fFfWVSw" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_zY50UTx4EeyWNq6fFfWVSw" x="48" y="5"/> + </children> + <children xmi:type="notation:Node" xmi:id="_zY50Ujx4EeyWNq6fFfWVSw" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_zY50Uzx4EeyWNq6fFfWVSw" x="10"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_zY5NQzx4EeyWNq6fFfWVSw" routing="Rectilinear"/> + <styles xmi:type="notation:FontStyle" xmi:id="_zY5NRDx4EeyWNq6fFfWVSw" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_zY5NRTx4EeyWNq6fFfWVSw" points="[7, 49, 6, -119]$[7, 119, 6, -49]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_zY50VDx4EeyWNq6fFfWVSw" id="(0.5,0.5)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_zY50VTx4EeyWNq6fFfWVSw" id="(0.5,0.5)"/> + </edges> + <edges xmi:type="notation:Edge" xmi:id="_zY50Vjx4EeyWNq6fFfWVSw" type="4001" element="_zWojdjx4EeyWNq6fFfWVSw" source="_v3-9NDx2EeyWNq6fFfWVSw" target="_v3_kRDx2EeyWNq6fFfWVSw"> + <children xmi:type="notation:Node" xmi:id="_zY6bYDx4EeyWNq6fFfWVSw" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_zY6bYTx4EeyWNq6fFfWVSw" x="-10" y="-73"/> + </children> + <children xmi:type="notation:Node" xmi:id="_zY6bYjx4EeyWNq6fFfWVSw" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_zY6bYzx4EeyWNq6fFfWVSw" x="10" y="5"/> + </children> + <children xmi:type="notation:Node" xmi:id="_zY6bZDx4EeyWNq6fFfWVSw" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_zY6bZTx4EeyWNq6fFfWVSw" x="8" y="5"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_zY50Vzx4EeyWNq6fFfWVSw" routing="Rectilinear"/> + <styles xmi:type="notation:FontStyle" xmi:id="_zY50WDx4EeyWNq6fFfWVSw" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_zY50WTx4EeyWNq6fFfWVSw" points="[-1, 49, -3, -143]$[-1, 143, -3, -49]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_zY7CcDx4EeyWNq6fFfWVSw" id="(0.5,0.5)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_zY7CcTx4EeyWNq6fFfWVSw" id="(0.5,0.5)"/> + </edges> + </data> + </ownedAnnotationEntries> + <ownedAnnotationEntries xmi:type="description:AnnotationEntry" uid="_vGJQkDx2EeyWNq6fFfWVSw" source="DANNOTATION_CUSTOMIZATION_KEY"> + <data xmi:type="diagram:ComputedStyleDescriptionRegistry" uid="_vGJQkTx2EeyWNq6fFfWVSw"> + <computedStyleDescriptions xmi:type="style:EdgeStyleDescription" xmi:id="_zWpKgDx4EeyWNq6fFfWVSw" routingStyle="manhattan"> + <strokeColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/> + <centerLabelStyleDescription xmi:type="style:CenterLabelStyleDescription" xmi:id="_zWpKgTx4EeyWNq6fFfWVSw" showIcon="false" labelExpression="service:render"> + <labelFormat>bold</labelFormat> + <labelColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/> + </centerLabelStyleDescription> + <endLabelStyleDescription xmi:type="style:EndLabelStyleDescription" xmi:id="_zWpKgjx4EeyWNq6fFfWVSw" labelSize="6" showIcon="false" labelExpression="service:eKeysLabel"> + <labelColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='dark_blue']"/> + </endLabelStyleDescription> + </computedStyleDescriptions> + </data> + </ownedAnnotationEntries> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_v3xh0Dx2EeyWNq6fFfWVSw" name="Picklist" tooltipText="" outgoingEdges="_zWmuQDx4EeyWNq6fFfWVSw _zWn8YDx4EeyWNq6fFfWVSw" width="12" height="10"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//OFBiz/Picklist"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//OFBiz/Picklist"/> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_v3yI4Dx2EeyWNq6fFfWVSw" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_Vbj20jx4EeyWNq6fFfWVSw" name="picklistId : String" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OFBiz/Picklist/picklistId"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OFBiz/Picklist/picklistId"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_Vbkd4Dx4EeyWNq6fFfWVSw" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_v3zXADx2EeyWNq6fFfWVSw" name="PicklistBin" tooltipText="" outgoingEdges="_zWn8Zzx4EeyWNq6fFfWVSw" incomingEdges="_zWn8YDx4EeyWNq6fFfWVSw" width="12" height="10"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//OFBiz/PicklistBin"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//OFBiz/PicklistBin"/> + <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> + <arrangeConstraints>KEEP_SIZE</arrangeConstraints> + <arrangeConstraints>KEEP_RATIO</arrangeConstraints> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_v3zXATx2EeyWNq6fFfWVSw" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_VblsADx4EeyWNq6fFfWVSw" name="picklistId : String" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OFBiz/PicklistBin/picklistId"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OFBiz/PicklistBin/picklistId"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_VblsATx4EeyWNq6fFfWVSw" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_VbmTEDx4EeyWNq6fFfWVSw" name="binLocationNumber : String" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OFBiz/PicklistBin/binLocationNumber"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OFBiz/PicklistBin/binLocationNumber"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_VbmTETx4EeyWNq6fFfWVSw" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_v3z-ETx2EeyWNq6fFfWVSw" name="PicklistItem" tooltipText="" outgoingEdges="_zWojdjx4EeyWNq6fFfWVSw" incomingEdges="_zWn8Zzx4EeyWNq6fFfWVSw" width="12" height="10"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//OFBiz/PicklistItem"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//OFBiz/PicklistItem"/> + <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> + <arrangeConstraints>KEEP_SIZE</arrangeConstraints> + <arrangeConstraints>KEEP_RATIO</arrangeConstraints> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_v30lIDx2EeyWNq6fFfWVSw" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_v31MMDx2EeyWNq6fFfWVSw" name="InventoryItem" tooltipText="" incomingEdges="_zWojdjx4EeyWNq6fFfWVSw" width="12" height="10"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//OFBiz/InventoryItem"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//OFBiz/InventoryItem"/> + <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> + <arrangeConstraints>KEEP_SIZE</arrangeConstraints> + <arrangeConstraints>KEEP_RATIO</arrangeConstraints> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_v31MMTx2EeyWNq6fFfWVSw" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_zWjq8jx4EeyWNq6fFfWVSw" name="inventoryItemId : String" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OFBiz/InventoryItem/inventoryItemId"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OFBiz/InventoryItem/inventoryItemId"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_zWkSADx4EeyWNq6fFfWVSw" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_zWkSATx4EeyWNq6fFfWVSw" name="containerId : String" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OFBiz/InventoryItem/containerId"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OFBiz/InventoryItem/containerId"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_zWk5EDx4EeyWNq6fFfWVSw" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_zWk5ETx4EeyWNq6fFfWVSw" name="productId : String" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OFBiz/InventoryItem/productId"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OFBiz/InventoryItem/productId"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_zWk5Ejx4EeyWNq6fFfWVSw" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_v31zQTx2EeyWNq6fFfWVSw" name="PicklistRole" tooltipText="" incomingEdges="_zWmuQDx4EeyWNq6fFfWVSw" width="12" height="10"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//OFBiz/PicklistRole"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//OFBiz/PicklistRole"/> + <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> + <arrangeConstraints>KEEP_SIZE</arrangeConstraints> + <arrangeConstraints>KEEP_RATIO</arrangeConstraints> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_v32aUDx2EeyWNq6fFfWVSw" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_VbmTEjx4EeyWNq6fFfWVSw" name="picklistId : String" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OFBiz/PicklistRole/picklistId"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OFBiz/PicklistRole/picklistId"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_Vbm6IDx4EeyWNq6fFfWVSw" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_Vbm6ITx4EeyWNq6fFfWVSw" name="partyId : String" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OFBiz/PicklistRole/partyId"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OFBiz/PicklistRole/partyId"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_Vbm6Ijx4EeyWNq6fFfWVSw" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_Vbm6Izx4EeyWNq6fFfWVSw" name="roleTypeId : String" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OFBiz/PicklistRole/roleTypeId"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OFBiz/PicklistRole/roleTypeId"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_Vbm6JDx4EeyWNq6fFfWVSw" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_zWmuQDx4EeyWNq6fFfWVSw" name="[0..*] picklistRoles" sourceNode="_v3xh0Dx2EeyWNq6fFfWVSw" targetNode="_v31zQTx2EeyWNq6fFfWVSw"> + <target xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//OFBiz/Picklist/picklistRoles"/> + <semanticElements xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//OFBiz/Picklist/picklistRoles"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_zWnVUDx4EeyWNq6fFfWVSw" routingStyle="manhattan" strokeColor="0,0,0"> + <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']/@style"/> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_zWnVUjx4EeyWNq6fFfWVSw" showIcon="false"> + <customFeatures>labelSize</customFeatures> + </centerLabelStyle> + <endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_zWnVUTx4EeyWNq6fFfWVSw" showIcon="false" labelColor="39,76,114"> + <customFeatures>labelSize</customFeatures> + </endLabelStyle> + </ownedStyle> + <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_zWn8YDx4EeyWNq6fFfWVSw" name="[0..*] picklistBins" sourceNode="_v3xh0Dx2EeyWNq6fFfWVSw" targetNode="_v3zXADx2EeyWNq6fFfWVSw"> + <target xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//OFBiz/Picklist/picklistBins"/> + <semanticElements xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//OFBiz/Picklist/picklistBins"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_zWn8YTx4EeyWNq6fFfWVSw" routingStyle="manhattan" strokeColor="0,0,0"> + <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']/@style"/> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_zWn8Yzx4EeyWNq6fFfWVSw" showIcon="false"> + <customFeatures>labelSize</customFeatures> + </centerLabelStyle> + <endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_zWn8Yjx4EeyWNq6fFfWVSw" showIcon="false" labelColor="39,76,114"> + <customFeatures>labelSize</customFeatures> + </endLabelStyle> + </ownedStyle> + <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_zWn8Zzx4EeyWNq6fFfWVSw" name="[0..*] picklistItems" sourceNode="_v3zXADx2EeyWNq6fFfWVSw" targetNode="_v3z-ETx2EeyWNq6fFfWVSw"> + <target xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//OFBiz/PicklistBin/picklistItems"/> + <semanticElements xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//OFBiz/PicklistBin/picklistItems"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_zWojcDx4EeyWNq6fFfWVSw" routingStyle="manhattan" strokeColor="0,0,0"> + <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']/@style"/> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_zWojcjx4EeyWNq6fFfWVSw" showIcon="false"> + <customFeatures>labelSize</customFeatures> + </centerLabelStyle> + <endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_zWojcTx4EeyWNq6fFfWVSw" showIcon="false" labelColor="39,76,114"> + <customFeatures>labelSize</customFeatures> + </endLabelStyle> + </ownedStyle> + <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_zWojdjx4EeyWNq6fFfWVSw" name="[1..1] inventoryItem" sourceNode="_v3z-ETx2EeyWNq6fFfWVSw" targetNode="_v31MMDx2EeyWNq6fFfWVSw"> + <target xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//OFBiz/PicklistItem/inventoryItem"/> + <semanticElements xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//OFBiz/PicklistItem/inventoryItem"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_zWpKgzx4EeyWNq6fFfWVSw" description="_zWpKgDx4EeyWNq6fFfWVSw" routingStyle="manhattan" strokeColor="0,0,0"> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_zWpKhTx4EeyWNq6fFfWVSw" showIcon="false"> + <customFeatures>labelSize</customFeatures> + <labelFormat>bold</labelFormat> + </centerLabelStyle> + <endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_zWpKhDx4EeyWNq6fFfWVSw" showIcon="false" labelColor="39,76,114"> + <customFeatures>labelSize</customFeatures> + </endLabelStyle> + </ownedStyle> + <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> + </ownedDiagramElements> + <description xmi:type="description_1:DiagramDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']"/> + <filterVariableHistory xmi:type="diagram:FilterVariableHistory" uid="_vF1ukDx2EeyWNq6fFfWVSw"/> + <activatedLayers xmi:type="description_1:Layer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer"/> + <activatedLayers xmi:type="description_1:AdditionalLayer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@additionalLayers[name='Package']"/> + <activatedLayers xmi:type="description_1:AdditionalLayer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@additionalLayers[name='Validation']"/> + <target xmi:type="ecore:EPackage" href="iPos_Datamodel.ecore#//OFBiz"/> + </diagram:DSemanticDiagram> + <diagram:DSemanticDiagram uid="_FmLvADx3EeyWNq6fFfWVSw"> + <ownedAnnotationEntries xmi:type="description:AnnotationEntry" uid="_FmNkMDx3EeyWNq6fFfWVSw" source="GMF_DIAGRAMS"> + <data xmi:type="notation:Diagram" xmi:id="_FmNkMTx3EeyWNq6fFfWVSw" type="Sirius" element="_FmLvADx3EeyWNq6fFfWVSw" measurementUnit="Pixel"> + <children xmi:type="notation:Node" xmi:id="_GFFRgDx3EeyWNq6fFfWVSw" type="2003" element="_GE5EQDx3EeyWNq6fFfWVSw"> + <children xmi:type="notation:Node" xmi:id="_GFFRgzx3EeyWNq6fFfWVSw" type="5007"/> + <children xmi:type="notation:Node" xmi:id="_GFF4kDx3EeyWNq6fFfWVSw" type="7004"> + <styles xmi:type="notation:SortingStyle" xmi:id="_GFF4kTx3EeyWNq6fFfWVSw"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_GFF4kjx3EeyWNq6fFfWVSw"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="_GFFRgTx3EeyWNq6fFfWVSw" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GFFRgjx3EeyWNq6fFfWVSw"/> + </children> + <children xmi:type="notation:Node" xmi:id="_GFF4kzx3EeyWNq6fFfWVSw" type="2003" element="_GE5rUjx3EeyWNq6fFfWVSw"> + <children xmi:type="notation:Node" xmi:id="_GFF4ljx3EeyWNq6fFfWVSw" type="5007"/> + <children xmi:type="notation:Node" xmi:id="_GFGfoDx3EeyWNq6fFfWVSw" type="7004"> + <children xmi:type="notation:Node" xmi:id="_GFIU0Dx3EeyWNq6fFfWVSw" type="3010" element="_GFAZAjx3EeyWNq6fFfWVSw"> + <styles xmi:type="notation:FontStyle" xmi:id="_GFIU0Tx3EeyWNq6fFfWVSw" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_GFIU0jx3EeyWNq6fFfWVSw"/> + </children> + <children xmi:type="notation:Node" xmi:id="_GFIU0zx3EeyWNq6fFfWVSw" type="3010" element="_GFBAEDx3EeyWNq6fFfWVSw"> + <styles xmi:type="notation:FontStyle" xmi:id="_GFIU1Dx3EeyWNq6fFfWVSw" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_GFIU1Tx3EeyWNq6fFfWVSw"/> + </children> + <children xmi:type="notation:Node" xmi:id="_GFIU1jx3EeyWNq6fFfWVSw" type="3010" element="_GFBAEjx3EeyWNq6fFfWVSw"> + <styles xmi:type="notation:FontStyle" xmi:id="_GFIU1zx3EeyWNq6fFfWVSw" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_GFIU2Dx3EeyWNq6fFfWVSw"/> + </children> + <children xmi:type="notation:Node" xmi:id="_GFI74Dx3EeyWNq6fFfWVSw" type="3010" element="_GFBnITx3EeyWNq6fFfWVSw"> + <styles xmi:type="notation:FontStyle" xmi:id="_GFI74Tx3EeyWNq6fFfWVSw" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_GFI74jx3EeyWNq6fFfWVSw"/> + </children> + <children xmi:type="notation:Node" xmi:id="_GFI74zx3EeyWNq6fFfWVSw" type="3010" element="_GFBnIzx3EeyWNq6fFfWVSw"> + <styles xmi:type="notation:FontStyle" xmi:id="_GFI75Dx3EeyWNq6fFfWVSw" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_GFI75Tx3EeyWNq6fFfWVSw"/> + </children> + <children xmi:type="notation:Node" xmi:id="_GFI75jx3EeyWNq6fFfWVSw" type="3010" element="_GFCOMTx3EeyWNq6fFfWVSw"> + <styles xmi:type="notation:FontStyle" xmi:id="_GFI75zx3EeyWNq6fFfWVSw" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_GFI76Dx3EeyWNq6fFfWVSw"/> + </children> + <children xmi:type="notation:Node" xmi:id="_GFI76Tx3EeyWNq6fFfWVSw" type="3010" element="_GFCOMzx3EeyWNq6fFfWVSw"> + <styles xmi:type="notation:FontStyle" xmi:id="_GFI76jx3EeyWNq6fFfWVSw" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_GFI76zx3EeyWNq6fFfWVSw"/> + </children> + <children xmi:type="notation:Node" xmi:id="_GFI77Dx3EeyWNq6fFfWVSw" type="3010" element="_GFC1QDx3EeyWNq6fFfWVSw"> + <styles xmi:type="notation:FontStyle" xmi:id="_GFI77Tx3EeyWNq6fFfWVSw" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_GFI77jx3EeyWNq6fFfWVSw"/> + </children> + <children xmi:type="notation:Node" xmi:id="_GFJi8Dx3EeyWNq6fFfWVSw" type="3010" element="_GFC1Qjx3EeyWNq6fFfWVSw"> + <styles xmi:type="notation:FontStyle" xmi:id="_GFJi8Tx3EeyWNq6fFfWVSw" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_GFJi8jx3EeyWNq6fFfWVSw"/> + </children> + <children xmi:type="notation:Node" xmi:id="_GFJi8zx3EeyWNq6fFfWVSw" type="3010" element="_GFC1RDx3EeyWNq6fFfWVSw"> + <styles xmi:type="notation:FontStyle" xmi:id="_GFJi9Dx3EeyWNq6fFfWVSw" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_GFJi9Tx3EeyWNq6fFfWVSw"/> + </children> + <children xmi:type="notation:Node" xmi:id="_GFJi9jx3EeyWNq6fFfWVSw" type="3010" element="_GFDcUTx3EeyWNq6fFfWVSw"> + <styles xmi:type="notation:FontStyle" xmi:id="_GFJi9zx3EeyWNq6fFfWVSw" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_GFJi-Dx3EeyWNq6fFfWVSw"/> + </children> + <children xmi:type="notation:Node" xmi:id="_uj364FdaEeyyocYQuYPGPQ" type="3010" element="_uiokwFdaEeyyocYQuYPGPQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_uj364VdaEeyyocYQuYPGPQ" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_uj364ldaEeyyocYQuYPGPQ"/> + </children> + <styles xmi:type="notation:SortingStyle" xmi:id="_GFGfoTx3EeyWNq6fFfWVSw"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_GFGfojx3EeyWNq6fFfWVSw"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="_GFF4lDx3EeyWNq6fFfWVSw" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GFF4lTx3EeyWNq6fFfWVSw" x="162" y="222"/> + </children> + <children xmi:type="notation:Node" xmi:id="_GFGfozx3EeyWNq6fFfWVSw" type="2003" element="_GE6SYjx3EeyWNq6fFfWVSw"> + <children xmi:type="notation:Node" xmi:id="_GFGfpjx3EeyWNq6fFfWVSw" type="5007"/> + <children xmi:type="notation:Node" xmi:id="_GFGfpzx3EeyWNq6fFfWVSw" type="7004"> + <styles xmi:type="notation:SortingStyle" xmi:id="_GFGfqDx3EeyWNq6fFfWVSw"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_GFGfqTx3EeyWNq6fFfWVSw"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="_GFGfpDx3EeyWNq6fFfWVSw" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GFGfpTx3EeyWNq6fFfWVSw" x="462"/> + </children> + <children xmi:type="notation:Node" xmi:id="_GFGfqjx3EeyWNq6fFfWVSw" type="2003" element="_GE65cjx3EeyWNq6fFfWVSw"> + <children xmi:type="notation:Node" xmi:id="_GFGfrTx3EeyWNq6fFfWVSw" type="5007"/> + <children xmi:type="notation:Node" xmi:id="_GFGfrjx3EeyWNq6fFfWVSw" type="7004"> + <styles xmi:type="notation:SortingStyle" xmi:id="_GFGfrzx3EeyWNq6fFfWVSw"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_GFGfsDx3EeyWNq6fFfWVSw"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="_GFGfqzx3EeyWNq6fFfWVSw" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GFGfrDx3EeyWNq6fFfWVSw" x="708"/> + </children> + <children xmi:type="notation:Node" xmi:id="_GFHGsDx3EeyWNq6fFfWVSw" type="2003" element="_GE7ggDx3EeyWNq6fFfWVSw"> + <children xmi:type="notation:Node" xmi:id="_GFHGszx3EeyWNq6fFfWVSw" type="5007"/> + <children xmi:type="notation:Node" xmi:id="_GFHGtDx3EeyWNq6fFfWVSw" type="7004"> + <styles xmi:type="notation:SortingStyle" xmi:id="_GFHGtTx3EeyWNq6fFfWVSw"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_GFHGtjx3EeyWNq6fFfWVSw"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="_GFHGsTx3EeyWNq6fFfWVSw" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GFHGsjx3EeyWNq6fFfWVSw" x="912"/> + </children> + <children xmi:type="notation:Node" xmi:id="_GFHGtzx3EeyWNq6fFfWVSw" type="2003" element="_GE8HkDx3EeyWNq6fFfWVSw"> + <children xmi:type="notation:Node" xmi:id="_GFHGujx3EeyWNq6fFfWVSw" type="5007"/> + <children xmi:type="notation:Node" xmi:id="_GFHGuzx3EeyWNq6fFfWVSw" type="7004"> + <children xmi:type="notation:Node" xmi:id="_GFJi-Tx3EeyWNq6fFfWVSw" type="3010" element="_GFDcUzx3EeyWNq6fFfWVSw"> + <styles xmi:type="notation:FontStyle" xmi:id="_GFJi-jx3EeyWNq6fFfWVSw" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_GFJi-zx3EeyWNq6fFfWVSw"/> + </children> + <styles xmi:type="notation:SortingStyle" xmi:id="_GFHGvDx3EeyWNq6fFfWVSw"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_GFHGvTx3EeyWNq6fFfWVSw"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="_GFHGuDx3EeyWNq6fFfWVSw" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GFHGuTx3EeyWNq6fFfWVSw" x="1146"/> + </children> + <children xmi:type="notation:Node" xmi:id="_GFHGvjx3EeyWNq6fFfWVSw" type="2003" element="_GE8uoDx3EeyWNq6fFfWVSw"> + <children xmi:type="notation:Node" xmi:id="_GFHtwDx3EeyWNq6fFfWVSw" type="5007"/> + <children xmi:type="notation:Node" xmi:id="_GFHtwTx3EeyWNq6fFfWVSw" type="7004"> + <styles xmi:type="notation:SortingStyle" xmi:id="_GFHtwjx3EeyWNq6fFfWVSw"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_GFHtwzx3EeyWNq6fFfWVSw"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="_GFHGvzx3EeyWNq6fFfWVSw" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GFHGwDx3EeyWNq6fFfWVSw" x="1386"/> + </children> + <children xmi:type="notation:Node" xmi:id="_GFHtxDx3EeyWNq6fFfWVSw" type="2003" element="_GE8uozx3EeyWNq6fFfWVSw"> + <children xmi:type="notation:Node" xmi:id="_GFHtxzx3EeyWNq6fFfWVSw" type="5007"/> + <children xmi:type="notation:Node" xmi:id="_GFHtyDx3EeyWNq6fFfWVSw" type="7004"> + <styles xmi:type="notation:SortingStyle" xmi:id="_GFHtyTx3EeyWNq6fFfWVSw"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_GFHtyjx3EeyWNq6fFfWVSw"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="_GFHtxTx3EeyWNq6fFfWVSw" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GFHtxjx3EeyWNq6fFfWVSw" x="1620"/> + </children> + <children xmi:type="notation:Node" xmi:id="_TTtGwD8bEeyWNq6fFfWVSw" type="2003" element="_TTCYYD8bEeyWNq6fFfWVSw"> + <children xmi:type="notation:Node" xmi:id="_TTtt0D8bEeyWNq6fFfWVSw" type="5007"/> + <children xmi:type="notation:Node" xmi:id="_TTtt0T8bEeyWNq6fFfWVSw" type="7004"> + <children xmi:type="notation:Node" xmi:id="_1Gu8YD8bEeyWNq6fFfWVSw" type="3010" element="_1F_VgD8bEeyWNq6fFfWVSw"> + <styles xmi:type="notation:FontStyle" xmi:id="_1Gu8YT8bEeyWNq6fFfWVSw" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_1Gu8Yj8bEeyWNq6fFfWVSw"/> + </children> + <children xmi:type="notation:Node" xmi:id="__9PL4D8bEeyWNq6fFfWVSw" type="3010" element="__83_gD8bEeyWNq6fFfWVSw"> + <styles xmi:type="notation:FontStyle" xmi:id="__9PL4T8bEeyWNq6fFfWVSw" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="__9PL4j8bEeyWNq6fFfWVSw"/> + </children> + <children xmi:type="notation:Node" xmi:id="_BI5GsD8cEeyWNq6fFfWVSw" type="3010" element="_BIooAD8cEeyWNq6fFfWVSw"> + <styles xmi:type="notation:FontStyle" xmi:id="_BI5GsT8cEeyWNq6fFfWVSw" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_BI5Gsj8cEeyWNq6fFfWVSw"/> + </children> + <children xmi:type="notation:Node" xmi:id="_B6FTED8cEeyWNq6fFfWVSw" type="3010" element="_B52CgD8cEeyWNq6fFfWVSw"> + <styles xmi:type="notation:FontStyle" xmi:id="_B6FTET8cEeyWNq6fFfWVSw" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_B6FTEj8cEeyWNq6fFfWVSw"/> + </children> + <children xmi:type="notation:Node" xmi:id="_E86K4D8cEeyWNq6fFfWVSw" type="3010" element="_E8oeED8cEeyWNq6fFfWVSw"> + <styles xmi:type="notation:FontStyle" xmi:id="_E86K4T8cEeyWNq6fFfWVSw" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_E86K4j8cEeyWNq6fFfWVSw"/> + </children> + <children xmi:type="notation:Node" xmi:id="_wTAkIJSNEeyJ0bON1VCj7g" type="3010" element="_wS9g1pSNEeyJ0bON1VCj7g"> + <styles xmi:type="notation:FontStyle" xmi:id="_wTAkIZSNEeyJ0bON1VCj7g" fontName="Segoe UI" fontHeight="8" bold="true"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_wTAkIpSNEeyJ0bON1VCj7g"/> + </children> + <children xmi:type="notation:Node" xmi:id="_mTwa0D8cEeyWNq6fFfWVSw" type="3010" element="_mTLzED8cEeyWNq6fFfWVSw"> + <styles xmi:type="notation:FontStyle" xmi:id="_mTwa0T8cEeyWNq6fFfWVSw" fontName="Segoe UI" fontHeight="8" bold="true"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_mTwa0j8cEeyWNq6fFfWVSw"/> + </children> + <children xmi:type="notation:Node" xmi:id="_mTwa0z8cEeyWNq6fFfWVSw" type="3010" element="_mTLzEj8cEeyWNq6fFfWVSw"> + <styles xmi:type="notation:FontStyle" xmi:id="_mTwa1D8cEeyWNq6fFfWVSw" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_mTwa1T8cEeyWNq6fFfWVSw"/> + </children> + <styles xmi:type="notation:SortingStyle" xmi:id="_TTtt0j8bEeyWNq6fFfWVSw"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_TTtt0z8bEeyWNq6fFfWVSw"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="_TTtGwT8bEeyWNq6fFfWVSw" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_TTtGwj8bEeyWNq6fFfWVSw" x="2028" y="162" width="153" height="231"/> + </children> + <children xmi:type="notation:Node" xmi:id="_xTXLgIqVEeyJ0bON1VCj7g" type="2003" element="_xRC3UIqVEeyJ0bON1VCj7g"> + <children xmi:type="notation:Node" xmi:id="_xUM5AIqVEeyJ0bON1VCj7g" type="5007"/> + <children xmi:type="notation:Node" xmi:id="_xUNgEIqVEeyJ0bON1VCj7g" type="7004"> + <children xmi:type="notation:Node" xmi:id="_41F3kIqVEeyJ0bON1VCj7g" type="3010" element="_40Ys8IqVEeyJ0bON1VCj7g"> + <styles xmi:type="notation:FontStyle" xmi:id="_41F3kYqVEeyJ0bON1VCj7g" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_41F3koqVEeyJ0bON1VCj7g"/> + </children> + <children xmi:type="notation:Node" xmi:id="_6cprQIqVEeyJ0bON1VCj7g" type="3010" element="_6cONcIqVEeyJ0bON1VCj7g"> + <styles xmi:type="notation:FontStyle" xmi:id="_6cprQYqVEeyJ0bON1VCj7g" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_6cprQoqVEeyJ0bON1VCj7g"/> + </children> + <children xmi:type="notation:Node" xmi:id="_8zYSEIqVEeyJ0bON1VCj7g" type="3010" element="_8y-CYIqVEeyJ0bON1VCj7g"> + <styles xmi:type="notation:FontStyle" xmi:id="_8zYSEYqVEeyJ0bON1VCj7g" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_8zYSEoqVEeyJ0bON1VCj7g"/> + </children> + <children xmi:type="notation:Node" xmi:id="_-aeywIqVEeyJ0bON1VCj7g" type="3010" element="_-aCt4IqVEeyJ0bON1VCj7g"> + <styles xmi:type="notation:FontStyle" xmi:id="_-aeywYqVEeyJ0bON1VCj7g" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_-aeywoqVEeyJ0bON1VCj7g"/> + </children> + <children xmi:type="notation:Node" xmi:id="_Po3KUIqWEeyJ0bON1VCj7g" type="3010" element="_Pok2cIqWEeyJ0bON1VCj7g"> + <styles xmi:type="notation:FontStyle" xmi:id="_Po3KUYqWEeyJ0bON1VCj7g" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_Po3KUoqWEeyJ0bON1VCj7g"/> + </children> + <styles xmi:type="notation:SortingStyle" xmi:id="_xUNgEYqVEeyJ0bON1VCj7g"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_xUNgEoqVEeyJ0bON1VCj7g"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="_xTXLgYqVEeyJ0bON1VCj7g" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_xTXLgoqVEeyJ0bON1VCj7g" x="1224" y="162" width="153" height="117"/> + </children> + <children xmi:type="notation:Node" xmi:id="_KOCgYIqWEeyJ0bON1VCj7g" type="2003" element="_KNvlcIqWEeyJ0bON1VCj7g"> + <children xmi:type="notation:Node" xmi:id="_KODHcIqWEeyJ0bON1VCj7g" type="5007"/> + <children xmi:type="notation:Node" xmi:id="_KODHcYqWEeyJ0bON1VCj7g" type="7004"> + <children xmi:type="notation:Node" xmi:id="_YtsA0IqWEeyJ0bON1VCj7g" type="3010" element="_YtZs8IqWEeyJ0bON1VCj7g"> + <styles xmi:type="notation:FontStyle" xmi:id="_YtsA0YqWEeyJ0bON1VCj7g" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_YtsA0oqWEeyJ0bON1VCj7g"/> + </children> + <styles xmi:type="notation:SortingStyle" xmi:id="_KODHcoqWEeyJ0bON1VCj7g"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_KODHc4qWEeyJ0bON1VCj7g"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="_KOCgYYqWEeyJ0bON1VCj7g" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_KOCgYoqWEeyJ0bON1VCj7g" x="941" y="318" width="120" height="100"/> + </children> + <children xmi:type="notation:Node" xmi:id="__LdHQIqWEeyJ0bON1VCj7g" type="2003" element="__LN2sIqWEeyJ0bON1VCj7g"> + <children xmi:type="notation:Node" xmi:id="__LduUYqWEeyJ0bON1VCj7g" type="5007"/> + <children xmi:type="notation:Node" xmi:id="__LduUoqWEeyJ0bON1VCj7g" type="7004"> + <styles xmi:type="notation:SortingStyle" xmi:id="__LduU4qWEeyJ0bON1VCj7g"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="__LduVIqWEeyJ0bON1VCj7g"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="__LdHQYqWEeyJ0bON1VCj7g" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__LduUIqWEeyJ0bON1VCj7g" x="785" y="480" width="120" height="100"/> + </children> + <children xmi:type="notation:Node" xmi:id="_J70SgIqXEeyJ0bON1VCj7g" type="2003" element="_J7lB8IqXEeyJ0bON1VCj7g"> + <children xmi:type="notation:Node" xmi:id="_J70Sg4qXEeyJ0bON1VCj7g" type="5007"/> + <children xmi:type="notation:Node" xmi:id="_J705kIqXEeyJ0bON1VCj7g" type="7004"> + <children xmi:type="notation:Node" xmi:id="_XiN2wIqXEeyJ0bON1VCj7g" type="3010" element="_Xh8xAIqXEeyJ0bON1VCj7g"> + <styles xmi:type="notation:FontStyle" xmi:id="_XiN2wYqXEeyJ0bON1VCj7g" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_XiN2woqXEeyJ0bON1VCj7g"/> + </children> + <styles xmi:type="notation:SortingStyle" xmi:id="_J705kYqXEeyJ0bON1VCj7g"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_J705koqXEeyJ0bON1VCj7g"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="_J70SgYqXEeyJ0bON1VCj7g" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_J70SgoqXEeyJ0bON1VCj7g" x="941" y="480" width="120" height="100"/> + </children> + <children xmi:type="notation:Node" xmi:id="_aiph4IqXEeyJ0bON1VCj7g" type="2003" element="_aibfcIqXEeyJ0bON1VCj7g"> + <children xmi:type="notation:Node" xmi:id="_aiph44qXEeyJ0bON1VCj7g" type="5007"/> + <children xmi:type="notation:Node" xmi:id="_aiph5IqXEeyJ0bON1VCj7g" type="7004"> + <children xmi:type="notation:Node" xmi:id="_gvb0QIqXEeyJ0bON1VCj7g" type="3010" element="_gvKugIqXEeyJ0bON1VCj7g"> + <styles xmi:type="notation:FontStyle" xmi:id="_gvb0QYqXEeyJ0bON1VCj7g" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_gvb0QoqXEeyJ0bON1VCj7g"/> + </children> + <styles xmi:type="notation:SortingStyle" xmi:id="_aiph5YqXEeyJ0bON1VCj7g"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_aiph5oqXEeyJ0bON1VCj7g"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="_aiph4YqXEeyJ0bON1VCj7g" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_aiph4oqXEeyJ0bON1VCj7g" x="1529" y="312" width="144" height="100"/> + </children> + <children xmi:type="notation:Node" xmi:id="__jFHoIqXEeyJ0bON1VCj7g" type="2003" element="__i1QAIqXEeyJ0bON1VCj7g"> + <children xmi:type="notation:Node" xmi:id="__jFHo4qXEeyJ0bON1VCj7g" type="5007"/> + <children xmi:type="notation:Node" xmi:id="__jFHpIqXEeyJ0bON1VCj7g" type="7004"> + <children xmi:type="notation:Node" xmi:id="_YDYNoIqYEeyJ0bON1VCj7g" type="3010" element="_YDIWAIqYEeyJ0bON1VCj7g"> + <styles xmi:type="notation:FontStyle" xmi:id="_YDYNoYqYEeyJ0bON1VCj7g" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_YDYNooqYEeyJ0bON1VCj7g"/> + </children> + <styles xmi:type="notation:SortingStyle" xmi:id="__jFHpYqXEeyJ0bON1VCj7g"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="__jFHpoqXEeyJ0bON1VCj7g"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="__jFHoYqXEeyJ0bON1VCj7g" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__jFHooqXEeyJ0bON1VCj7g" x="1463" y="486" width="120" height="100"/> + </children> + <children xmi:type="notation:Node" xmi:id="_BT_EkIqYEeyJ0bON1VCj7g" type="2003" element="_BTvM8IqYEeyJ0bON1VCj7g"> + <children xmi:type="notation:Node" xmi:id="_BT_roIqYEeyJ0bON1VCj7g" type="5007"/> + <children xmi:type="notation:Node" xmi:id="_BT_roYqYEeyJ0bON1VCj7g" type="7004"> + <styles xmi:type="notation:SortingStyle" xmi:id="_BT_rooqYEeyJ0bON1VCj7g"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_BT_ro4qYEeyJ0bON1VCj7g"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="_BT_EkYqYEeyJ0bON1VCj7g" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BT_EkoqYEeyJ0bON1VCj7g" x="1607" y="486" width="141" height="100"/> + </children> + <children xmi:type="notation:Node" xmi:id="_5_rUAIqYEeyJ0bON1VCj7g" type="2003" element="_5_cqgIqYEeyJ0bON1VCj7g"> + <children xmi:type="notation:Node" xmi:id="_5_rUA4qYEeyJ0bON1VCj7g" type="5007"/> + <children xmi:type="notation:Node" xmi:id="_5_rUBIqYEeyJ0bON1VCj7g" type="7004"> + <children xmi:type="notation:Node" xmi:id="_9C2xIIqYEeyJ0bON1VCj7g" type="3010" element="_9Cm5gIqYEeyJ0bON1VCj7g"> + <styles xmi:type="notation:FontStyle" xmi:id="_9C2xIYqYEeyJ0bON1VCj7g" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_9C2xIoqYEeyJ0bON1VCj7g"/> + </children> + <styles xmi:type="notation:SortingStyle" xmi:id="_5_rUBYqYEeyJ0bON1VCj7g"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_5_rUBoqYEeyJ0bON1VCj7g"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="_5_rUAYqYEeyJ0bON1VCj7g" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5_rUAoqYEeyJ0bON1VCj7g" x="1313" y="486" width="120" height="100"/> + </children> + <children xmi:type="notation:Node" xmi:id="_F9H9cIqZEeyJ0bON1VCj7g" type="2003" element="_F86iEIqZEeyJ0bON1VCj7g"> + <children xmi:type="notation:Node" xmi:id="_F9IkgIqZEeyJ0bON1VCj7g" type="5007"/> + <children xmi:type="notation:Node" xmi:id="_F9IkgYqZEeyJ0bON1VCj7g" type="7004"> + <children xmi:type="notation:Node" xmi:id="_LBtRoIqZEeyJ0bON1VCj7g" type="3010" element="_LBdaAIqZEeyJ0bON1VCj7g"> + <styles xmi:type="notation:FontStyle" xmi:id="_LBtRoYqZEeyJ0bON1VCj7g" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_LBtRooqZEeyJ0bON1VCj7g"/> + </children> + <styles xmi:type="notation:SortingStyle" xmi:id="_F9IkgoqZEeyJ0bON1VCj7g"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_F9Ikg4qZEeyJ0bON1VCj7g"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="_F9H9cYqZEeyJ0bON1VCj7g" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_F9H9coqZEeyJ0bON1VCj7g" x="1781" y="486" width="138" height="100"/> + </children> + <children xmi:type="notation:Node" xmi:id="_ZNRYcIqZEeyJ0bON1VCj7g" type="2003" element="_ZNDWAIqZEeyJ0bON1VCj7g"> + <children xmi:type="notation:Node" xmi:id="_ZNRYc4qZEeyJ0bON1VCj7g" type="5007"/> + <children xmi:type="notation:Node" xmi:id="_ZNR_gIqZEeyJ0bON1VCj7g" type="7004"> + <children xmi:type="notation:Node" xmi:id="_b9O-oIqZEeyJ0bON1VCj7g" type="3010" element="_b8_HAIqZEeyJ0bON1VCj7g"> + <styles xmi:type="notation:FontStyle" xmi:id="_b9O-oYqZEeyJ0bON1VCj7g" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_b9O-ooqZEeyJ0bON1VCj7g"/> + </children> + <styles xmi:type="notation:SortingStyle" xmi:id="_ZNR_gYqZEeyJ0bON1VCj7g"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_ZNR_goqZEeyJ0bON1VCj7g"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="_ZNRYcYqZEeyJ0bON1VCj7g" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ZNRYcoqZEeyJ0bON1VCj7g" x="1079" y="480" width="174" height="100"/> + </children> + <children xmi:type="notation:Node" xmi:id="_vsQ_J5SLEeyJ0bON1VCj7g" type="2003" element="_vsCVoJSLEeyJ0bON1VCj7g"> + <children xmi:type="notation:Node" xmi:id="_vsRmMJSLEeyJ0bON1VCj7g" type="5007"/> + <children xmi:type="notation:Node" xmi:id="_vsRmMZSLEeyJ0bON1VCj7g" type="7004"> + <children xmi:type="notation:Node" xmi:id="_1WZQYJSLEeyJ0bON1VCj7g" type="3010" element="_1WHjkJSLEeyJ0bON1VCj7g"> + <styles xmi:type="notation:FontStyle" xmi:id="_1WZQYZSLEeyJ0bON1VCj7g" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_1WZQYpSLEeyJ0bON1VCj7g"/> + </children> + <children xmi:type="notation:Node" xmi:id="_5AFT4pSLEeyJ0bON1VCj7g" type="3010" element="_4_zAAJSLEeyJ0bON1VCj7g"> + <styles xmi:type="notation:FontStyle" xmi:id="_5AFT45SLEeyJ0bON1VCj7g" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_5AFT5JSLEeyJ0bON1VCj7g"/> + </children> + <children xmi:type="notation:Node" xmi:id="_O-8-8JSMEeyJ0bON1VCj7g" type="3010" element="_O-qrEJSMEeyJ0bON1VCj7g"> + <styles xmi:type="notation:FontStyle" xmi:id="_O-8-8ZSMEeyJ0bON1VCj7g" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_O-8-8pSMEeyJ0bON1VCj7g"/> + </children> + <children xmi:type="notation:Node" xmi:id="_ZCaEEJSQEeyJ0bON1VCj7g" type="3010" element="_ZCHwMJSQEeyJ0bON1VCj7g"> + <styles xmi:type="notation:FontStyle" xmi:id="_ZCaEEZSQEeyJ0bON1VCj7g" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_ZCaEEpSQEeyJ0bON1VCj7g"/> + </children> + <children xmi:type="notation:Node" xmi:id="_VDezl5SUEeyJ0bON1VCj7g" type="3010" element="_VDHnMJSUEeyJ0bON1VCj7g"> + <styles xmi:type="notation:FontStyle" xmi:id="_VDezmJSUEeyJ0bON1VCj7g" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_VDezmZSUEeyJ0bON1VCj7g"/> + </children> + <children xmi:type="notation:Node" xmi:id="_2GDGMJriEeybDM53IXNodQ" type="3010" element="_2FmaQJriEeybDM53IXNodQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_2GDGMZriEeybDM53IXNodQ" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_2GDGMpriEeybDM53IXNodQ"/> + </children> + <children xmi:type="notation:Node" xmi:id="_NWceIJSOEeyJ0bON1VCj7g" type="3010" element="_NVZ8VpSOEeyJ0bON1VCj7g"> + <styles xmi:type="notation:FontStyle" xmi:id="_NWceIZSOEeyJ0bON1VCj7g" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_NWceIpSOEeyJ0bON1VCj7g"/> + </children> + <children xmi:type="notation:Node" xmi:id="_rkPScJSOEeyJ0bON1VCj7g" type="3010" element="_rjuVG5SOEeyJ0bON1VCj7g"> + <styles xmi:type="notation:FontStyle" xmi:id="_rkPScZSOEeyJ0bON1VCj7g" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_rkPScpSOEeyJ0bON1VCj7g"/> + </children> + <children xmi:type="notation:Node" xmi:id="_zvcj4JSPEeyJ0bON1VCj7g" type="3010" element="_zu2uA5SPEeyJ0bON1VCj7g"> + <styles xmi:type="notation:FontStyle" xmi:id="_zvcj4ZSPEeyJ0bON1VCj7g" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_zvcj4pSPEeyJ0bON1VCj7g"/> + </children> + <styles xmi:type="notation:SortingStyle" xmi:id="_vsRmMpSLEeyJ0bON1VCj7g"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_vsRmM5SLEeyJ0bON1VCj7g"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="_vsQ_KJSLEeyJ0bON1VCj7g" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_vsQ_KZSLEeyJ0bON1VCj7g" x="2208" y="162" width="213" height="243"/> + </children> + <styles xmi:type="notation:DiagramStyle" xmi:id="_FmNkMjx3EeyWNq6fFfWVSw"/> + <edges xmi:type="notation:Edge" xmi:id="_E5KQ8IqXEeyJ0bON1VCj7g" type="4001" element="_E4rIwIqXEeyJ0bON1VCj7g" source="__LdHQIqWEeyJ0bON1VCj7g" target="_KOCgYIqWEeyJ0bON1VCj7g"> + <children xmi:type="notation:Node" xmi:id="_E5x8AIqXEeyJ0bON1VCj7g" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_E5x8AYqXEeyJ0bON1VCj7g" y="-10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_E5yjEIqXEeyJ0bON1VCj7g" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_E5yjEYqXEeyJ0bON1VCj7g" y="10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_E5yjEoqXEeyJ0bON1VCj7g" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_E5yjE4qXEeyJ0bON1VCj7g" y="10"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_E5K4AIqXEeyJ0bON1VCj7g" routing="Tree"/> + <styles xmi:type="notation:FontStyle" xmi:id="_E5K4AYqXEeyJ0bON1VCj7g" fontName="Segoe UI" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_E5K4AoqXEeyJ0bON1VCj7g" points="[0, 0, 0, 46]$[0, -46, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_E50YQIqXEeyJ0bON1VCj7g" id="(0.559322033898305,0.0)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_E50YQYqXEeyJ0bON1VCj7g" id="(0.5,0.5)"/> + </edges> + <edges xmi:type="notation:Edge" xmi:id="_Fc-vsIqXEeyJ0bON1VCj7g" type="4001" element="_FcdLRoqXEeyJ0bON1VCj7g" source="_KOCgYIqWEeyJ0bON1VCj7g" target="_xTXLgIqVEeyJ0bON1VCj7g"> + <children xmi:type="notation:Node" xmi:id="_Fc-vtIqXEeyJ0bON1VCj7g" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Fc-vtYqXEeyJ0bON1VCj7g" y="-10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_Fc-vtoqXEeyJ0bON1VCj7g" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Fc-vt4qXEeyJ0bON1VCj7g" y="10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_Fc-vuIqXEeyJ0bON1VCj7g" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Fc-vuYqXEeyJ0bON1VCj7g" y="10"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_Fc-vsYqXEeyJ0bON1VCj7g" routing="Tree"/> + <styles xmi:type="notation:FontStyle" xmi:id="_Fc-vsoqXEeyJ0bON1VCj7g" fontName="Segoe UI" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Fc-vs4qXEeyJ0bON1VCj7g" points="[0, 0, 20, 59]$[-20, -59, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Fc_WwIqXEeyJ0bON1VCj7g" id="(0.6101694915254238,0.0)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Fc_WwYqXEeyJ0bON1VCj7g" id="(0.5,0.5)"/> + </edges> + <edges xmi:type="notation:Edge" xmi:id="_QMIaAIqXEeyJ0bON1VCj7g" type="4001" element="_QLpR1oqXEeyJ0bON1VCj7g" source="_J70SgIqXEeyJ0bON1VCj7g" target="_KOCgYIqWEeyJ0bON1VCj7g"> + <children xmi:type="notation:Node" xmi:id="_QMIaBIqXEeyJ0bON1VCj7g" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QMIaBYqXEeyJ0bON1VCj7g" y="-10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_QMIaBoqXEeyJ0bON1VCj7g" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QMIaB4qXEeyJ0bON1VCj7g" y="10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_QMIaCIqXEeyJ0bON1VCj7g" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QMIaCYqXEeyJ0bON1VCj7g" y="10"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_QMIaAYqXEeyJ0bON1VCj7g" routing="Tree"/> + <styles xmi:type="notation:FontStyle" xmi:id="_QMIaAoqXEeyJ0bON1VCj7g" fontName="Segoe UI" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_QMIaA4qXEeyJ0bON1VCj7g" points="[0, 0, 43, 132]$[-43, -132, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_QMJBEIqXEeyJ0bON1VCj7g" id="(0.5,0.0)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_QMJBEYqXEeyJ0bON1VCj7g" id="(0.5,0.5)"/> + </edges> + <edges xmi:type="notation:Edge" xmi:id="_9dNAQIqXEeyJ0bON1VCj7g" type="4001" element="_9cvGPIqXEeyJ0bON1VCj7g" source="_aiph4IqXEeyJ0bON1VCj7g" target="_xTXLgIqVEeyJ0bON1VCj7g"> + <children xmi:type="notation:Node" xmi:id="_9dNnUIqXEeyJ0bON1VCj7g" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9dNnUYqXEeyJ0bON1VCj7g" y="-10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_9dNnUoqXEeyJ0bON1VCj7g" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9dNnU4qXEeyJ0bON1VCj7g" y="10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_9dNnVIqXEeyJ0bON1VCj7g" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9dNnVYqXEeyJ0bON1VCj7g" y="10"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_9dNAQYqXEeyJ0bON1VCj7g" routing="Tree"/> + <styles xmi:type="notation:FontStyle" xmi:id="_9dNAQoqXEeyJ0bON1VCj7g" fontName="Segoe UI" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_9dNAQ4qXEeyJ0bON1VCj7g" points="[0, 0, 173, 168]$[-173, -168, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_9dNnVoqXEeyJ0bON1VCj7g" id="(0.5492957746478874,0.0)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_9dNnV4qXEeyJ0bON1VCj7g" id="(0.5,0.5)"/> + </edges> + <edges xmi:type="notation:Edge" xmi:id="_cZc2AIqYEeyJ0bON1VCj7g" type="4001" element="_cZJ7FoqYEeyJ0bON1VCj7g" source="__jFHoIqXEeyJ0bON1VCj7g" target="_aiph4IqXEeyJ0bON1VCj7g"> + <children xmi:type="notation:Node" xmi:id="_cZddEIqYEeyJ0bON1VCj7g" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cZddEYqYEeyJ0bON1VCj7g" y="-10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_cZddEoqYEeyJ0bON1VCj7g" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cZddE4qYEeyJ0bON1VCj7g" y="10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_cZddFIqYEeyJ0bON1VCj7g" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cZddFYqYEeyJ0bON1VCj7g" y="10"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_cZc2AYqYEeyJ0bON1VCj7g" routing="Tree"/> + <styles xmi:type="notation:FontStyle" xmi:id="_cZc2AoqYEeyJ0bON1VCj7g" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_cZc2A4qYEeyJ0bON1VCj7g" points="[0, 0, -75, 70]$[75, -70, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_cZddFoqYEeyJ0bON1VCj7g" id="(0.5,0.0)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_cZddF4qYEeyJ0bON1VCj7g" id="(0.5,0.5)"/> + </edges> + <edges xmi:type="notation:Edge" xmi:id="_c2QGwIqYEeyJ0bON1VCj7g" type="4001" element="_c1wXgIqYEeyJ0bON1VCj7g" source="_BT_EkIqYEeyJ0bON1VCj7g" target="_aiph4IqXEeyJ0bON1VCj7g"> + <children xmi:type="notation:Node" xmi:id="_c2QGxIqYEeyJ0bON1VCj7g" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_c2QGxYqYEeyJ0bON1VCj7g" y="-10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_c2Qt0IqYEeyJ0bON1VCj7g" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_c2Qt0YqYEeyJ0bON1VCj7g" y="10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_c2Qt0oqYEeyJ0bON1VCj7g" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_c2Qt04qYEeyJ0bON1VCj7g" y="10"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_c2QGwYqYEeyJ0bON1VCj7g" routing="Tree"/> + <styles xmi:type="notation:FontStyle" xmi:id="_c2QGwoqYEeyJ0bON1VCj7g" fontName="Segoe UI" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_c2QGw4qYEeyJ0bON1VCj7g" points="[0, 0, 97, 76]$[-97, -76, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_c2Qt1IqYEeyJ0bON1VCj7g" id="(0.4748201438848921,0.0)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_c2Qt1YqYEeyJ0bON1VCj7g" id="(0.5,0.5)"/> + </edges> + <edges xmi:type="notation:Edge" xmi:id="_E-UL0IqZEeyJ0bON1VCj7g" type="4001" element="_E9zOfIqZEeyJ0bON1VCj7g" source="_5_rUAIqYEeyJ0bON1VCj7g" target="_aiph4IqXEeyJ0bON1VCj7g"> + <children xmi:type="notation:Node" xmi:id="_E-UL1IqZEeyJ0bON1VCj7g" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_E-UL1YqZEeyJ0bON1VCj7g" y="-10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_E-UL1oqZEeyJ0bON1VCj7g" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_E-UL14qZEeyJ0bON1VCj7g" y="10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_E-UL2IqZEeyJ0bON1VCj7g" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_E-UL2YqZEeyJ0bON1VCj7g" y="10"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_E-UL0YqZEeyJ0bON1VCj7g" routing="Tree"/> + <styles xmi:type="notation:FontStyle" xmi:id="_E-UL0oqZEeyJ0bON1VCj7g" fontName="Segoe UI" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_E-UL04qZEeyJ0bON1VCj7g" points="[0, 0, -66, 76]$[66, -76, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_E-Uy4IqZEeyJ0bON1VCj7g" id="(0.6101694915254238,0.0)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_E-Uy4YqZEeyJ0bON1VCj7g" id="(0.5,0.5)"/> + </edges> + <edges xmi:type="notation:Edge" xmi:id="_MgQTQIqZEeyJ0bON1VCj7g" type="4001" element="_MfznYoqZEeyJ0bON1VCj7g" source="_F9H9cIqZEeyJ0bON1VCj7g" target="_aiph4IqXEeyJ0bON1VCj7g"> + <children xmi:type="notation:Node" xmi:id="_MgQTRIqZEeyJ0bON1VCj7g" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MgQTRYqZEeyJ0bON1VCj7g" y="-10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_MgQTRoqZEeyJ0bON1VCj7g" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MgQTR4qZEeyJ0bON1VCj7g" y="10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_MgQTSIqZEeyJ0bON1VCj7g" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MgQTSYqZEeyJ0bON1VCj7g" y="10"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_MgQTQYqZEeyJ0bON1VCj7g" routing="Tree"/> + <styles xmi:type="notation:FontStyle" xmi:id="_MgQTQoqZEeyJ0bON1VCj7g" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_MgQTQ4qZEeyJ0bON1VCj7g" points="[0, 0, 332, 132]$[-332, -132, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_MgQTSoqZEeyJ0bON1VCj7g" id="(0.35294117647058826,0.0)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_MgQTS4qZEeyJ0bON1VCj7g" id="(0.5,0.5)"/> + </edges> + <edges xmi:type="notation:Edge" xmi:id="_dozvoIqZEeyJ0bON1VCj7g" type="4001" element="_dodxd4qZEeyJ0bON1VCj7g" source="_ZNRYcIqZEeyJ0bON1VCj7g" target="_KOCgYIqWEeyJ0bON1VCj7g"> + <children xmi:type="notation:Node" xmi:id="_dozvpIqZEeyJ0bON1VCj7g" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dozvpYqZEeyJ0bON1VCj7g" y="-10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_dozvpoqZEeyJ0bON1VCj7g" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dozvp4qZEeyJ0bON1VCj7g" y="10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_dozvqIqZEeyJ0bON1VCj7g" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dozvqYqZEeyJ0bON1VCj7g" y="10"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_dozvoYqZEeyJ0bON1VCj7g" routing="Tree"/> + <styles xmi:type="notation:FontStyle" xmi:id="_dozvooqZEeyJ0bON1VCj7g" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_dozvo4qZEeyJ0bON1VCj7g" points="[0, 0, 50, 162]$[-50, -162, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dozvqoqZEeyJ0bON1VCj7g" id="(0.4186046511627907,0.0)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dozvq4qZEeyJ0bON1VCj7g" id="(0.5,0.5)"/> + </edges> + </data> + </ownedAnnotationEntries> + <ownedAnnotationEntries xmi:type="description:AnnotationEntry" uid="_FmPZYDx3EeyWNq6fFfWVSw" source="DANNOTATION_CUSTOMIZATION_KEY"> + <data xmi:type="diagram:ComputedStyleDescriptionRegistry" uid="_FmPZYTx3EeyWNq6fFfWVSw"> + <computedStyleDescriptions xmi:type="style:BundledImageDescription" xmi:id="_mTLMAD8cEeyWNq6fFfWVSw" labelExpression="service:renderAsNode" labelAlignment="LEFT" tooltipExpression="service:renderTooltip" sizeComputationExpression="1"> + <borderColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/> + <labelFormat>bold</labelFormat> + <labelColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/> + <color xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='blue']"/> + </computedStyleDescriptions> + <computedStyleDescriptions xmi:type="style:BundledImageDescription" xmi:id="_eDHIZJSREeyJ0bON1VCj7g" labelExpression="service:render" labelAlignment="LEFT" tooltipExpression="service:renderTooltip" sizeComputationExpression="1"> + <borderColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/> + <labelFormat>bold</labelFormat> + <labelColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/> + <color xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/> + </computedStyleDescriptions> + </data> + </ownedAnnotationEntries> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_GE5EQDx3EeyWNq6fFfWVSw" name="TrackingRequest" tooltipText="" width="12" height="10"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/TrackingRequest"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/TrackingRequest"/> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_GE5rUDx3EeyWNq6fFfWVSw" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_GE5rUjx3EeyWNq6fFfWVSw" name="MonitoringRequest" tooltipText="" width="12" height="10"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/MonitoringRequest"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/MonitoringRequest"/> + <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> + <arrangeConstraints>KEEP_SIZE</arrangeConstraints> + <arrangeConstraints>KEEP_RATIO</arrangeConstraints> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_w4NVA1daEeyyocYQuYPGPQ" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_GFAZAjx3EeyWNq6fFfWVSw" name="frameIds : StringList" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/MonitoringRequest/frameIds"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/MonitoringRequest/frameIds"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_GFAZAzx3EeyWNq6fFfWVSw" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_GFBAEDx3EeyWNq6fFfWVSw" name="delta : Float = 0.0" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/MonitoringRequest/delta"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/MonitoringRequest/delta"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_GFBAETx3EeyWNq6fFfWVSw" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_GFBAEjx3EeyWNq6fFfWVSw" name="updateFrequency : Float = 0.0" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/MonitoringRequest/updateFrequency"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/MonitoringRequest/updateFrequency"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_GFBnIDx3EeyWNq6fFfWVSw" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_GFBnITx3EeyWNq6fFfWVSw" name="type : StringList" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/MonitoringRequest/type"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/MonitoringRequest/type"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_GFBnIjx3EeyWNq6fFfWVSw" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_GFBnIzx3EeyWNq6fFfWVSw" name="id : StringList" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/MonitoringRequest/id"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/MonitoringRequest/id"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_GFCOMDx3EeyWNq6fFfWVSw" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_GFCOMTx3EeyWNq6fFfWVSw" name="fusionStrategy : String" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/MonitoringRequest/fusionStrategy"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/MonitoringRequest/fusionStrategy"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_GFCOMjx3EeyWNq6fFfWVSw" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_GFCOMzx3EeyWNq6fFfWVSw" name="exitNotification : Boolean = false" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/MonitoringRequest/exitNotification"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/MonitoringRequest/exitNotification"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_GFCONDx3EeyWNq6fFfWVSw" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_GFC1QDx3EeyWNq6fFfWVSw" name="properties : StringList" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/MonitoringRequest/properties"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/MonitoringRequest/properties"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_GFC1QTx3EeyWNq6fFfWVSw" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_GFC1Qjx3EeyWNq6fFfWVSw" name="monitoringTaskId : String" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/MonitoringRequest/monitoringTaskId"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/MonitoringRequest/monitoringTaskId"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_GFC1Qzx3EeyWNq6fFfWVSw" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_GFC1RDx3EeyWNq6fFfWVSw" name="requestorProtocol : String" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/MonitoringRequest/requestorProtocol"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/MonitoringRequest/requestorProtocol"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_GFDcUDx3EeyWNq6fFfWVSw" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_GFDcUTx3EeyWNq6fFfWVSw" name="serializationType : String" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/MonitoringRequest/serializationType"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/MonitoringRequest/serializationType"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_GFDcUjx3EeyWNq6fFfWVSw" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_uiokwFdaEeyyocYQuYPGPQ" name="refSystemId : String" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/MonitoringRequest/refSystemId"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/MonitoringRequest/refSystemId"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_w4PKN1daEeyyocYQuYPGPQ" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_GE6SYjx3EeyWNq6fFfWVSw" name="WorldModelUpdateRequest" tooltipText="" width="12" height="10"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/WorldModelUpdateRequest"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/WorldModelUpdateRequest"/> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_GE65cDx3EeyWNq6fFfWVSw" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_GE65cjx3EeyWNq6fFfWVSw" name="DataStorageRequest" tooltipText="" width="12" height="10"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/DataStorageRequest"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/DataStorageRequest"/> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_GE65czx3EeyWNq6fFfWVSw" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_GE7ggDx3EeyWNq6fFfWVSw" name="WorldModelQueryRequest" tooltipText="" width="12" height="10"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/WorldModelQueryRequest"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/WorldModelQueryRequest"/> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_GE7ggTx3EeyWNq6fFfWVSw" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_GE8HkDx3EeyWNq6fFfWVSw" name="DataStorageQueryRequest" tooltipText="" width="12" height="10"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/DataStorageQueryRequest"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/DataStorageQueryRequest"/> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_GE8HkTx3EeyWNq6fFfWVSw" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_GFDcUzx3EeyWNq6fFfWVSw" name="trackingTaskId : String" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/DataStorageQueryRequest/trackingTaskId"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/DataStorageQueryRequest/trackingTaskId"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_GFEDYDx3EeyWNq6fFfWVSw" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_GE8uoDx3EeyWNq6fFfWVSw" name="AgentRegistrationRequest" tooltipText="" width="12" height="10"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/AgentRegistrationRequest"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/AgentRegistrationRequest"/> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_GE8uoTx3EeyWNq6fFfWVSw" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_GE8uozx3EeyWNq6fFfWVSw" name="SensorConfigurationRequest" tooltipText="" width="12" height="10"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/SensorConfigurationRequest"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/SensorConfigurationRequest"/> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_GE8upDx3EeyWNq6fFfWVSw" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_TTCYYD8bEeyWNq6fFfWVSw" name="IposPositionEvent" tooltipText="" width="12" height="10"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/IposPositionEvent"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/IposPositionEvent"/> + <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> + <arrangeConstraints>KEEP_SIZE</arrangeConstraints> + <arrangeConstraints>KEEP_RATIO</arrangeConstraints> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_KV8sMD8cEeyWNq6fFfWVSw" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_1F_VgD8bEeyWNq6fFfWVSw" name="agentId : String" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/IposPositionEvent/agentId"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/IposPositionEvent/agentId"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_HwByzz8cEeyWNq6fFfWVSw" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="__83_gD8bEeyWNq6fFfWVSw" name="sensorId : String" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/IposPositionEvent/sensorId"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/IposPositionEvent/sensorId"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_IZCTmz8cEeyWNq6fFfWVSw" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_BIooAD8cEeyWNq6fFfWVSw" name="type : String" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/IposPositionEvent/type"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/IposPositionEvent/type"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_JH5kpT8cEeyWNq6fFfWVSw" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_B52CgD8cEeyWNq6fFfWVSw" name="sensorType : String" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/IposPositionEvent/sensorType"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/IposPositionEvent/sensorType"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_JsF22T8cEeyWNq6fFfWVSw" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_E8oeED8cEeyWNq6fFfWVSw" name="lastPosUpdate : String" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/IposPositionEvent/lastPosUpdate"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/IposPositionEvent/lastPosUpdate"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_KV9TOj8cEeyWNq6fFfWVSw" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_wS9g1pSNEeyJ0bON1VCj7g" name=" position : Position" tooltipText=""> + <target xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//IPosDevKit/IposPositionEvent/position"/> + <semanticElements xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//IPosDevKit/IposPositionEvent/position"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_wS9g15SNEeyJ0bON1VCj7g" labelAlignment="LEFT" description="_mTLMAD8cEeyWNq6fFfWVSw" color="114,159,207"> + <labelFormat>bold</labelFormat> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EReferenceNode']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_mTLzED8cEeyWNq6fFfWVSw" name=" orientation : Orientation" tooltipText=""> + <target xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//IPosDevKit/IposPositionEvent/orientation"/> + <semanticElements xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//IPosDevKit/IposPositionEvent/orientation"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_mTLzET8cEeyWNq6fFfWVSw" labelAlignment="LEFT" description="_mTLMAD8cEeyWNq6fFfWVSw" color="114,159,207"> + <labelFormat>bold</labelFormat> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EReferenceNode']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_mTLzEj8cEeyWNq6fFfWVSw" name=" zoneDescriptors : ZoneDescriptor" tooltipText=""> + <target xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//IPosDevKit/IposPositionEvent/zoneDescriptors"/> + <semanticElements xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//IPosDevKit/IposPositionEvent/zoneDescriptors"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_mTMaID8cEeyWNq6fFfWVSw" labelAlignment="LEFT" color="114,159,207"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EReferenceNode']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EReferenceNode']"/> + </ownedElements> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_xRC3UIqVEeyJ0bON1VCj7g" name="IPosRawdataEvent" tooltipText="" incomingEdges="_FcdLRoqXEeyJ0bON1VCj7g _9cvGPIqXEeyJ0bON1VCj7g" width="12" height="10"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/IPosRawdataEvent"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/IPosRawdataEvent"/> + <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> + <arrangeConstraints>KEEP_SIZE</arrangeConstraints> + <arrangeConstraints>KEEP_RATIO</arrangeConstraints> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_CsJ79YqZEeyJ0bON1VCj7g" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_40Ys8IqVEeyJ0bON1VCj7g" name="agentId : EString" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/IPosRawdataEvent/agentId"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/IPosRawdataEvent/agentId"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_E-13qYqWEeyJ0bON1VCj7g" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_6cONcIqVEeyJ0bON1VCj7g" name="sensorId : EString" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/IPosRawdataEvent/sensorId"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/IPosRawdataEvent/sensorId"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_FyIVxIqWEeyJ0bON1VCj7g" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_8y-CYIqVEeyJ0bON1VCj7g" name="agentType : EString" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/IPosRawdataEvent/agentType"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/IPosRawdataEvent/agentType"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_GsDnZIqWEeyJ0bON1VCj7g" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_-aCt4IqVEeyJ0bON1VCj7g" name="sensorType : EString" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/IPosRawdataEvent/sensorType"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/IPosRawdataEvent/sensorType"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_CsLKEYqZEeyJ0bON1VCj7g" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_Pok2cIqWEeyJ0bON1VCj7g" name="timeStamp : EString" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/IPosRawdataEvent/timeStamp"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/IPosRawdataEvent/timeStamp"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_SI6FOIqWEeyJ0bON1VCj7g" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_KNvlcIqWEeyJ0bON1VCj7g" name="IPosBeaconEvent" tooltipText="" outgoingEdges="_FcdLRoqXEeyJ0bON1VCj7g" incomingEdges="_E4rIwIqXEeyJ0bON1VCj7g _QLpR1oqXEeyJ0bON1VCj7g _dodxd4qZEeyJ0bON1VCj7g" width="12" height="10"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/IPosBeaconEvent"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/IPosBeaconEvent"/> + <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> + <arrangeConstraints>KEEP_SIZE</arrangeConstraints> + <arrangeConstraints>KEEP_RATIO</arrangeConstraints> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_9hBlz4qWEeyJ0bON1VCj7g" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_YtZs8IqWEeyJ0bON1VCj7g" name="distances : EMap" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/IPosBeaconEvent/distances"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/IPosBeaconEvent/distances"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_9hECBIqWEeyJ0bON1VCj7g" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="__LN2sIqWEeyJ0bON1VCj7g" name="IPosUWBEvent" tooltipText="" outgoingEdges="_E4rIwIqXEeyJ0bON1VCj7g" width="12" height="10"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/IPosUWBEvent"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/IPosUWBEvent"/> + <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> + <arrangeConstraints>KEEP_SIZE</arrangeConstraints> + <arrangeConstraints>KEEP_RATIO</arrangeConstraints> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="__LOdwIqWEeyJ0bON1VCj7g" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_E4rIwIqXEeyJ0bON1VCj7g" sourceNode="__LN2sIqWEeyJ0bON1VCj7g" targetNode="_KNvlcIqWEeyJ0bON1VCj7g"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/IPosUWBEvent"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/IPosUWBEvent"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_E4rv0IqXEeyJ0bON1VCj7g" targetArrow="InputClosedArrow" routingStyle="tree"> + <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/> + <beginLabelStyle xmi:type="diagram:BeginLabelStyle" uid="_E4rv0YqXEeyJ0bON1VCj7g" showIcon="false"> + <labelFormat>italic</labelFormat> + </beginLabelStyle> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_E4rv0oqXEeyJ0bON1VCj7g" showIcon="false"/> + </ownedStyle> + <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_FcdLRoqXEeyJ0bON1VCj7g" sourceNode="_KNvlcIqWEeyJ0bON1VCj7g" targetNode="_xRC3UIqVEeyJ0bON1VCj7g"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/IPosBeaconEvent"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/IPosBeaconEvent"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_FcdyUIqXEeyJ0bON1VCj7g" targetArrow="InputClosedArrow" routingStyle="tree"> + <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/> + <beginLabelStyle xmi:type="diagram:BeginLabelStyle" uid="_FcdyUYqXEeyJ0bON1VCj7g" showIcon="false"> + <labelFormat>italic</labelFormat> + </beginLabelStyle> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_FcdyUoqXEeyJ0bON1VCj7g" showIcon="false"/> + </ownedStyle> + <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_J7lB8IqXEeyJ0bON1VCj7g" name="IPosBTEvent" tooltipText="" outgoingEdges="_QLpR1oqXEeyJ0bON1VCj7g" width="12" height="10"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/IPosBTEvent"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/IPosBTEvent"/> + <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> + <arrangeConstraints>KEEP_SIZE</arrangeConstraints> + <arrangeConstraints>KEEP_RATIO</arrangeConstraints> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_skdFGYqYEeyJ0bON1VCj7g" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_Xh8xAIqXEeyJ0bON1VCj7g" name="rss : EMap" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/IPosBTEvent/rss"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/IPosBTEvent/rss"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_ske6N4qYEeyJ0bON1VCj7g" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_QLpR1oqXEeyJ0bON1VCj7g" sourceNode="_J7lB8IqXEeyJ0bON1VCj7g" targetNode="_KNvlcIqWEeyJ0bON1VCj7g"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/IPosBTEvent"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/IPosBTEvent"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_skgIU4qYEeyJ0bON1VCj7g" targetArrow="InputClosedArrow" routingStyle="tree"> + <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/> + <beginLabelStyle xmi:type="diagram:BeginLabelStyle" uid="_skgIVIqYEeyJ0bON1VCj7g" showIcon="false"> + <labelFormat>italic</labelFormat> + </beginLabelStyle> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_skgIVYqYEeyJ0bON1VCj7g" showIcon="false"/> + </ownedStyle> + <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_aibfcIqXEeyJ0bON1VCj7g" name="IPosProximityEvent" tooltipText="" outgoingEdges="_9cvGPIqXEeyJ0bON1VCj7g" incomingEdges="_cZJ7FoqYEeyJ0bON1VCj7g _c1wXgIqYEeyJ0bON1VCj7g _E9zOfIqZEeyJ0bON1VCj7g _MfznYoqZEeyJ0bON1VCj7g" width="12" height="10"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/IPosProximityEvent"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/IPosProximityEvent"/> + <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> + <arrangeConstraints>KEEP_SIZE</arrangeConstraints> + <arrangeConstraints>KEEP_RATIO</arrangeConstraints> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_huQNA4qXEeyJ0bON1VCj7g" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_gvKugIqXEeyJ0bON1VCj7g" name="tagId : EString" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/IPosProximityEvent/tagId"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/IPosProximityEvent/tagId"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_huQ0EYqXEeyJ0bON1VCj7g" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_9cvGPIqXEeyJ0bON1VCj7g" sourceNode="_aibfcIqXEeyJ0bON1VCj7g" targetNode="_xRC3UIqVEeyJ0bON1VCj7g"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/IPosProximityEvent"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/IPosProximityEvent"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_9cvGPYqXEeyJ0bON1VCj7g" targetArrow="InputClosedArrow" routingStyle="tree"> + <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/> + <beginLabelStyle xmi:type="diagram:BeginLabelStyle" uid="_9cvGPoqXEeyJ0bON1VCj7g" showIcon="false"> + <labelFormat>italic</labelFormat> + </beginLabelStyle> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_9cvGP4qXEeyJ0bON1VCj7g" showIcon="false"/> + </ownedStyle> + <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="__i1QAIqXEeyJ0bON1VCj7g" name="IPosNFCEvent" tooltipText="" outgoingEdges="_cZJ7FoqYEeyJ0bON1VCj7g" width="12" height="10"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/IPosNFCEvent"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/IPosNFCEvent"/> + <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> + <arrangeConstraints>KEEP_SIZE</arrangeConstraints> + <arrangeConstraints>KEEP_RATIO</arrangeConstraints> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_te4tDYqYEeyJ0bON1VCj7g" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_YDIWAIqYEeyJ0bON1VCj7g" name="tagData : EMap" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/IPosNFCEvent/tagData"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/IPosNFCEvent/tagData"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_te57E4qYEeyJ0bON1VCj7g" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_BTvM8IqYEeyJ0bON1VCj7g" name="IPosBarcodeEvent" tooltipText="" outgoingEdges="_c1wXgIqYEeyJ0bON1VCj7g" width="12" height="10"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/IPosBarcodeEvent"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/IPosBarcodeEvent"/> + <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> + <arrangeConstraints>KEEP_SIZE</arrangeConstraints> + <arrangeConstraints>KEEP_RATIO</arrangeConstraints> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_BTv0AIqYEeyJ0bON1VCj7g" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_cZJ7FoqYEeyJ0bON1VCj7g" sourceNode="__i1QAIqXEeyJ0bON1VCj7g" targetNode="_aibfcIqXEeyJ0bON1VCj7g"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/IPosNFCEvent"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/IPosNFCEvent"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_te6iMoqYEeyJ0bON1VCj7g" targetArrow="InputClosedArrow" routingStyle="tree"> + <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/> + <beginLabelStyle xmi:type="diagram:BeginLabelStyle" uid="_te6iM4qYEeyJ0bON1VCj7g" showIcon="false"> + <labelFormat>italic</labelFormat> + </beginLabelStyle> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_te6iNIqYEeyJ0bON1VCj7g" showIcon="false"/> + </ownedStyle> + <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_c1wXgIqYEeyJ0bON1VCj7g" sourceNode="_BTvM8IqYEeyJ0bON1VCj7g" targetNode="_aibfcIqXEeyJ0bON1VCj7g"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/IPosBarcodeEvent"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/IPosBarcodeEvent"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_c1wXgYqYEeyJ0bON1VCj7g" targetArrow="InputClosedArrow" routingStyle="tree"> + <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/> + <beginLabelStyle xmi:type="diagram:BeginLabelStyle" uid="_c1wXgoqYEeyJ0bON1VCj7g" showIcon="false"> + <labelFormat>italic</labelFormat> + </beginLabelStyle> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_c1wXg4qYEeyJ0bON1VCj7g" showIcon="false"/> + </ownedStyle> + <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_5_cqgIqYEeyJ0bON1VCj7g" name="IPosRFIDEvent" tooltipText="" outgoingEdges="_E9zOfIqZEeyJ0bON1VCj7g" width="12" height="10"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/IPosRFIDEvent"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/IPosRFIDEvent"/> + <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> + <arrangeConstraints>KEEP_SIZE</arrangeConstraints> + <arrangeConstraints>KEEP_RATIO</arrangeConstraints> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_-gd-pYqYEeyJ0bON1VCj7g" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_9Cm5gIqYEeyJ0bON1VCj7g" name="location : EString" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/IPosRFIDEvent/location"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/IPosRFIDEvent/location"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_-gelvYqYEeyJ0bON1VCj7g" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_E9zOfIqZEeyJ0bON1VCj7g" sourceNode="_5_cqgIqYEeyJ0bON1VCj7g" targetNode="_aibfcIqXEeyJ0bON1VCj7g"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/IPosRFIDEvent"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/IPosRFIDEvent"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_E9z1gIqZEeyJ0bON1VCj7g" targetArrow="InputClosedArrow" routingStyle="tree"> + <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/> + <beginLabelStyle xmi:type="diagram:BeginLabelStyle" uid="_E9z1gYqZEeyJ0bON1VCj7g" showIcon="false"> + <labelFormat>italic</labelFormat> + </beginLabelStyle> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_E9z1goqZEeyJ0bON1VCj7g" showIcon="false"/> + </ownedStyle> + <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_F86iEIqZEeyJ0bON1VCj7g" name="IPosOtherProxEvent" tooltipText="" outgoingEdges="_MfznYoqZEeyJ0bON1VCj7g" width="12" height="10"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/IPosOtherProxEvent"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/IPosOtherProxEvent"/> + <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> + <arrangeConstraints>KEEP_SIZE</arrangeConstraints> + <arrangeConstraints>KEEP_RATIO</arrangeConstraints> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_N_AJUoqZEeyJ0bON1VCj7g" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_LBdaAIqZEeyJ0bON1VCj7g" name="data : EMap" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/IPosOtherProxEvent/data"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/IPosOtherProxEvent/data"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_N_B-YoqZEeyJ0bON1VCj7g" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_MfznYoqZEeyJ0bON1VCj7g" sourceNode="_F86iEIqZEeyJ0bON1VCj7g" targetNode="_aibfcIqXEeyJ0bON1VCj7g"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/IPosOtherProxEvent"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/IPosOtherProxEvent"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_N_ClmoqZEeyJ0bON1VCj7g" targetArrow="InputClosedArrow" routingStyle="tree"> + <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/> + <beginLabelStyle xmi:type="diagram:BeginLabelStyle" uid="_N_Clm4qZEeyJ0bON1VCj7g" showIcon="false"> + <labelFormat>italic</labelFormat> + </beginLabelStyle> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_N_ClnIqZEeyJ0bON1VCj7g" showIcon="false"/> + </ownedStyle> + <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_ZNDWAIqZEeyJ0bON1VCj7g" name="IPosOtherBeaconEvent" tooltipText="" outgoingEdges="_dodxd4qZEeyJ0bON1VCj7g" width="12" height="10"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/IPosOtherBeaconEvent"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/IPosOtherBeaconEvent"/> + <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> + <arrangeConstraints>KEEP_SIZE</arrangeConstraints> + <arrangeConstraints>KEEP_RATIO</arrangeConstraints> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_efT564qZEeyJ0bON1VCj7g" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_b8_HAIqZEeyJ0bON1VCj7g" name="data : EMap" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/IPosOtherBeaconEvent/data"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/IPosOtherBeaconEvent/data"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_efVvB4qZEeyJ0bON1VCj7g" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_dodxd4qZEeyJ0bON1VCj7g" sourceNode="_ZNDWAIqZEeyJ0bON1VCj7g" targetNode="_KNvlcIqWEeyJ0bON1VCj7g"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/IPosOtherBeaconEvent"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/IPosOtherBeaconEvent"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_efW9OIqZEeyJ0bON1VCj7g" targetArrow="InputClosedArrow" routingStyle="tree"> + <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/> + <beginLabelStyle xmi:type="diagram:BeginLabelStyle" uid="_efW9OYqZEeyJ0bON1VCj7g" showIcon="false"> + <labelFormat>italic</labelFormat> + </beginLabelStyle> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_efW9OoqZEeyJ0bON1VCj7g" showIcon="false"/> + </ownedStyle> + <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_vsCVoJSLEeyJ0bON1VCj7g" name="IposMsgRcvEvent" tooltipText="" width="12" height="10"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/IposMsgRcvEvent"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//IPosDevKit/IposMsgRcvEvent"/> + <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> + <arrangeConstraints>KEEP_SIZE</arrangeConstraints> + <arrangeConstraints>KEEP_RATIO</arrangeConstraints> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_y4b88p_TEeyjYoAVD5IwbQ" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_1WHjkJSLEeyJ0bON1VCj7g" name="protocolName : EString" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/IposMsgRcvEvent/protocolName"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/IposMsgRcvEvent/protocolName"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_fzbPdZSREeyJ0bON1VCj7g" labelAlignment="LEFT" description="_eDHIZJSREeyJ0bON1VCj7g"> + <labelFormat>bold</labelFormat> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_4_zAAJSLEeyJ0bON1VCj7g" name="serializedMsg : ByteArray" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/IposMsgRcvEvent/serializedMsg"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/IposMsgRcvEvent/serializedMsg"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_6rcpkZSLEeyJ0bON1VCj7g" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_O-qrEJSMEeyJ0bON1VCj7g" name="lastPosUpdate : EString" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/IposMsgRcvEvent/lastPosUpdate"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/IposMsgRcvEvent/lastPosUpdate"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_SbNDZJSMEeyJ0bON1VCj7g" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_ZCHwMJSQEeyJ0bON1VCj7g" name="agentId : EString" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/IposMsgRcvEvent/agentId"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/IposMsgRcvEvent/agentId"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_eDHIZpSREeyJ0bON1VCj7g" labelAlignment="LEFT" description="_eDHIZJSREeyJ0bON1VCj7g"> + <labelFormat>bold</labelFormat> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_VDHnMJSUEeyJ0bON1VCj7g" name="extractedAttributes : ListOfStringMaps" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/IposMsgRcvEvent/extractedAttributes"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/IposMsgRcvEvent/extractedAttributes"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_hgtcJJotEeybDM53IXNodQ" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_2FmaQJriEeybDM53IXNodQ" name="timestamp : EString" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/IposMsgRcvEvent/timestamp"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//IPosDevKit/IposMsgRcvEvent/timestamp"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_3eQ2WZriEeybDM53IXNodQ" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_NVZ8VpSOEeyJ0bON1VCj7g" name=" lastKnownPosition : Position" tooltipText=""> + <target xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//IPosDevKit/IposMsgRcvEvent/lastKnownPosition"/> + <semanticElements xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//IPosDevKit/IposMsgRcvEvent/lastKnownPosition"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_NVZ8V5SOEeyJ0bON1VCj7g" labelAlignment="LEFT" color="114,159,207"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EReferenceNode']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EReferenceNode']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_rjuVG5SOEeyJ0bON1VCj7g" name=" lastKnownOrientation : Orientation" tooltipText=""> + <target xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//IPosDevKit/IposMsgRcvEvent/lastKnownOrientation"/> + <semanticElements xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//IPosDevKit/IposMsgRcvEvent/lastKnownOrientation"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_rju8IJSOEeyJ0bON1VCj7g" labelAlignment="LEFT" color="114,159,207"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EReferenceNode']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EReferenceNode']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_zu2uA5SPEeyJ0bON1VCj7g" name=" lastKnownZonedescriptors : ZoneDescriptor" tooltipText=""> + <target xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//IPosDevKit/IposMsgRcvEvent/lastKnownZonedescriptors"/> + <semanticElements xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//IPosDevKit/IposMsgRcvEvent/lastKnownZonedescriptors"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_zu2uBJSPEeyJ0bON1VCj7g" labelAlignment="LEFT" color="114,159,207"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EReferenceNode']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EReferenceNode']"/> + </ownedElements> + </ownedDiagramElements> + <description xmi:type="description_1:DiagramDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']"/> + <filterVariableHistory xmi:type="diagram:FilterVariableHistory" uid="_FmMWEDx3EeyWNq6fFfWVSw"/> + <activatedLayers xmi:type="description_1:Layer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer"/> + <activatedLayers xmi:type="description_1:AdditionalLayer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@additionalLayers[name='Package']"/> + <activatedLayers xmi:type="description_1:AdditionalLayer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@additionalLayers[name='Validation']"/> + <target xmi:type="ecore:EPackage" href="iPos_Datamodel.ecore#//IPosDevKit"/> + </diagram:DSemanticDiagram> + <diagram:DSemanticDiagram uid="_27T88IsNEeyJ0bON1VCj7g"> + <ownedAnnotationEntries xmi:type="description:AnnotationEntry" uid="_28wHYIsNEeyJ0bON1VCj7g" source="GMF_DIAGRAMS"> + <data xmi:type="notation:Diagram" xmi:id="_28wHYYsNEeyJ0bON1VCj7g" type="Sirius" element="_27T88IsNEeyJ0bON1VCj7g" measurementUnit="Pixel"> + <children xmi:type="notation:Node" xmi:id="_AmeasIsOEeyJ0bON1VCj7g" type="2003" element="_Al-rcIsOEeyJ0bON1VCj7g"> + <children xmi:type="notation:Node" xmi:id="_Ameas4sOEeyJ0bON1VCj7g" type="5007"/> + <children xmi:type="notation:Node" xmi:id="_AmeatIsOEeyJ0bON1VCj7g" type="7004"> + <children xmi:type="notation:Node" xmi:id="_k5HwkIsSEeyJ0bON1VCj7g" type="3010" element="_k4p2gIsSEeyJ0bON1VCj7g"> + <styles xmi:type="notation:FontStyle" xmi:id="_k5HwkYsSEeyJ0bON1VCj7g" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_k5HwkosSEeyJ0bON1VCj7g"/> + </children> + <styles xmi:type="notation:SortingStyle" xmi:id="_AmeatYsOEeyJ0bON1VCj7g"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_AmeatosOEeyJ0bON1VCj7g"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="_AmeasYsOEeyJ0bON1VCj7g" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AmeasosOEeyJ0bON1VCj7g" x="450" y="186" width="141" height="100"/> + </children> + <children xmi:type="notation:Node" xmi:id="_t1Gv8IsZEeyJ0bON1VCj7g" type="2003" element="_tz4n8IsZEeyJ0bON1VCj7g"> + <children xmi:type="notation:Node" xmi:id="_t1IlIIsZEeyJ0bON1VCj7g" type="5007"/> + <children xmi:type="notation:Node" xmi:id="_t1IlIYsZEeyJ0bON1VCj7g" type="7004"> + <children xmi:type="notation:Node" xmi:id="_wR3tUIsZEeyJ0bON1VCj7g" type="3010" element="_wRQpUIsZEeyJ0bON1VCj7g"> + <styles xmi:type="notation:FontStyle" xmi:id="_wR3tUYsZEeyJ0bON1VCj7g" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_wR3tUosZEeyJ0bON1VCj7g"/> + </children> + <children xmi:type="notation:Node" xmi:id="_5iGikosZEeyJ0bON1VCj7g" type="3010" element="_5hv9QIsZEeyJ0bON1VCj7g"> + <styles xmi:type="notation:FontStyle" xmi:id="_5iGik4sZEeyJ0bON1VCj7g" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_5iGilIsZEeyJ0bON1VCj7g"/> + </children> + <children xmi:type="notation:Node" xmi:id="_RTYmcIsaEeyJ0bON1VCj7g" type="3010" element="_RS-90IsaEeyJ0bON1VCj7g"> + <styles xmi:type="notation:FontStyle" xmi:id="_RTYmcYsaEeyJ0bON1VCj7g" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_RTYmcosaEeyJ0bON1VCj7g"/> + </children> + <children xmi:type="notation:Node" xmi:id="_UHXJ8IsaEeyJ0bON1VCj7g" type="3010" element="_UHBywIsaEeyJ0bON1VCj7g"> + <styles xmi:type="notation:FontStyle" xmi:id="_UHXJ8YsaEeyJ0bON1VCj7g" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_UHXJ8osaEeyJ0bON1VCj7g"/> + </children> + <children xmi:type="notation:Node" xmi:id="_XItbEYsaEeyJ0bON1VCj7g" type="3010" element="_XIXc0IsaEeyJ0bON1VCj7g"> + <styles xmi:type="notation:FontStyle" xmi:id="_XItbEosaEeyJ0bON1VCj7g" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_XItbE4saEeyJ0bON1VCj7g"/> + </children> + <children xmi:type="notation:Node" xmi:id="_syMsAIsaEeyJ0bON1VCj7g" type="3010" element="_sx3U0IsaEeyJ0bON1VCj7g"> + <styles xmi:type="notation:FontStyle" xmi:id="_syMsAYsaEeyJ0bON1VCj7g" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_syMsAosaEeyJ0bON1VCj7g"/> + </children> + <children xmi:type="notation:Node" xmi:id="_IBk-4I3CEeyJ0bON1VCj7g" type="3010" element="_IBJhEI3CEeyJ0bON1VCj7g"> + <styles xmi:type="notation:FontStyle" xmi:id="_IBk-4Y3CEeyJ0bON1VCj7g" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_IBk-4o3CEeyJ0bON1VCj7g"/> + </children> + <styles xmi:type="notation:SortingStyle" xmi:id="_t1IlIosZEeyJ0bON1VCj7g"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_t1IlI4sZEeyJ0bON1VCj7g"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="_t1HXAIsZEeyJ0bON1VCj7g" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_t1HXAYsZEeyJ0bON1VCj7g" x="738" y="204" width="189" height="159"/> + </children> + <styles xmi:type="notation:DiagramStyle" xmi:id="_28wHYosNEeyJ0bON1VCj7g"/> + </data> + </ownedAnnotationEntries> + <ownedAnnotationEntries xmi:type="description:AnnotationEntry" uid="_28xVgIsNEeyJ0bON1VCj7g" source="DANNOTATION_CUSTOMIZATION_KEY"> + <data xmi:type="diagram:ComputedStyleDescriptionRegistry" uid="_28xVgYsNEeyJ0bON1VCj7g"/> + </ownedAnnotationEntries> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_Al-rcIsOEeyJ0bON1VCj7g" name="MonitoringTarget" tooltipText="" width="12" height="10"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//Tooz/MonitoringTarget"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//Tooz/MonitoringTarget"/> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_pQTMMYsSEeyJ0bON1VCj7g" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_k4p2gIsSEeyJ0bON1VCj7g" name="targetSensorId : EString" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//Tooz/MonitoringTarget/targetSensorId"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//Tooz/MonitoringTarget/targetSensorId"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_pQTMNIsSEeyJ0bON1VCj7g" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_tz4n8IsZEeyJ0bON1VCj7g" name="DistantEntity" tooltipText="" width="12" height="10"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//Tooz/DistantEntity"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//Tooz/DistantEntity"/> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_Ix8r443CEeyJ0bON1VCj7g" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_wRQpUIsZEeyJ0bON1VCj7g" name="localSensorId : EString" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//Tooz/DistantEntity/localSensorId"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//Tooz/DistantEntity/localSensorId"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_yRHBMYsZEeyJ0bON1VCj7g" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_5hv9QIsZEeyJ0bON1VCj7g" name="localAgentId : EString" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//Tooz/DistantEntity/localAgentId"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//Tooz/DistantEntity/localAgentId"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_71-CqIsZEeyJ0bON1VCj7g" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_RS-90IsaEeyJ0bON1VCj7g" name="distantEntityId : EString" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//Tooz/DistantEntity/distantEntityId"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//Tooz/DistantEntity/distantEntityId"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_Tsyt1YsaEeyJ0bON1VCj7g" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_UHBywIsaEeyJ0bON1VCj7g" name="distance : Double = 0.0" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//Tooz/DistantEntity/distance"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//Tooz/DistantEntity/distance"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_VuVu2IsaEeyJ0bON1VCj7g" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_XIXc0IsaEeyJ0bON1VCj7g" name="proximityIndex : Int" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//Tooz/DistantEntity/proximityIndex"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//Tooz/DistantEntity/proximityIndex"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_f6fZyYsaEeyJ0bON1VCj7g" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_sx3U0IsaEeyJ0bON1VCj7g" name="entityData : EMap" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//Tooz/DistantEntity/entityData"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//Tooz/DistantEntity/entityData"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_vHE4vIsaEeyJ0bON1VCj7g" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_IBJhEI3CEeyJ0bON1VCj7g" name="timeStamp : String" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//Tooz/DistantEntity/timeStamp"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//Tooz/DistantEntity/timeStamp"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_Ix8r7Y3CEeyJ0bON1VCj7g" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + </ownedDiagramElements> + <description xmi:type="description_1:DiagramDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']"/> + <filterVariableHistory xmi:type="diagram:FilterVariableHistory" uid="_27VLEIsNEeyJ0bON1VCj7g"/> + <activatedLayers xmi:type="description_1:Layer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer"/> + <activatedLayers xmi:type="description_1:AdditionalLayer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@additionalLayers[name='Package']"/> + <activatedLayers xmi:type="description_1:AdditionalLayer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@additionalLayers[name='Validation']"/> + <target xmi:type="ecore:EPackage" href="iPos_Datamodel.ecore#//Tooz"/> + </diagram:DSemanticDiagram> + <diagram:DSemanticDiagram uid="_KUAgsI_UEeyJ0bON1VCj7g"> + <ownedAnnotationEntries xmi:type="description:AnnotationEntry" uid="_KUCV4Y_UEeyJ0bON1VCj7g" source="GMF_DIAGRAMS"> + <data xmi:type="notation:Diagram" xmi:id="_KUCV4o_UEeyJ0bON1VCj7g" type="Sirius" element="_KUAgsI_UEeyJ0bON1VCj7g" measurementUnit="Pixel"> + <children xmi:type="notation:Node" xmi:id="_L1KxcI_UEeyJ0bON1VCj7g" type="2003" element="_L0y-AI_UEeyJ0bON1VCj7g"> + <children xmi:type="notation:Node" xmi:id="_L1Kxc4_UEeyJ0bON1VCj7g" type="5007"/> + <children xmi:type="notation:Node" xmi:id="_L1KxdI_UEeyJ0bON1VCj7g" type="7004"> + <children xmi:type="notation:Node" xmi:id="_Ob6d0JrjEeybDM53IXNodQ" type="3010" element="_OblGoJrjEeybDM53IXNodQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_Ob6d0ZrjEeybDM53IXNodQ" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_Ob6d0prjEeybDM53IXNodQ"/> + </children> + <children xmi:type="notation:Node" xmi:id="_TepX4JrjEeybDM53IXNodQ" type="3010" element="_TeTZoJrjEeybDM53IXNodQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_TepX4ZrjEeybDM53IXNodQ" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_TepX4prjEeybDM53IXNodQ"/> + </children> + <children xmi:type="notation:Node" xmi:id="_fsVcwJrjEeybDM53IXNodQ" type="3010" element="_fsAsoJrjEeybDM53IXNodQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_fsVcwZrjEeybDM53IXNodQ" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_fsVcwprjEeybDM53IXNodQ"/> + </children> + <children xmi:type="notation:Node" xmi:id="_OSwHgJrzEeybDM53IXNodQ" type="3010" element="_OSSNcJrzEeybDM53IXNodQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_OSwHgZrzEeybDM53IXNodQ" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_OSwHgprzEeybDM53IXNodQ"/> + </children> + <styles xmi:type="notation:SortingStyle" xmi:id="_L1KxdY_UEeyJ0bON1VCj7g"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_L1Kxdo_UEeyJ0bON1VCj7g"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="_L1KxcY_UEeyJ0bON1VCj7g" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_L1Kxco_UEeyJ0bON1VCj7g" x="258" y="138" width="171" height="105"/> + </children> + <children xmi:type="notation:Node" xmi:id="_iwcG8JrjEeybDM53IXNodQ" type="2003" element="_iwGvwJrjEeybDM53IXNodQ"> + <children xmi:type="notation:Node" xmi:id="_iwcG85rjEeybDM53IXNodQ" type="5007"/> + <children xmi:type="notation:Node" xmi:id="_iwcuAJrjEeybDM53IXNodQ" type="7004"> + <children xmi:type="notation:Node" xmi:id="_pPlUoJrjEeybDM53IXNodQ" type="3010" element="_pPRyoJrjEeybDM53IXNodQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_pPl7sJrjEeybDM53IXNodQ" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_pPl7sZrjEeybDM53IXNodQ"/> + </children> + <styles xmi:type="notation:SortingStyle" xmi:id="_iwcuAZrjEeybDM53IXNodQ"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_iwcuAprjEeybDM53IXNodQ"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="_iwcG8ZrjEeybDM53IXNodQ" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_iwcG8prjEeybDM53IXNodQ" x="555" y="135" width="120" height="100"/> + </children> + <children xmi:type="notation:Node" xmi:id="_yQrhsJrjEeybDM53IXNodQ" type="2003" element="_yQXYoJrjEeybDM53IXNodQ"> + <children xmi:type="notation:Node" xmi:id="_yQrhs5rjEeybDM53IXNodQ" type="5007"/> + <children xmi:type="notation:Node" xmi:id="_yQrhtJrjEeybDM53IXNodQ" type="7004"> + <children xmi:type="notation:Node" xmi:id="_wkJ5AJrkEeybDM53IXNodQ" type="3010" element="_wj2-EJrkEeybDM53IXNodQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_wkJ5AZrkEeybDM53IXNodQ" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_wkJ5AprkEeybDM53IXNodQ"/> + </children> + <styles xmi:type="notation:SortingStyle" xmi:id="_yQrhtZrjEeybDM53IXNodQ"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_yQrhtprjEeybDM53IXNodQ"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="_yQrhsZrjEeybDM53IXNodQ" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_yQrhsprjEeybDM53IXNodQ" x="570" y="273" width="120" height="75"/> + </children> + <children xmi:type="notation:Node" xmi:id="_8kO1IJrjEeybDM53IXNodQ" type="2003" element="_8j7TIJrjEeybDM53IXNodQ"> + <children xmi:type="notation:Node" xmi:id="_8kO1I5rjEeybDM53IXNodQ" type="5007"/> + <children xmi:type="notation:Node" xmi:id="_8kPcMJrjEeybDM53IXNodQ" type="7004"> + <children xmi:type="notation:Node" xmi:id="_FHQmIJrkEeybDM53IXNodQ" type="3010" element="_FG9rMJrkEeybDM53IXNodQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_FHQmIZrkEeybDM53IXNodQ" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_FHQmIprkEeybDM53IXNodQ"/> + </children> + <children xmi:type="notation:Node" xmi:id="_Hfu5YJrkEeybDM53IXNodQ" type="3010" element="_HfdzoJrkEeybDM53IXNodQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_Hfu5YZrkEeybDM53IXNodQ" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_Hfu5YprkEeybDM53IXNodQ"/> + </children> + <children xmi:type="notation:Node" xmi:id="_JA5xMJrkEeybDM53IXNodQ" type="3010" element="_JAloIJrkEeybDM53IXNodQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_JA5xMZrkEeybDM53IXNodQ" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_JA5xMprkEeybDM53IXNodQ"/> + </children> + <children xmi:type="notation:Node" xmi:id="_If9jIJ_NEeyjYoAVD5IwbQ" type="3010" element="_Ic5BAJ_NEeyjYoAVD5IwbQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_If9jIZ_NEeyjYoAVD5IwbQ" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_If9jIp_NEeyjYoAVD5IwbQ"/> + </children> + <styles xmi:type="notation:SortingStyle" xmi:id="_8kPcMZrjEeybDM53IXNodQ"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_8kPcMprjEeybDM53IXNodQ"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="_8kO1IZrjEeybDM53IXNodQ" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8kO1IprjEeybDM53IXNodQ" x="-24" y="150" width="162" height="100"/> + </children> + <children xmi:type="notation:Node" xmi:id="_WP47AJrkEeybDM53IXNodQ" type="2003" element="_WPmnIJrkEeybDM53IXNodQ"> + <children xmi:type="notation:Node" xmi:id="_WP47A5rkEeybDM53IXNodQ" type="5007"/> + <children xmi:type="notation:Node" xmi:id="_WP5iEJrkEeybDM53IXNodQ" type="7004"> + <children xmi:type="notation:Node" xmi:id="_o6EiMJrkEeybDM53IXNodQ" type="3010" element="_o50qkJrkEeybDM53IXNodQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_o6EiMZrkEeybDM53IXNodQ" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_o6EiMprkEeybDM53IXNodQ"/> + </children> + <styles xmi:type="notation:SortingStyle" xmi:id="_WP5iEZrkEeybDM53IXNodQ"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_WP5iEprkEeybDM53IXNodQ"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="_WP47AZrkEeybDM53IXNodQ" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_WP47AprkEeybDM53IXNodQ" x="-24" y="276" width="159" height="69"/> + </children> + <styles xmi:type="notation:DiagramStyle" xmi:id="_KUCV44_UEeyJ0bON1VCj7g"/> + <edges xmi:type="notation:Edge" xmi:id="_k8XzAJrjEeybDM53IXNodQ" type="4001" element="_k7x9IJrjEeybDM53IXNodQ" source="_L1KxcI_UEeyJ0bON1VCj7g" target="_iwcG8JrjEeybDM53IXNodQ"> + <children xmi:type="notation:Node" xmi:id="_k9HZ4JrjEeybDM53IXNodQ" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_k9HZ4ZrjEeybDM53IXNodQ" x="14" y="-14"/> + </children> + <children xmi:type="notation:Node" xmi:id="_k9IA8JrjEeybDM53IXNodQ" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_k9IA8ZrjEeybDM53IXNodQ" x="-6" y="10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_k9IoAJrjEeybDM53IXNodQ" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_k9IoAZrjEeybDM53IXNodQ" x="-83" y="10"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_k8XzAZrjEeybDM53IXNodQ" routing="Rectilinear"/> + <styles xmi:type="notation:FontStyle" xmi:id="_k8XzAprjEeybDM53IXNodQ" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_k8XzA5rjEeybDM53IXNodQ" points="[0, -3, -187, 6]$[128, -3, -59, 6]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_k9MSYJrjEeybDM53IXNodQ" id="(1.0,0.05825242718446602)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_k9MSYZrjEeybDM53IXNodQ" id="(0.5,0.0)"/> + </edges> + <edges xmi:type="notation:Edge" xmi:id="_zdy1EJrjEeybDM53IXNodQ" type="4001" element="_zdX-VprjEeybDM53IXNodQ" source="_L1KxcI_UEeyJ0bON1VCj7g" target="_yQrhsJrjEeybDM53IXNodQ"> + <children xmi:type="notation:Node" xmi:id="_zdy1FJrjEeybDM53IXNodQ" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_zdy1FZrjEeybDM53IXNodQ" x="121" y="-16"/> + </children> + <children xmi:type="notation:Node" xmi:id="_zdy1FprjEeybDM53IXNodQ" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_zdy1F5rjEeybDM53IXNodQ" x="68" y="10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_zdy1GJrjEeybDM53IXNodQ" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_zdy1GZrjEeybDM53IXNodQ" x="16" y="10"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_zdy1EZrjEeybDM53IXNodQ" routing="Rectilinear"/> + <styles xmi:type="notation:FontStyle" xmi:id="_zdy1EprjEeybDM53IXNodQ" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_zdy1E5rjEeybDM53IXNodQ" points="[-84, -53, -286, -44]$[-84, 39, -286, 48]$[143, 39, -59, 48]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_zdzcIJrjEeybDM53IXNodQ" id="(1.0,1.3980582524271845)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_zdzcIZrjEeybDM53IXNodQ" id="(0.5,0.0)"/> + </edges> + <edges xmi:type="notation:Edge" xmi:id="_-xQGUJrjEeybDM53IXNodQ" type="4001" element="_-wqQdprjEeybDM53IXNodQ" source="_L1KxcI_UEeyJ0bON1VCj7g" target="_8kO1IJrjEeybDM53IXNodQ"> + <children xmi:type="notation:Node" xmi:id="_-xQGVJrjEeybDM53IXNodQ" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-xQGVZrjEeybDM53IXNodQ" y="-10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_-xQGVprjEeybDM53IXNodQ" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-xQGV5rjEeybDM53IXNodQ" y="10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_-xQGWJrjEeybDM53IXNodQ" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-xQGWZrjEeybDM53IXNodQ" y="10"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_-xQGUZrjEeybDM53IXNodQ" routing="Rectilinear"/> + <styles xmi:type="notation:FontStyle" xmi:id="_-xQGUprjEeybDM53IXNodQ" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_-xQGU5rjEeybDM53IXNodQ" points="[0, 0, 122, 0]$[-122, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_-xQGWprjEeybDM53IXNodQ" id="(0.0,0.17475728155339806)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_-xQGW5rjEeybDM53IXNodQ" id="(1.0,0.061224489795918366)"/> + </edges> + <edges xmi:type="notation:Edge" xmi:id="_XRb3kJrkEeybDM53IXNodQ" type="4001" element="_XQ9WdprkEeybDM53IXNodQ" source="_L1KxcI_UEeyJ0bON1VCj7g" target="_WP47AJrkEeybDM53IXNodQ"> + <children xmi:type="notation:Node" xmi:id="_XRb3lJrkEeybDM53IXNodQ" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XRb3lZrkEeybDM53IXNodQ" x="90" y="12"/> + </children> + <children xmi:type="notation:Node" xmi:id="_XRb3lprkEeybDM53IXNodQ" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XRb3l5rkEeybDM53IXNodQ" x="10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_XRb3mJrkEeybDM53IXNodQ" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XRb3mZrkEeybDM53IXNodQ" x="-80" y="-10"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_XRb3kZrkEeybDM53IXNodQ" routing="Rectilinear"/> + <styles xmi:type="notation:FontStyle" xmi:id="_XRb3kprkEeybDM53IXNodQ" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_XRb3k5rkEeybDM53IXNodQ" points="[30, 79, 242, -47]$[30, 176, 242, 50]$[-164, 176, 48, 50]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XRceoJrkEeybDM53IXNodQ" id="(0.0,0.11650485436893204)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XRceoZrkEeybDM53IXNodQ" id="(0.445859872611465,0.0)"/> + </edges> + </data> + </ownedAnnotationEntries> + <ownedAnnotationEntries xmi:type="description:AnnotationEntry" uid="_KUDkAI_UEeyJ0bON1VCj7g" source="DANNOTATION_CUSTOMIZATION_KEY"> + <data xmi:type="diagram:ComputedStyleDescriptionRegistry" uid="_KUDkAY_UEeyJ0bON1VCj7g"/> + </ownedAnnotationEntries> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_L0y-AI_UEeyJ0bON1VCj7g" name="AgvState" tooltipText="" outgoingEdges="_k7x9IJrjEeybDM53IXNodQ _zdX-VprjEeybDM53IXNodQ _-wqQdprjEeybDM53IXNodQ _XQ9WdprkEeybDM53IXNodQ" width="12" height="10"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//VDA5050/AgvState"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//VDA5050/AgvState"/> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_PlHuUZrzEeybDM53IXNodQ" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_OblGoJrjEeybDM53IXNodQ" name="timeStamp : EString" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//VDA5050/AgvState/timeStamp"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//VDA5050/AgvState/timeStamp"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_PfGZJZrjEeybDM53IXNodQ" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_TeTZoJrjEeybDM53IXNodQ" name="serialNumber : EString" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//VDA5050/AgvState/serialNumber"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//VDA5050/AgvState/serialNumber"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_U_ZY9ZrjEeybDM53IXNodQ" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_fsAsoJrjEeybDM53IXNodQ" name="lastNodeId : EString" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//VDA5050/AgvState/lastNodeId"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//VDA5050/AgvState/lastNodeId"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_gyJORprjEeybDM53IXNodQ" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_OSSNcJrzEeybDM53IXNodQ" name="manufacturer : EString" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//VDA5050/AgvState/manufacturer"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//VDA5050/AgvState/manufacturer"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_PlHuX5rzEeybDM53IXNodQ" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_iwGvwJrjEeybDM53IXNodQ" name="BatteryState" tooltipText="" incomingEdges="_k7x9IJrjEeybDM53IXNodQ" width="12" height="10"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//VDA5050/BatteryState"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//VDA5050/BatteryState"/> + <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> + <arrangeConstraints>KEEP_SIZE</arrangeConstraints> + <arrangeConstraints>KEEP_RATIO</arrangeConstraints> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_qY4fA5rjEeybDM53IXNodQ" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_pPRyoJrjEeybDM53IXNodQ" name="batteryCharge : EFloat = 0.0" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//VDA5050/BatteryState/batteryCharge"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//VDA5050/BatteryState/batteryCharge"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_qY5GFJrjEeybDM53IXNodQ" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_k7x9IJrjEeybDM53IXNodQ" name="[0..1] batteryState" sourceNode="_L0y-AI_UEeyJ0bON1VCj7g" targetNode="_iwGvwJrjEeybDM53IXNodQ"> + <target xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//VDA5050/AgvState/batteryState"/> + <semanticElements xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//VDA5050/AgvState/batteryState"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_k7zyUJrjEeybDM53IXNodQ" routingStyle="manhattan" strokeColor="0,0,0"> + <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']/@style"/> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_k7zyUprjEeybDM53IXNodQ" showIcon="false"> + <customFeatures>labelSize</customFeatures> + </centerLabelStyle> + <endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_k7zyUZrjEeybDM53IXNodQ" showIcon="false" labelColor="39,76,114"> + <customFeatures>labelSize</customFeatures> + </endLabelStyle> + </ownedStyle> + <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_yQXYoJrjEeybDM53IXNodQ" name="Error" tooltipText="" incomingEdges="_zdX-VprjEeybDM53IXNodQ" width="12" height="10"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//VDA5050/Error"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//VDA5050/Error"/> + <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> + <arrangeConstraints>KEEP_SIZE</arrangeConstraints> + <arrangeConstraints>KEEP_RATIO</arrangeConstraints> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_xdtXNZrkEeybDM53IXNodQ" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_wj2-EJrkEeybDM53IXNodQ" name="errorType : EString" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//VDA5050/Error/errorType"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//VDA5050/Error/errorType"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_xdt-QprkEeybDM53IXNodQ" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_zdX-VprjEeybDM53IXNodQ" name="[0..*] errors" sourceNode="_L0y-AI_UEeyJ0bON1VCj7g" targetNode="_yQXYoJrjEeybDM53IXNodQ"> + <target xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//VDA5050/AgvState/errors"/> + <semanticElements xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//VDA5050/AgvState/errors"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_zdYlYJrjEeybDM53IXNodQ" routingStyle="manhattan" strokeColor="0,0,0"> + <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']/@style"/> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_zdYlYprjEeybDM53IXNodQ" showIcon="false"> + <customFeatures>labelSize</customFeatures> + </centerLabelStyle> + <endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_zdYlYZrjEeybDM53IXNodQ" showIcon="false" labelColor="39,76,114"> + <customFeatures>labelSize</customFeatures> + </endLabelStyle> + </ownedStyle> + <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_8j7TIJrjEeybDM53IXNodQ" name="AgvPosition" tooltipText="" incomingEdges="_-wqQdprjEeybDM53IXNodQ" width="12" height="10"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//VDA5050/AgvPosition"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//VDA5050/AgvPosition"/> + <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> + <arrangeConstraints>KEEP_SIZE</arrangeConstraints> + <arrangeConstraints>KEEP_RATIO</arrangeConstraints> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_KdC655_NEeyjYoAVD5IwbQ" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_FG9rMJrkEeybDM53IXNodQ" name="x : EFloat = 0.0" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//VDA5050/AgvPosition/x"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//VDA5050/AgvPosition/x"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_GNywYprkEeybDM53IXNodQ" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_HfdzoJrkEeybDM53IXNodQ" name="y : EFloat = 0.0" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//VDA5050/AgvPosition/y"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//VDA5050/AgvPosition/y"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_IgADk5rkEeybDM53IXNodQ" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_JAloIJrkEeybDM53IXNodQ" name="theta : EFloat = 0.0" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//VDA5050/AgvPosition/theta"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//VDA5050/AgvPosition/theta"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_KO84wJrkEeybDM53IXNodQ" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_Ic5BAJ_NEeyjYoAVD5IwbQ" name="mapId : EString" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//VDA5050/AgvPosition/mapId"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//VDA5050/AgvPosition/mapId"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_KdEwFJ_NEeyjYoAVD5IwbQ" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_-wqQdprjEeybDM53IXNodQ" name="[0..1] agvposition" sourceNode="_L0y-AI_UEeyJ0bON1VCj7g" targetNode="_8j7TIJrjEeybDM53IXNodQ"> + <target xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//VDA5050/AgvState/agvposition"/> + <semanticElements xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//VDA5050/AgvState/agvposition"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_-wrekJrjEeybDM53IXNodQ" routingStyle="manhattan" strokeColor="0,0,0"> + <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']/@style"/> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_-wrekprjEeybDM53IXNodQ" showIcon="false"> + <customFeatures>labelSize</customFeatures> + </centerLabelStyle> + <endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_-wrekZrjEeybDM53IXNodQ" showIcon="false" labelColor="39,76,114"> + <customFeatures>labelSize</customFeatures> + </endLabelStyle> + </ownedStyle> + <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_WPmnIJrkEeybDM53IXNodQ" name="Load" tooltipText="" incomingEdges="_XQ9WdprkEeybDM53IXNodQ" width="12" height="10"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//VDA5050/Load"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//VDA5050/Load"/> + <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> + <arrangeConstraints>KEEP_SIZE</arrangeConstraints> + <arrangeConstraints>KEEP_RATIO</arrangeConstraints> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_rmMKOZrkEeybDM53IXNodQ" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_o50qkJrkEeybDM53IXNodQ" name="loadId : EString" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//VDA5050/Load/loadId"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//VDA5050/Load/loadId"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_rmMxSZrkEeybDM53IXNodQ" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_XQ9WdprkEeybDM53IXNodQ" name="[0..*] loads" sourceNode="_L0y-AI_UEeyJ0bON1VCj7g" targetNode="_WPmnIJrkEeybDM53IXNodQ"> + <target xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//VDA5050/AgvState/loads"/> + <semanticElements xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//VDA5050/AgvState/loads"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_XQ99gJrkEeybDM53IXNodQ" routingStyle="manhattan" strokeColor="0,0,0"> + <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']/@style"/> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_XQ99gprkEeybDM53IXNodQ" showIcon="false"> + <customFeatures>labelSize</customFeatures> + </centerLabelStyle> + <endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_XQ99gZrkEeybDM53IXNodQ" showIcon="false" labelColor="39,76,114"> + <customFeatures>labelSize</customFeatures> + </endLabelStyle> + </ownedStyle> + <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> + </ownedDiagramElements> + <description xmi:type="description_1:DiagramDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']"/> + <filterVariableHistory xmi:type="diagram:FilterVariableHistory" uid="_KUAgsY_UEeyJ0bON1VCj7g"/> + <activatedLayers xmi:type="description_1:Layer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer"/> + <activatedLayers xmi:type="description_1:AdditionalLayer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@additionalLayers[name='Package']"/> + <activatedLayers xmi:type="description_1:AdditionalLayer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@additionalLayers[name='Validation']"/> + <target xmi:type="ecore:EPackage" href="iPos_Datamodel.ecore#//VDA5050"/> + </diagram:DSemanticDiagram> + <diagram:DSemanticDiagram uid="_q60SoKEeEeyjYoAVD5IwbQ"> + <ownedAnnotationEntries xmi:type="description:AnnotationEntry" uid="_q9SX0KEeEeyjYoAVD5IwbQ" source="GMF_DIAGRAMS"> + <data xmi:type="notation:Diagram" xmi:id="_q9SX0aEeEeyjYoAVD5IwbQ" type="Sirius" element="_q60SoKEeEeyjYoAVD5IwbQ" measurementUnit="Pixel"> + <children xmi:type="notation:Node" xmi:id="_s0i0YKEeEeyjYoAVD5IwbQ" type="2003" element="_sz0boKEeEeyjYoAVD5IwbQ"> + <children xmi:type="notation:Node" xmi:id="_s0kpkKEeEeyjYoAVD5IwbQ" type="5007"/> + <children xmi:type="notation:Node" xmi:id="_s0lQoKEeEeyjYoAVD5IwbQ" type="7004"> + <children xmi:type="notation:Node" xmi:id="_-dKQ4KEeEeyjYoAVD5IwbQ" type="3010" element="_-cfigKEeEeyjYoAVD5IwbQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_-dKQ4aEeEeyjYoAVD5IwbQ" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_-dKQ4qEeEeyjYoAVD5IwbQ"/> + </children> + <children xmi:type="notation:Node" xmi:id="_AhMlMKEfEeyjYoAVD5IwbQ" type="3010" element="_AgyVgKEfEeyjYoAVD5IwbQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_AhMlMaEfEeyjYoAVD5IwbQ" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_AhMlMqEfEeyjYoAVD5IwbQ"/> + </children> + <children xmi:type="notation:Node" xmi:id="_DnwtgKEfEeyjYoAVD5IwbQ" type="3010" element="_DnXr8KEfEeyjYoAVD5IwbQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_DnwtgaEfEeyjYoAVD5IwbQ" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_DnwtgqEfEeyjYoAVD5IwbQ"/> + </children> + <children xmi:type="notation:Node" xmi:id="_FEr-gKEfEeyjYoAVD5IwbQ" type="3010" element="_FEX1cKEfEeyjYoAVD5IwbQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_FEr-gaEfEeyjYoAVD5IwbQ" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_FEr-gqEfEeyjYoAVD5IwbQ"/> + </children> + <children xmi:type="notation:Node" xmi:id="_G-Als6EhEeyjYoAVD5IwbQ" type="3010" element="_G9wHAKEhEeyjYoAVD5IwbQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_G-AltKEhEeyjYoAVD5IwbQ" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_G-AltaEhEeyjYoAVD5IwbQ"/> + </children> + <styles xmi:type="notation:SortingStyle" xmi:id="_s0lQoaEeEeyjYoAVD5IwbQ"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_s0lQoqEeEeyjYoAVD5IwbQ"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="_s0i0YaEeEeyjYoAVD5IwbQ" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_s0i0YqEeEeyjYoAVD5IwbQ" x="516" y="156" width="207" height="279"/> + </children> + <children xmi:type="notation:Node" xmi:id="_JRsKcKEfEeyjYoAVD5IwbQ" type="2003" element="_JRUXAKEfEeyjYoAVD5IwbQ"> + <children xmi:type="notation:Node" xmi:id="_JRsxgKEfEeyjYoAVD5IwbQ" type="5007"/> + <children xmi:type="notation:Node" xmi:id="_JRsxgaEfEeyjYoAVD5IwbQ" type="7004"> + <children xmi:type="notation:Node" xmi:id="_L9H186EfEeyjYoAVD5IwbQ" type="3010" element="_L80T8KEfEeyjYoAVD5IwbQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_L9H19KEfEeyjYoAVD5IwbQ" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_L9H19aEfEeyjYoAVD5IwbQ"/> + </children> + <children xmi:type="notation:Node" xmi:id="_YN65MKEfEeyjYoAVD5IwbQ" type="3010" element="_YNpzcKEfEeyjYoAVD5IwbQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_YN65MaEfEeyjYoAVD5IwbQ" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_YN65MqEfEeyjYoAVD5IwbQ"/> + </children> + <styles xmi:type="notation:SortingStyle" xmi:id="_JRsxgqEfEeyjYoAVD5IwbQ"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_JRsxg6EfEeyjYoAVD5IwbQ"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="_JRsKcaEfEeyjYoAVD5IwbQ" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_JRsKcqEfEeyjYoAVD5IwbQ" x="912" y="204" width="177" height="100"/> + </children> + <children xmi:type="notation:Node" xmi:id="_O8tMgKEfEeyjYoAVD5IwbQ" type="2003" element="_O8ZqgKEfEeyjYoAVD5IwbQ"> + <children xmi:type="notation:Node" xmi:id="_O8tMg6EfEeyjYoAVD5IwbQ" type="5007"/> + <children xmi:type="notation:Node" xmi:id="_O8tMhKEfEeyjYoAVD5IwbQ" type="7004"> + <children xmi:type="notation:Node" xmi:id="_TKxvcKEfEeyjYoAVD5IwbQ" type="3010" element="_TKeNcKEfEeyjYoAVD5IwbQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_TKxvcaEfEeyjYoAVD5IwbQ" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_TKxvcqEfEeyjYoAVD5IwbQ"/> + </children> + <children xmi:type="notation:Node" xmi:id="_UqkuQKEfEeyjYoAVD5IwbQ" type="3010" element="_UqTBcKEfEeyjYoAVD5IwbQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_UqkuQaEfEeyjYoAVD5IwbQ" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_UqkuQqEfEeyjYoAVD5IwbQ"/> + </children> + <children xmi:type="notation:Node" xmi:id="_Vv7MwKEfEeyjYoAVD5IwbQ" type="3010" element="_VvgWAKEfEeyjYoAVD5IwbQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_Vv7MwaEfEeyjYoAVD5IwbQ" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_Vv7MwqEfEeyjYoAVD5IwbQ"/> + </children> + <styles xmi:type="notation:SortingStyle" xmi:id="_O8tMhaEfEeyjYoAVD5IwbQ"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_O8tMhqEfEeyjYoAVD5IwbQ"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="_O8tMgaEfEeyjYoAVD5IwbQ" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_O8tMgqEfEeyjYoAVD5IwbQ" x="924" y="354" width="120" height="100"/> + </children> + <children xmi:type="notation:Node" xmi:id="_hzyAPKEfEeyjYoAVD5IwbQ" type="2003" element="_hzcpAKEfEeyjYoAVD5IwbQ"> + <children xmi:type="notation:Node" xmi:id="_hzynQKEfEeyjYoAVD5IwbQ" type="5007"/> + <children xmi:type="notation:Node" xmi:id="_hzynQaEfEeyjYoAVD5IwbQ" type="7004"> + <children xmi:type="notation:Node" xmi:id="_jX43QKEfEeyjYoAVD5IwbQ" type="3010" element="_jXeAgKEfEeyjYoAVD5IwbQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_jX43QaEfEeyjYoAVD5IwbQ" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_jX43QqEfEeyjYoAVD5IwbQ"/> + </children> + <children xmi:type="notation:Node" xmi:id="_k1y_sKEfEeyjYoAVD5IwbQ" type="3010" element="_k1ihAKEfEeyjYoAVD5IwbQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_k1y_saEfEeyjYoAVD5IwbQ" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_k1y_sqEfEeyjYoAVD5IwbQ"/> + </children> + <children xmi:type="notation:Node" xmi:id="_l4qK4KEfEeyjYoAVD5IwbQ" type="3010" element="_l4S-gKEfEeyjYoAVD5IwbQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_l4qK4aEfEeyjYoAVD5IwbQ" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_l4qK4qEfEeyjYoAVD5IwbQ"/> + </children> + <children xmi:type="notation:Node" xmi:id="_n6h8AKEfEeyjYoAVD5IwbQ" type="3010" element="_n6OaAKEfEeyjYoAVD5IwbQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_n6h8AaEfEeyjYoAVD5IwbQ" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_n6h8AqEfEeyjYoAVD5IwbQ"/> + </children> + <styles xmi:type="notation:SortingStyle" xmi:id="_hzynQqEfEeyjYoAVD5IwbQ"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_hzynQ6EfEeyjYoAVD5IwbQ"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="_hzyAPaEfEeyjYoAVD5IwbQ" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_hzyAPqEfEeyjYoAVD5IwbQ" x="252" y="156" width="120" height="100"/> + </children> + <children xmi:type="notation:Node" xmi:id="_xIh8rKEfEeyjYoAVD5IwbQ" type="2003" element="_xISFAKEfEeyjYoAVD5IwbQ"> + <children xmi:type="notation:Node" xmi:id="_xIijsKEfEeyjYoAVD5IwbQ" type="5007"/> + <children xmi:type="notation:Node" xmi:id="_xIijsaEfEeyjYoAVD5IwbQ" type="7004"> + <children xmi:type="notation:Node" xmi:id="_2FnhsKEfEeyjYoAVD5IwbQ" type="3010" element="_2FWb8KEfEeyjYoAVD5IwbQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_2FnhsaEfEeyjYoAVD5IwbQ" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_2FnhsqEfEeyjYoAVD5IwbQ"/> + </children> + <children xmi:type="notation:Node" xmi:id="_Rkt7IKEgEeyjYoAVD5IwbQ" type="3010" element="_RkZLAKEgEeyjYoAVD5IwbQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_Rkt7IaEgEeyjYoAVD5IwbQ" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_Rkt7IqEgEeyjYoAVD5IwbQ"/> + </children> + <children xmi:type="notation:Node" xmi:id="__rZ6wKEgEeyjYoAVD5IwbQ" type="3010" element="__rJcEKEgEeyjYoAVD5IwbQ"> + <styles xmi:type="notation:FontStyle" xmi:id="__rZ6waEgEeyjYoAVD5IwbQ" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="__rZ6wqEgEeyjYoAVD5IwbQ"/> + </children> + <children xmi:type="notation:Node" xmi:id="_VTZsMKO5EeydOu36HZmRaA" type="3010" element="_VSyoMKO5EeydOu36HZmRaA"> + <styles xmi:type="notation:FontStyle" xmi:id="_VTZsMaO5EeydOu36HZmRaA" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_VTZsMqO5EeydOu36HZmRaA"/> + </children> + <styles xmi:type="notation:SortingStyle" xmi:id="_xIijsqEfEeyjYoAVD5IwbQ"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_xIijs6EfEeyjYoAVD5IwbQ"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="_xIh8raEfEeyjYoAVD5IwbQ" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_xIh8rqEfEeyjYoAVD5IwbQ" x="240" y="330" width="165" height="117"/> + </children> + <children xmi:type="notation:Node" xmi:id="_XYLSEKEhEeyjYoAVD5IwbQ" type="2003" element="_XX3wEKEhEeyjYoAVD5IwbQ"> + <children xmi:type="notation:Node" xmi:id="_XYLSE6EhEeyjYoAVD5IwbQ" type="5007"/> + <children xmi:type="notation:Node" xmi:id="_XYLSFKEhEeyjYoAVD5IwbQ" type="7004"> + <children xmi:type="notation:Node" xmi:id="_cGn-MKEhEeyjYoAVD5IwbQ" type="3010" element="_cGXfgKEhEeyjYoAVD5IwbQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_cGn-MaEhEeyjYoAVD5IwbQ" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_cGn-MqEhEeyjYoAVD5IwbQ"/> + </children> + <children xmi:type="notation:Node" xmi:id="_e0n1gKEhEeyjYoAVD5IwbQ" type="3010" element="_e0QCEKEhEeyjYoAVD5IwbQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_e0n1gaEhEeyjYoAVD5IwbQ" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_e0n1gqEhEeyjYoAVD5IwbQ"/> + </children> + <styles xmi:type="notation:SortingStyle" xmi:id="_XYLSFaEhEeyjYoAVD5IwbQ"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_XYLSFqEhEeyjYoAVD5IwbQ"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="_XYLSEaEhEeyjYoAVD5IwbQ" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XYLSEqEhEeyjYoAVD5IwbQ" x="762" y="516" width="195" height="75"/> + </children> + <children xmi:type="notation:Node" xmi:id="_imKT0KEpEeyjYoAVD5IwbQ" type="2003" element="_il2x0KEpEeyjYoAVD5IwbQ"> + <children xmi:type="notation:Node" xmi:id="_imK64KEpEeyjYoAVD5IwbQ" type="5007"/> + <children xmi:type="notation:Node" xmi:id="_imK64aEpEeyjYoAVD5IwbQ" type="7004"> + <children xmi:type="notation:Node" xmi:id="_ohUDoKEpEeyjYoAVD5IwbQ" type="3010" element="_ohCW0KEpEeyjYoAVD5IwbQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_ohUDoaEpEeyjYoAVD5IwbQ" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_ohUDoqEpEeyjYoAVD5IwbQ"/> + </children> + <children xmi:type="notation:Node" xmi:id="_qKBG1qEpEeyjYoAVD5IwbQ" type="3010" element="_qJoFQKEpEeyjYoAVD5IwbQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_qKBG16EpEeyjYoAVD5IwbQ" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_qKBG2KEpEeyjYoAVD5IwbQ"/> + </children> + <styles xmi:type="notation:SortingStyle" xmi:id="_imK64qEpEeyjYoAVD5IwbQ"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_imK646EpEeyjYoAVD5IwbQ"/> + </children> + <styles xmi:type="notation:ShapeStyle" xmi:id="_imKT0aEpEeyjYoAVD5IwbQ" fontName="Segoe UI" fontHeight="8"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_imKT0qEpEeyjYoAVD5IwbQ" x="1098" y="444" width="204" height="100"/> + </children> + <styles xmi:type="notation:DiagramStyle" xmi:id="_q9SX0qEeEeyjYoAVD5IwbQ"/> + <edges xmi:type="notation:Edge" xmi:id="_bNm9cKEfEeyjYoAVD5IwbQ" type="4001" element="_bNQ_MKEfEeyjYoAVD5IwbQ" source="_JRsKcKEfEeyjYoAVD5IwbQ" target="_O8tMgKEfEeyjYoAVD5IwbQ"> + <children xmi:type="notation:Node" xmi:id="_bNnkgKEfEeyjYoAVD5IwbQ" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_bNnkgaEfEeyjYoAVD5IwbQ" y="-10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_bNoLkKEfEeyjYoAVD5IwbQ" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_bNoLkaEfEeyjYoAVD5IwbQ" y="10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_bNoLkqEfEeyjYoAVD5IwbQ" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_bNoLk6EfEeyjYoAVD5IwbQ" y="10"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_bNm9caEfEeyjYoAVD5IwbQ" routing="Rectilinear"/> + <styles xmi:type="notation:FontStyle" xmi:id="_bNm9cqEfEeyjYoAVD5IwbQ" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_bNm9c6EfEeyjYoAVD5IwbQ" points="[0, 0, 0, -52]$[0, 52, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_bNrO4KEfEeyjYoAVD5IwbQ" id="(0.4057142857142857,1.0)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_bNrO4aEfEeyjYoAVD5IwbQ" id="(0.5,0.0)"/> + </edges> + <edges xmi:type="notation:Edge" xmi:id="_dTwKkKEfEeyjYoAVD5IwbQ" type="4001" element="_dTY-NqEfEeyjYoAVD5IwbQ" source="_s0i0YKEeEeyjYoAVD5IwbQ" target="_JRsKcKEfEeyjYoAVD5IwbQ"> + <children xmi:type="notation:Node" xmi:id="_dTwKlKEfEeyjYoAVD5IwbQ" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dTwKlaEfEeyjYoAVD5IwbQ" x="196" y="8"/> + </children> + <children xmi:type="notation:Node" xmi:id="_dTwKlqEfEeyjYoAVD5IwbQ" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dTwKl6EfEeyjYoAVD5IwbQ" y="10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_dTwKmKEfEeyjYoAVD5IwbQ" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dTwKmaEfEeyjYoAVD5IwbQ" y="10"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_dTwKkaEfEeyjYoAVD5IwbQ" routing="Rectilinear"/> + <styles xmi:type="notation:FontStyle" xmi:id="_dTwKkqEfEeyjYoAVD5IwbQ" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_dTwKk6EfEeyjYoAVD5IwbQ" points="[0, 0, -287, -36]$[287, 0, 0, -36]$[287, 36, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dTwKmqEfEeyjYoAVD5IwbQ" id="(1.0,0.04332129963898917)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dTwKm6EfEeyjYoAVD5IwbQ" id="(0.5485714285714286,0.0)"/> + </edges> + <edges xmi:type="notation:Edge" xmi:id="_pkY1wKEfEeyjYoAVD5IwbQ" type="4001" element="_pkI-LKEfEeyjYoAVD5IwbQ" source="_s0i0YKEeEeyjYoAVD5IwbQ" target="_hzyAPKEfEeyjYoAVD5IwbQ"> + <children xmi:type="notation:Node" xmi:id="_pkY1xKEfEeyjYoAVD5IwbQ" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_pkY1xaEfEeyjYoAVD5IwbQ" x="11" y="20"/> + </children> + <children xmi:type="notation:Node" xmi:id="_pkY1xqEfEeyjYoAVD5IwbQ" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_pkY1x6EfEeyjYoAVD5IwbQ" x="-2" y="10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_pkY1yKEfEeyjYoAVD5IwbQ" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_pkY1yaEfEeyjYoAVD5IwbQ" x="-40" y="10"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_pkY1waEfEeyjYoAVD5IwbQ" routing="Rectilinear"/> + <styles xmi:type="notation:FontStyle" xmi:id="_pkY1wqEfEeyjYoAVD5IwbQ" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_pkY1w6EfEeyjYoAVD5IwbQ" points="[0, 0, 146, 0]$[-146, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_pkY1yqEfEeyjYoAVD5IwbQ" id="(0.0,0.04332129963898917)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_pkY1y6EfEeyjYoAVD5IwbQ" id="(1.0,0.12244897959183673)"/> + </edges> + <edges xmi:type="notation:Edge" xmi:id="_CxgJAKEhEeyjYoAVD5IwbQ" type="4001" element="_CxOcQqEhEeyjYoAVD5IwbQ" source="_s0i0YKEeEeyjYoAVD5IwbQ" target="_xIh8rKEfEeyjYoAVD5IwbQ"> + <children xmi:type="notation:Node" xmi:id="_CxgwEKEhEeyjYoAVD5IwbQ" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CxgwEaEhEeyjYoAVD5IwbQ" x="57" y="21"/> + </children> + <children xmi:type="notation:Node" xmi:id="_CxgwEqEhEeyjYoAVD5IwbQ" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CxgwE6EhEeyjYoAVD5IwbQ" x="148" y="10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_CxgwFKEhEeyjYoAVD5IwbQ" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CxgwFaEhEeyjYoAVD5IwbQ" y="-10"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_CxgJAaEhEeyjYoAVD5IwbQ" routing="Rectilinear"/> + <styles xmi:type="notation:FontStyle" xmi:id="_CxgJAqEhEeyjYoAVD5IwbQ" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_CxgJA6EhEeyjYoAVD5IwbQ" points="[103, 265, 283, 103]$[103, 317, 283, 155]$[-195, 317, -15, 155]$[-195, 277, -15, 115]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_CxgwFqEhEeyjYoAVD5IwbQ" id="(0.0,0.04332129963898917)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_CxgwF6EhEeyjYoAVD5IwbQ" id="(0.588957055214724,0.0)"/> + </edges> + <edges xmi:type="notation:Edge" xmi:id="_ibnxYKEhEeyjYoAVD5IwbQ" type="4001" element="_ibXSyKEhEeyjYoAVD5IwbQ" source="_s0i0YKEeEeyjYoAVD5IwbQ" target="_XYLSEKEhEeyjYoAVD5IwbQ"> + <children xmi:type="notation:Node" xmi:id="_ibnxZKEhEeyjYoAVD5IwbQ" type="6001"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ibnxZaEhEeyjYoAVD5IwbQ" x="7"/> + </children> + <children xmi:type="notation:Node" xmi:id="_ibnxZqEhEeyjYoAVD5IwbQ" type="6002"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ibnxZ6EhEeyjYoAVD5IwbQ" x="10"/> + </children> + <children xmi:type="notation:Node" xmi:id="_ibnxaKEhEeyjYoAVD5IwbQ" type="6003"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ibnxaaEhEeyjYoAVD5IwbQ" x="-61" y="-121"/> + </children> + <styles xmi:type="notation:ConnectorStyle" xmi:id="_ibnxYaEhEeyjYoAVD5IwbQ" routing="Rectilinear"/> + <styles xmi:type="notation:FontStyle" xmi:id="_ibnxYqEhEeyjYoAVD5IwbQ" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_ibnxY6EhEeyjYoAVD5IwbQ" points="[-43, 277, -156, -83]$[-43, 410, -156, 50]$[41, 410, -72, 50]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ibnxaqEhEeyjYoAVD5IwbQ" id="(1.0,0.0)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ibnxa6EhEeyjYoAVD5IwbQ" id="(0.37305699481865284,0.0)"/> + </edges> + </data> + </ownedAnnotationEntries> + <ownedAnnotationEntries xmi:type="description:AnnotationEntry" uid="_q9Tl8KEeEeyjYoAVD5IwbQ" source="DANNOTATION_CUSTOMIZATION_KEY"> + <data xmi:type="diagram:ComputedStyleDescriptionRegistry" uid="_q9Tl8aEeEeyjYoAVD5IwbQ"/> + </ownedAnnotationEntries> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_sz0boKEeEeyjYoAVD5IwbQ" name="OSMObject" tooltipText="" outgoingEdges="_dTY-NqEfEeyjYoAVD5IwbQ _pkI-LKEfEeyjYoAVD5IwbQ _CxOcQqEhEeyjYoAVD5IwbQ _ibXSyKEhEeyjYoAVD5IwbQ" width="12" height="10"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//OSM/OSMObject"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//OSM/OSMObject"/> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_IMkDgaEhEeyjYoAVD5IwbQ" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_-cfigKEeEeyjYoAVD5IwbQ" name="id : EString" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OSM/OSMObject/id"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OSM/OSMObject/id"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="__mhssaEeEeyjYoAVD5IwbQ" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_AgyVgKEfEeyjYoAVD5IwbQ" name="sensorId : EString" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OSM/OSMObject/sensorId"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OSM/OSMObject/sensorId"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_CCxss6EfEeyjYoAVD5IwbQ" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_DnXr8KEfEeyjYoAVD5IwbQ" name="type : EString" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OSM/OSMObject/type"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OSM/OSMObject/type"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_EmwFU6EfEeyjYoAVD5IwbQ" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_FEX1cKEfEeyjYoAVD5IwbQ" name="sensorType : EString" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OSM/OSMObject/sensorType"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OSM/OSMObject/sensorType"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_GFGSp6EfEeyjYoAVD5IwbQ" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_G9wHAKEhEeyjYoAVD5IwbQ" name="lastPosUpdate : EString" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OSM/OSMObject/lastPosUpdate"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OSM/OSMObject/lastPosUpdate"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_IMkqlKEhEeyjYoAVD5IwbQ" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_JRUXAKEfEeyjYoAVD5IwbQ" name="OSMPosition" tooltipText="" outgoingEdges="_bNQ_MKEfEeyjYoAVD5IwbQ" incomingEdges="_dTY-NqEfEeyjYoAVD5IwbQ" width="12" height="10"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//OSM/OSMPosition"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//OSM/OSMPosition"/> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_ZP3eY6EfEeyjYoAVD5IwbQ" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_L80T8KEfEeyjYoAVD5IwbQ" name="refSystemId : EString" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OSM/OSMPosition/refSystemId"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OSM/OSMPosition/refSystemId"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_M9oQsaEfEeyjYoAVD5IwbQ" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_YNpzcKEfEeyjYoAVD5IwbQ" name="accuracy : EFloat = 0.0" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OSM/OSMPosition/accuracy"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OSM/OSMPosition/accuracy"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_ZP3ebaEfEeyjYoAVD5IwbQ" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_O8ZqgKEfEeyjYoAVD5IwbQ" name="OSMPoint" tooltipText="" incomingEdges="_bNQ_MKEfEeyjYoAVD5IwbQ" width="12" height="10"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//OSM/OSMPoint"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//OSM/OSMPoint"/> + <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> + <arrangeConstraints>KEEP_SIZE</arrangeConstraints> + <arrangeConstraints>KEEP_RATIO</arrangeConstraints> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_Wex21aEfEeyjYoAVD5IwbQ" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_TKeNcKEfEeyjYoAVD5IwbQ" name="x : EFloat = 0.0" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OSM/OSMPoint/x"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OSM/OSMPoint/x"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_UBptG6EfEeyjYoAVD5IwbQ" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_UqTBcKEfEeyjYoAVD5IwbQ" name="y : EFloat = 0.0" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OSM/OSMPoint/y"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OSM/OSMPoint/y"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_VbMS6KEfEeyjYoAVD5IwbQ" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_VvgWAKEfEeyjYoAVD5IwbQ" name="z : EFloat = 0.0" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OSM/OSMPoint/z"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OSM/OSMPoint/z"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_Weyd46EfEeyjYoAVD5IwbQ" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_bNQ_MKEfEeyjYoAVD5IwbQ" name="[0..1] osmpoint" sourceNode="_JRUXAKEfEeyjYoAVD5IwbQ" targetNode="_O8ZqgKEfEeyjYoAVD5IwbQ"> + <target xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//OSM/OSMPosition/osmpoint"/> + <semanticElements xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//OSM/OSMPosition/osmpoint"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_bNRmQKEfEeyjYoAVD5IwbQ" routingStyle="manhattan" strokeColor="0,0,0"> + <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']/@style"/> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_bNRmQqEfEeyjYoAVD5IwbQ" showIcon="false"> + <customFeatures>labelSize</customFeatures> + </centerLabelStyle> + <endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_bNRmQaEfEeyjYoAVD5IwbQ" showIcon="false" labelColor="39,76,114"> + <customFeatures>labelSize</customFeatures> + </endLabelStyle> + </ownedStyle> + <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_dTY-NqEfEeyjYoAVD5IwbQ" name="[0..1] osmposition" sourceNode="_sz0boKEeEeyjYoAVD5IwbQ" targetNode="_JRUXAKEfEeyjYoAVD5IwbQ"> + <target xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//OSM/OSMObject/osmposition"/> + <semanticElements xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//OSM/OSMObject/osmposition"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_dTY-N6EfEeyjYoAVD5IwbQ" routingStyle="manhattan" strokeColor="0,0,0"> + <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']/@style"/> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_dTY-OaEfEeyjYoAVD5IwbQ" showIcon="false"> + <customFeatures>labelSize</customFeatures> + </centerLabelStyle> + <endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_dTY-OKEfEeyjYoAVD5IwbQ" showIcon="false" labelColor="39,76,114"> + <customFeatures>labelSize</customFeatures> + </endLabelStyle> + </ownedStyle> + <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_hzcpAKEfEeyjYoAVD5IwbQ" name="OSMOrientation" tooltipText="" incomingEdges="_pkI-LKEfEeyjYoAVD5IwbQ" width="12" height="10"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//OSM/OSMOrientation"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//OSM/OSMOrientation"/> + <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> + <arrangeConstraints>KEEP_SIZE</arrangeConstraints> + <arrangeConstraints>KEEP_RATIO</arrangeConstraints> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_oiBZ16EfEeyjYoAVD5IwbQ" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_jXeAgKEfEeyjYoAVD5IwbQ" name="x : EFloat = 0.0" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OSM/OSMOrientation/x"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OSM/OSMOrientation/x"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_keKi1KEfEeyjYoAVD5IwbQ" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_k1ihAKEfEeyjYoAVD5IwbQ" name="y : EFloat = 0.0" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OSM/OSMOrientation/y"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OSM/OSMOrientation/y"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_lkl_dKEfEeyjYoAVD5IwbQ" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_l4S-gKEfEeyjYoAVD5IwbQ" name="z : EFloat = 0.0" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OSM/OSMOrientation/z"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OSM/OSMOrientation/z"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_nXan7aEfEeyjYoAVD5IwbQ" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_n6OaAKEfEeyjYoAVD5IwbQ" name="w : EFloat = 0.0" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OSM/OSMOrientation/w"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OSM/OSMOrientation/w"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_oiBZ5qEfEeyjYoAVD5IwbQ" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_pkI-LKEfEeyjYoAVD5IwbQ" name="[0..1] osmorientation" sourceNode="_sz0boKEeEeyjYoAVD5IwbQ" targetNode="_hzcpAKEfEeyjYoAVD5IwbQ"> + <target xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//OSM/OSMObject/osmorientation"/> + <semanticElements xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//OSM/OSMObject/osmorientation"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_pkI-LaEfEeyjYoAVD5IwbQ" routingStyle="manhattan" strokeColor="0,0,0"> + <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']/@style"/> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_pkI-L6EfEeyjYoAVD5IwbQ" showIcon="false"> + <customFeatures>labelSize</customFeatures> + </centerLabelStyle> + <endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_pkI-LqEfEeyjYoAVD5IwbQ" showIcon="false" labelColor="39,76,114"> + <customFeatures>labelSize</customFeatures> + </endLabelStyle> + </ownedStyle> + <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_xISFAKEfEeyjYoAVD5IwbQ" name="OSMExtractedAttributes" tooltipText="" incomingEdges="_CxOcQqEhEeyjYoAVD5IwbQ" width="12" height="10"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//OSM/OSMExtractedAttributes"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//OSM/OSMExtractedAttributes"/> + <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> + <arrangeConstraints>KEEP_SIZE</arrangeConstraints> + <arrangeConstraints>KEEP_RATIO</arrangeConstraints> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_XwGYIaO5EeydOu36HZmRaA" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_2FWb8KEfEeyjYoAVD5IwbQ" name="batteryChargeLevel : EFloat = 0.0" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OSM/OSMExtractedAttributes/batteryChargeLevel"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OSM/OSMExtractedAttributes/batteryChargeLevel"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_3zXdCaEfEeyjYoAVD5IwbQ" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_RkZLAKEgEeyjYoAVD5IwbQ" name="loadedItems : IntArray" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OSM/OSMExtractedAttributes/loadedItems"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OSM/OSMExtractedAttributes/loadedItems"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_6mR0EKEgEeyjYoAVD5IwbQ" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="__rJcEKEgEeyjYoAVD5IwbQ" name="errors : IntArray" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OSM/OSMExtractedAttributes/errors"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OSM/OSMExtractedAttributes/errors"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_A1d6O6EhEeyjYoAVD5IwbQ" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_VSyoMKO5EeydOu36HZmRaA" name="theta : EFloat = 0.0" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OSM/OSMExtractedAttributes/theta"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OSM/OSMExtractedAttributes/theta"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_XwINVqO5EeydOu36HZmRaA" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_CxOcQqEhEeyjYoAVD5IwbQ" name="[0..1] osmextractedattributes" sourceNode="_sz0boKEeEeyjYoAVD5IwbQ" targetNode="_xISFAKEfEeyjYoAVD5IwbQ"> + <target xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//OSM/OSMObject/osmextractedattributes"/> + <semanticElements xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//OSM/OSMObject/osmextractedattributes"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_CxOcQ6EhEeyjYoAVD5IwbQ" routingStyle="manhattan" strokeColor="0,0,0"> + <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']/@style"/> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_CxOcRaEhEeyjYoAVD5IwbQ" showIcon="false"> + <customFeatures>labelSize</customFeatures> + </centerLabelStyle> + <endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_CxOcRKEhEeyjYoAVD5IwbQ" showIcon="false" labelColor="39,76,114"> + <customFeatures>labelSize</customFeatures> + </endLabelStyle> + </ownedStyle> + <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_XX3wEKEhEeyjYoAVD5IwbQ" name="OSMZoneDescriptor" tooltipText="" incomingEdges="_ibXSyKEhEeyjYoAVD5IwbQ" width="12" height="10"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//OSM/OSMZoneDescriptor"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//OSM/OSMZoneDescriptor"/> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_li6Se6EhEeyjYoAVD5IwbQ" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_cGXfgKEhEeyjYoAVD5IwbQ" name="zoneId : EString" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OSM/OSMZoneDescriptor/zoneId"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OSM/OSMZoneDescriptor/zoneId"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_ebWZ8qEhEeyjYoAVD5IwbQ" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_e0QCEKEhEeyjYoAVD5IwbQ" name="notificationType : EString" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OSM/OSMZoneDescriptor/notificationType"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OSM/OSMZoneDescriptor/notificationType"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_gEStu6EhEeyjYoAVD5IwbQ" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DEdge" uid="_ibXSyKEhEeyjYoAVD5IwbQ" name="[0..*] osmzonedescriptor" sourceNode="_sz0boKEeEeyjYoAVD5IwbQ" targetNode="_XX3wEKEhEeyjYoAVD5IwbQ"> + <target xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//OSM/OSMObject/osmzonedescriptor"/> + <semanticElements xmi:type="ecore:EReference" href="iPos_Datamodel.ecore#//OSM/OSMObject/osmzonedescriptor"/> + <ownedStyle xmi:type="diagram:EdgeStyle" uid="_ibX5wKEhEeyjYoAVD5IwbQ" routingStyle="manhattan" strokeColor="0,0,0"> + <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']/@style"/> + <centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_ibX5wqEhEeyjYoAVD5IwbQ" showIcon="false"> + <customFeatures>labelSize</customFeatures> + </centerLabelStyle> + <endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_ibX5waEhEeyjYoAVD5IwbQ" showIcon="false" labelColor="39,76,114"> + <customFeatures>labelSize</customFeatures> + </endLabelStyle> + </ownedStyle> + <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> + </ownedDiagramElements> + <ownedDiagramElements xmi:type="diagram:DNodeList" uid="_il2x0KEpEeyjYoAVD5IwbQ" name="OSMMonitoringTarget" tooltipText="" width="12" height="10"> + <target xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//OSM/OSMMonitoringTarget"/> + <semanticElements xmi:type="ecore:EClass" href="iPos_Datamodel.ecore#//OSM/OSMMonitoringTarget"/> + <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> + <arrangeConstraints>KEEP_SIZE</arrangeConstraints> + <arrangeConstraints>KEEP_RATIO</arrangeConstraints> + <ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_rA8HzaEpEeyjYoAVD5IwbQ" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> + <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_ohCW0KEpEeyjYoAVD5IwbQ" name="monitoringTaskId : EString" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OSM/OSMMonitoringTarget/monitoringTaskId"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OSM/OSMMonitoringTarget/monitoringTaskId"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_purOpqEpEeyjYoAVD5IwbQ" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + <ownedElements xmi:type="diagram:DNodeListElement" uid="_qJoFQKEpEeyjYoAVD5IwbQ" name="protocol : EString" tooltipText=""> + <target xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OSM/OSMMonitoringTarget/protocol"/> + <semanticElements xmi:type="ecore:EAttribute" href="iPos_Datamodel.ecore#//OSM/OSMMonitoringTarget/protocol"/> + <ownedStyle xmi:type="diagram:BundledImage" uid="_rA8u3qEpEeyjYoAVD5IwbQ" labelAlignment="LEFT"> + <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/> + </ownedStyle> + <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> + </ownedElements> + </ownedDiagramElements> + <description xmi:type="description_1:DiagramDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']"/> + <filterVariableHistory xmi:type="diagram:FilterVariableHistory" uid="_q61gwKEeEeyjYoAVD5IwbQ"/> + <activatedLayers xmi:type="description_1:Layer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer"/> + <activatedLayers xmi:type="description_1:AdditionalLayer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@additionalLayers[name='Package']"/> + <activatedLayers xmi:type="description_1:AdditionalLayer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@additionalLayers[name='Validation']"/> + <target xmi:type="ecore:EPackage" href="iPos_Datamodel.ecore#//OSM"/> + </diagram:DSemanticDiagram> + <diagram:DSemanticDiagram uid="_OXjXYOMSEeylWPfcS0Eglw"> + <ownedAnnotationEntries xmi:type="description:AnnotationEntry" uid="_OaeIgOMSEeylWPfcS0Eglw" source="GMF_DIAGRAMS"> + <data xmi:type="notation:Diagram" xmi:id="_OaeIgeMSEeylWPfcS0Eglw" type="Sirius" element="_OXjXYOMSEeylWPfcS0Eglw" measurementUnit="Pixel"> + <styles xmi:type="notation:DiagramStyle" xmi:id="_OaeIguMSEeylWPfcS0Eglw"/> + </data> + </ownedAnnotationEntries> + <ownedAnnotationEntries xmi:type="description:AnnotationEntry" uid="_Oaf9sOMSEeylWPfcS0Eglw" source="DANNOTATION_CUSTOMIZATION_KEY"> + <data xmi:type="diagram:ComputedStyleDescriptionRegistry" uid="_OagkwOMSEeylWPfcS0Eglw"/> + </ownedAnnotationEntries> + <description xmi:type="description_1:DiagramDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']"/> + <filterVariableHistory xmi:type="diagram:FilterVariableHistory" uid="_OXnBwOMSEeylWPfcS0Eglw"/> + <activatedLayers xmi:type="description_1:Layer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer"/> + <activatedLayers xmi:type="description_1:AdditionalLayer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@additionalLayers[name='Package']"/> + <activatedLayers xmi:type="description_1:AdditionalLayer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@additionalLayers[name='Validation']"/> + <target xmi:type="ecore:EPackage" href="iPos_Datamodel.ecore#//IPos_Datamodel_print"/> </diagram:DSemanticDiagram> </xmi:XMI> diff --git a/emf_datamodel/model/iPos_Datamodel.ecore b/emf_datamodel/model/iPos_Datamodel.ecore index 6184edbb4b6b5ce15e70f3cb2b41b804615358d1..c71f06926d60eeb87f7ce2802ed370f18b82d6a1 100644 --- a/emf_datamodel/model/iPos_Datamodel.ecore +++ b/emf_datamodel/model/iPos_Datamodel.ecore @@ -3,33 +3,20 @@ xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="iPos_Datamodel" nsURI="http://www.example.org/iPos_Datamodel" nsPrefix="iPos_Datamodel"> <eClassifiers xsi:type="ecore:EClass" name="Agent" eSuperTypes="#//Entity"> - <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> <eStructuralFeatures xsi:type="ecore:EReference" name="lObject" upperBound="-1" eType="#//LocalizableObject"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="netInt" lowerBound="1" - eType="#//NetworkInterface"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="pSensors" upperBound="-1" - eType="#//PositionSensor"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="agentType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> </eClassifiers> <eClassifiers xsi:type="ecore:EClass" name="Entity"> <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> </eClassifiers> <eClassifiers xsi:type="ecore:EClass" name="LocalizableObject" eSuperTypes="#//Entity"> - <eStructuralFeatures xsi:type="ecore:EReference" name="pSensor" lowerBound="1" - eType="#//PositionSensor"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="currentPlacing" eType="#//Placing" - eOpposite="#//Placing/lObject"/> <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastPosUpdate" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> - <eStructuralFeatures xsi:type="ecore:EAttribute" name="type" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="PositionSensor" eSuperTypes="#//Entity"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="sensorType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> <eStructuralFeatures xsi:type="ecore:EReference" name="agent" eType="#//Agent"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="lObject" eType="#//LocalizableObject"/> - <eStructuralFeatures xsi:type="ecore:EAttribute" name="type" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="currentPlacing" eType="#//Placing"/> </eClassifiers> <eClassifiers xsi:type="ecore:EClass" name="Placing"> - <eStructuralFeatures xsi:type="ecore:EReference" name="lObject" lowerBound="1" - eType="#//LocalizableObject" eOpposite="#//LocalizableObject/currentPlacing"/> <eStructuralFeatures xsi:type="ecore:EReference" name="position" lowerBound="1" eType="#//Position"/> <eStructuralFeatures xsi:type="ecore:EReference" name="orientation" lowerBound="1" @@ -37,17 +24,12 @@ </eClassifiers> <eClassifiers xsi:type="ecore:EClass" name="Position"> <eStructuralFeatures xsi:type="ecore:EReference" name="accuracy" eType="#//Accuracy"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="Orientation"/> - <eClassifiers xsi:type="ecore:EClass" name="AbsolutePosition" eSuperTypes="#//Position"> - <eStructuralFeatures xsi:type="ecore:EReference" name="point" lowerBound="1" eType="#//WGS84Point"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="RelativePosition" eSuperTypes="#//Position"> - <eStructuralFeatures xsi:type="ecore:EReference" name="reference" lowerBound="1" - eType="#//ReferenceSystem"/> <eStructuralFeatures xsi:type="ecore:EReference" name="point" lowerBound="1" eType="#//Point"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="referenceSystem" lowerBound="1" + eType="#//ReferenceSystem"/> </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="WGS84Point"> + <eClassifiers xsi:type="ecore:EClass" name="Orientation"/> + <eClassifiers xsi:type="ecore:EClass" name="WGS84Point" eSuperTypes="#//Point"> <eStructuralFeatures xsi:type="ecore:EAttribute" name="longitude" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Double"/> <eStructuralFeatures xsi:type="ecore:EAttribute" name="latitude" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Double"/> <eStructuralFeatures xsi:type="ecore:EAttribute" name="altitude" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Double"/> @@ -63,14 +45,15 @@ <eStructuralFeatures xsi:type="ecore:EAttribute" name="z" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFloat"/> </eClassifiers> <eClassifiers xsi:type="ecore:EClass" name="ReferenceSystem"> - <eStructuralFeatures xsi:type="ecore:EReference" name="origin" lowerBound="1" - eType="#//Placing"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="origin" eType="#//Placing"/> <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="Zone" eSuperTypes="#//ReferenceSystem"> + <eClassifiers xsi:type="ecore:EClass" name="Zone"> <eStructuralFeatures xsi:type="ecore:EReference" name="space" upperBound="-1" eType="#//Space" containment="true"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> </eClassifiers> <eClassifiers xsi:type="ecore:EClass" name="ZoneMap" eSuperTypes="#//MapType"> <eStructuralFeatures xsi:type="ecore:EReference" name="zone" upperBound="-1" eType="#//Zone" @@ -80,9 +63,10 @@ <eStructuralFeatures xsi:type="ecore:EAttribute" name="x" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Float"/> <eStructuralFeatures xsi:type="ecore:EAttribute" name="y" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Float"/> <eStructuralFeatures xsi:type="ecore:EAttribute" name="z" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Float"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="centrePoint" lowerBound="1" + eType="#//Placing"/> </eClassifiers> <eClassifiers xsi:type="ecore:EClass" name="MapType"/> - <eClassifiers xsi:type="ecore:EClass" name="NetworkInterface"/> <eClassifiers xsi:type="ecore:EClass" name="Quaternion" eSuperTypes="#//Orientation"> <eStructuralFeatures xsi:type="ecore:EAttribute" name="x" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFloat"/> <eStructuralFeatures xsi:type="ecore:EAttribute" name="y" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFloat"/> @@ -94,10 +78,10 @@ defaultValueLiteral="0.0"/> </eClassifiers> <eClassifiers xsi:type="ecore:EClass" name="Point"/> - <eClassifiers xsi:type="ecore:EClass" name="Rawdata" abstract="true"> - <eStructuralFeatures xsi:type="ecore:EAttribute" name="sensorId" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + <eClassifiers xsi:type="ecore:EClass" name="RawdataEvent"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="timeStamp" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="Proximity" eSuperTypes="#//Rawdata"> + <eClassifiers xsi:type="ecore:EClass" name="Proximity" eSuperTypes="#//RawdataEvent"> <eStructuralFeatures xsi:type="ecore:EAttribute" name="tagId" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> <eStructuralFeatures xsi:type="ecore:EAttribute" name="type" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> <eStructuralFeatures xsi:type="ecore:EAttribute" name="scannerId" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> @@ -109,41 +93,41 @@ <eStructuralFeatures xsi:type="ecore:EAttribute" name="tagData" transient="true"> <eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"> <eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> - <eTypeArguments eClassifier="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EObject"/> + <eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/> </eGenericType> </eStructuralFeatures> </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="IMU" eSuperTypes="#//Rawdata"> + <eClassifiers xsi:type="ecore:EClass" name="IMU" eSuperTypes="#//RawdataEvent"> <eStructuralFeatures xsi:type="ecore:EReference" name="angularrate" lowerBound="1" - eType="#//AngularRate"/> + eType="#//Quaternion"/> <eStructuralFeatures xsi:type="ecore:EReference" name="acceleration" lowerBound="1" eType="#//Acceleration"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="sensorId" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="AngularRate"/> - <eClassifiers xsi:type="ecore:EClass" name="Acceleration"/> - <eClassifiers xsi:type="ecore:EClass" name="Beacon" eSuperTypes="#//Rawdata"> + <eClassifiers xsi:type="ecore:EClass" name="Acceleration"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="x" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Float"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="y" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Float"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="z" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Float"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="Beacon" eSuperTypes="#//RawdataEvent"> <eStructuralFeatures xsi:type="ecore:EAttribute" name="distances" transient="true"> <eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"> <eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> - <eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EIntegerObject"/> + <eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDoubleObject"/> </eGenericType> </eStructuralFeatures> <eStructuralFeatures xsi:type="ecore:EAttribute" name="type" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="sensorId" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> </eClassifiers> <eClassifiers xsi:type="ecore:EClass" name="PositionEvent"> - <eStructuralFeatures xsi:type="ecore:EReference" name="placing" lowerBound="1" - eType="#//Placing"/> <eStructuralFeatures xsi:type="ecore:EAttribute" name="timeStamp" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String" transient="true"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="lObjectId" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="zonedescriptors" upperBound="-1" + eType="#//ZoneDescriptor"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="placing" lowerBound="1" + eType="#//Placing"/> </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="RawdataEvent"> - <eStructuralFeatures xsi:type="ecore:EReference" name="rawdata" lowerBound="1" - upperBound="-1" eType="#//Rawdata"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="TrackingRequest"/> - <eClassifiers xsi:type="ecore:EClass" name="MonitoringRequest"/> - <eClassifiers xsi:type="ecore:EClass" name="WorldModelUpdateRequest"/> - <eClassifiers xsi:type="ecore:EClass" name="DataStorageRequest"/> <eClassifiers xsi:type="ecore:EClass" name="EventFilterConfiguration"> <eStructuralFeatures xsi:type="ecore:EAttribute" name="positionAmbiguityStrategy" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> @@ -161,11 +145,8 @@ </eGenericType> </eStructuralFeatures> <eStructuralFeatures xsi:type="ecore:EReference" name="eventfiltercondition" upperBound="-1" - eType="#//EventFilterCondition"/> + eType="#//TrackingTask"/> </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="WorldModelQueryRequest"/> - <eClassifiers xsi:type="ecore:EClass" name="DataStorageQueryRequest"/> - <eClassifiers xsi:type="ecore:EClass" name="AgentRegistrationRequest"/> <eClassifiers xsi:type="ecore:EClass" name="MonitoringTask"> <eStructuralFeatures xsi:type="ecore:EReference" name="eventfilterconfiguration" lowerBound="1" eType="#//EventFilterConfiguration"/> @@ -177,15 +158,18 @@ <eClassifiers xsi:type="ecore:EClass" name="WorldModel"> <eStructuralFeatures xsi:type="ecore:EReference" name="agent" upperBound="-1" eType="#//Agent"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="zonemap" upperBound="-1" + <eStructuralFeatures xsi:type="ecore:EReference" name="zoneMap" upperBound="-1" eType="#//ZoneMap"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="pois" upperBound="-1" eType="#//POI"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="referenceSystem" upperBound="-1" + eType="#//ReferenceSystem"/> </eClassifiers> <eClassifiers xsi:type="ecore:EClass" name="Barcode" eSuperTypes="#//Proximity"/> <eClassifiers xsi:type="ecore:EClass" name="OtherProx" eSuperTypes="#//Proximity"> <eStructuralFeatures xsi:type="ecore:EAttribute" name="data" transient="true"> <eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"> <eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> - <eTypeArguments eClassifier="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EObject"/> + <eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/> </eGenericType> </eStructuralFeatures> </eClassifiers> @@ -193,32 +177,34 @@ <eStructuralFeatures xsi:type="ecore:EAttribute" name="rss" transient="true"> <eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"> <eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> - <eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EIntegerObject"/> + <eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//DoubleObject"/> </eGenericType> </eStructuralFeatures> </eClassifiers> <eClassifiers xsi:type="ecore:EClass" name="UWB" eSuperTypes="#//Beacon"/> - <eClassifiers xsi:type="ecore:EClass" name="SensorConfigurationRequest"/> <eClassifiers xsi:type="ecore:EClass" name="OtherBeacon" eSuperTypes="#//Beacon"> <eStructuralFeatures xsi:type="ecore:EAttribute" name="data" transient="true"> <eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"> <eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> - <eTypeArguments eClassifier="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EObject"/> + <eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/> </eGenericType> </eStructuralFeatures> </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="ReferencePosition"> - <eStructuralFeatures xsi:type="ecore:EReference" name="position" lowerBound="1" - eType="#//Position"/> + <eClassifiers xsi:type="ecore:EClass" name="POI"> + <eStructuralFeatures xsi:type="ecore:EReference" name="placing" lowerBound="1" + eType="#//Placing"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="description" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="data" transient="true"> + <eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"> + <eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + <eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + </eGenericType> + </eStructuralFeatures> <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> </eClassifiers> <eClassifiers xsi:type="ecore:EClass" name="EventFilterCondition"> <eStructuralFeatures xsi:type="ecore:EAttribute" name="timeCondition" eType="#//StringArray" transient="true"/> - <eStructuralFeatures xsi:type="ecore:EAttribute" name="categoryCondition" eType="#//StringList" - transient="true"/> - <eStructuralFeatures xsi:type="ecore:EAttribute" name="idCondition" eType="#//StringList" - transient="true" defaultValueLiteral=""/> <eStructuralFeatures xsi:type="ecore:EAttribute" name="accuracyCondition" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Float" transient="true"/> <eStructuralFeatures xsi:type="ecore:EAttribute" name="positionCondition" eType="#//FloatArray" @@ -230,12 +216,271 @@ transient="true"/> <eStructuralFeatures xsi:type="ecore:EAttribute" name="filterStructure" eType="#//BooleanList" transient="true"/> - <eStructuralFeatures xsi:type="ecore:EAttribute" name="positionConditionCell" - eType="#//FloatArray3d"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="positionConditionCells" + transient="true"> + <eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"> + <eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + <eTypeArguments eClassifier="#//FloatArray3d"/> + </eGenericType> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="idCondition" eType="#//StringList"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="categoryCondition" eType="#//StringList"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="propertyCondition" eType="#//StringList"/> </eClassifiers> <eClassifiers xsi:type="ecore:EDataType" name="StringList" instanceClassName="java.util.List<java.lang.String>"/> <eClassifiers xsi:type="ecore:EDataType" name="StringArray" instanceClassName="java.util.ArrayList<java.lang.String[]>"/> <eClassifiers xsi:type="ecore:EDataType" name="FloatArray3d" instanceClassName="java.util.ArrayList<java.lang.Float[][]>"/> <eClassifiers xsi:type="ecore:EDataType" name="BooleanList" instanceClassName="java.lang.boolean[]"/> <eClassifiers xsi:type="ecore:EDataType" name="FloatArray" instanceClassName="java.util.ArrayList<java.lang.Float[]>"/> + <eClassifiers xsi:type="ecore:EClass" name="ZoneDescriptor"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="zoneId" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="notificationType" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="DataStorageQueryResponse"> + <eStructuralFeatures xsi:type="ecore:EReference" name="positionEvents" upperBound="-1" + eType="#//PositionEvent"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="trackingTaskId" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="MessageReceivedEvent"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="protocolName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="serializedMsg" eType="#//ByteArray"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="agentId" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="extractedAttributes" eType="#//ListOfStringMaps"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="timestamp" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EDataType" name="ByteArray" instanceClassName="java.lang.byte[]"/> + <eClassifiers xsi:type="ecore:EDataType" name="ListOfStringMaps" instanceClassName="java.util.LinkedList<java.util.HashMap<java.lang.String, java.lang.String>>"/> + <eClassifiers xsi:type="ecore:EDataType" name="IntArray" instanceClassName="int[]"/> + <eSubpackages name="OFBiz" nsURI="ofbiz" nsPrefix="ofbiz"> + <eClassifiers xsi:type="ecore:EClass" name="Picklist"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="picklistId" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="picklistRoles" upperBound="-1" + eType="#//OFBiz/PicklistRole"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="picklistBins" upperBound="-1" + eType="#//OFBiz/PicklistBin"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="PicklistBin"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="picklistId" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="binLocationNumber" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="picklistItems" upperBound="-1" + eType="#//OFBiz/PicklistItem"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="PicklistItem"> + <eStructuralFeatures xsi:type="ecore:EReference" name="inventoryItem" lowerBound="1" + eType="#//OFBiz/InventoryItem"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="InventoryItem"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="inventoryItemId" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="containerId" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="productId" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="PicklistRole"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="picklistId" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="partyId" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="roleTypeId" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + </eClassifiers> + </eSubpackages> + <eSubpackages name="IPosDevKit" nsURI="IDK" nsPrefix="IDK"> + <eClassifiers xsi:type="ecore:EClass" name="TrackingRequest"/> + <eClassifiers xsi:type="ecore:EClass" name="MonitoringRequest"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="frameIds" eType="#//StringList"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="delta" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Float"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="updateFrequency" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Float"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="type" eType="#//StringList"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="#//StringList"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="fusionStrategy" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="exitNotification" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Boolean"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="properties" eType="#//StringList"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="monitoringTaskId" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="requestorProtocol" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="serializationType" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="refSystemId" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="WorldModelUpdateRequest"/> + <eClassifiers xsi:type="ecore:EClass" name="DataStorageRequest"/> + <eClassifiers xsi:type="ecore:EClass" name="WorldModelQueryRequest"/> + <eClassifiers xsi:type="ecore:EClass" name="DataStorageQueryRequest"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="trackingTaskId" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="AgentRegistrationRequest"/> + <eClassifiers xsi:type="ecore:EClass" name="SensorConfigurationRequest"/> + <eClassifiers xsi:type="ecore:EClass" name="IposPositionEvent"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="agentId" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="sensorId" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="type" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="sensorType" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastPosUpdate" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="position" lowerBound="1" + eType="#//Position"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="orientation" lowerBound="1" + eType="#//Orientation"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="zoneDescriptors" upperBound="-1" + eType="#//ZoneDescriptor"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="IPosRawdataEvent"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="agentId" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="sensorId" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="agentType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="sensorType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="timeStamp" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="IPosBeaconEvent" eSuperTypes="#//IPosDevKit/IPosRawdataEvent"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="distances" transient="true"> + <eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"> + <eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + <eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//DoubleObject"/> + </eGenericType> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="IPosUWBEvent" eSuperTypes="#//IPosDevKit/IPosBeaconEvent"/> + <eClassifiers xsi:type="ecore:EClass" name="IPosBTEvent" eSuperTypes="#//IPosDevKit/IPosBeaconEvent"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="rss" transient="true"> + <eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"> + <eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + <eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//DoubleObject"/> + </eGenericType> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="IPosProximityEvent" eSuperTypes="#//IPosDevKit/IPosRawdataEvent"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="tagId" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="IPosNFCEvent" eSuperTypes="#//IPosDevKit/IPosProximityEvent"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="tagData" transient="true"> + <eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"> + <eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + <eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/> + </eGenericType> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="IPosBarcodeEvent" eSuperTypes="#//IPosDevKit/IPosProximityEvent"/> + <eClassifiers xsi:type="ecore:EClass" name="IPosRFIDEvent" eSuperTypes="#//IPosDevKit/IPosProximityEvent"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="location" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="IPosOtherProxEvent" eSuperTypes="#//IPosDevKit/IPosProximityEvent"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="data" transient="true"> + <eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"> + <eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + <eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/> + </eGenericType> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="IPosOtherBeaconEvent" eSuperTypes="#//IPosDevKit/IPosBeaconEvent"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="data" transient="true"> + <eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"> + <eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + <eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/> + </eGenericType> + </eStructuralFeatures> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="IposMsgRcvEvent"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="protocolName" lowerBound="1" + eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="serializedMsg" eType="#//ByteArray"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastPosUpdate" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="lastKnownPosition" eType="#//Position"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="lastKnownOrientation" + eType="#//Orientation"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="lastKnownZonedescriptors" + upperBound="-1" eType="#//ZoneDescriptor"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="agentId" lowerBound="1" + eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="extractedAttributes" + eType="#//ListOfStringMaps"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="timestamp" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + </eClassifiers> + </eSubpackages> + <eSubpackages name="Tooz" nsURI="tooz" nsPrefix="tooz"> + <eClassifiers xsi:type="ecore:EClass" name="MonitoringTarget"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="targetSensorId" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="DistantEntity"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="localSensorId" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="localAgentId" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="distantEntityId" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="distance" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Double"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="proximityIndex" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Int"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="entityData" transient="true"> + <eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap"> + <eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + <eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + </eGenericType> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="timeStamp" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/> + </eClassifiers> + </eSubpackages> + <eSubpackages name="VDA5050" nsURI="vda5050" nsPrefix="vda5050"> + <eClassifiers xsi:type="ecore:EClass" name="AgvState"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="timeStamp" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="serialNumber" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastNodeId" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="batteryState" eType="#//VDA5050/BatteryState"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="errors" upperBound="-1" + eType="#//VDA5050/Error"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="agvposition" eType="#//VDA5050/AgvPosition"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="loads" upperBound="-1" + eType="#//VDA5050/Load"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="manufacturer" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="BatteryState"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="batteryCharge" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFloat"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="Error"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="errorType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="AgvPosition"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="x" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFloat"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="y" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFloat"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="theta" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFloat"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="mapId" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="Load"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="loadId" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + </eClassifiers> + </eSubpackages> + <eSubpackages name="OSM" nsURI="osm" nsPrefix="osm"> + <eClassifiers xsi:type="ecore:EClass" name="OSMObject"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="sensorId" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="type" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="sensorType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="osmposition" eType="#//OSM/OSMPosition"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="osmorientation" eType="#//OSM/OSMOrientation"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="osmextractedattributes" + eType="#//OSM/OSMExtractedAttributes"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastPosUpdate" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="osmzonedescriptor" upperBound="-1" + eType="#//OSM/OSMZoneDescriptor"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="OSMPosition"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="refSystemId" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="accuracy" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFloat"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="osmpoint" eType="#//OSM/OSMPoint"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="OSMPoint"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="x" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFloat"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="y" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFloat"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="z" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFloat"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="OSMOrientation"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="x" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFloat"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="y" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFloat"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="z" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFloat"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="w" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFloat"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="OSMExtractedAttributes"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="batteryChargeLevel" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFloat"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="loadedItems" eType="#//IntArray"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="errors" eType="#//IntArray"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="theta" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFloat"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="OSMZoneDescriptor"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="zoneId" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="notificationType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="OSMMonitoringTarget"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="monitoringTaskId" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="protocol" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + </eClassifiers> + </eSubpackages> + <eSubpackages name="IPos_Datamodel_print" nsURI="dmprint" nsPrefix="dmprint"/> </ecore:EPackage> diff --git a/emf_datamodel/model/iPos_Datamodel.genmodel b/emf_datamodel/model/iPos_Datamodel.genmodel index 3a558909111820de8e47175f1b907a863d952db7..d7797a7d1bcc86c58d6ea2e826c9d0f19885601f 100644 --- a/emf_datamodel/model/iPos_Datamodel.genmodel +++ b/emf_datamodel/model/iPos_Datamodel.genmodel @@ -15,42 +15,32 @@ <genDataTypes ecoreDataType="iPos_Datamodel.ecore#//FloatArray3d"/> <genDataTypes ecoreDataType="iPos_Datamodel.ecore#//BooleanList"/> <genDataTypes ecoreDataType="iPos_Datamodel.ecore#//FloatArray"/> + <genDataTypes ecoreDataType="iPos_Datamodel.ecore#//ByteArray"/> + <genDataTypes ecoreDataType="iPos_Datamodel.ecore#//ListOfStringMaps"/> + <genDataTypes ecoreDataType="iPos_Datamodel.ecore#//IntArray"/> <genClasses ecoreClass="iPos_Datamodel.ecore#//Agent"> - <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//Agent/name"/> <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//Agent/lObject"/> - <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//Agent/netInt"/> - <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//Agent/pSensors"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//Agent/agentType"/> </genClasses> <genClasses ecoreClass="iPos_Datamodel.ecore#//Entity"> <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//Entity/id"/> </genClasses> <genClasses ecoreClass="iPos_Datamodel.ecore#//LocalizableObject"> - <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//LocalizableObject/pSensor"/> - <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//LocalizableObject/currentPlacing"/> <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//LocalizableObject/lastPosUpdate"/> - <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//LocalizableObject/type"/> - </genClasses> - <genClasses ecoreClass="iPos_Datamodel.ecore#//PositionSensor"> - <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//PositionSensor/agent"/> - <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//PositionSensor/lObject"/> - <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//PositionSensor/type"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//LocalizableObject/sensorType"/> + <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//LocalizableObject/agent"/> + <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//LocalizableObject/currentPlacing"/> </genClasses> <genClasses ecoreClass="iPos_Datamodel.ecore#//Placing"> - <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//Placing/lObject"/> <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//Placing/position"/> <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//Placing/orientation"/> </genClasses> <genClasses ecoreClass="iPos_Datamodel.ecore#//Position"> <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//Position/accuracy"/> + <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//Position/point"/> + <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//Position/referenceSystem"/> </genClasses> <genClasses ecoreClass="iPos_Datamodel.ecore#//Orientation"/> - <genClasses ecoreClass="iPos_Datamodel.ecore#//AbsolutePosition"> - <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//AbsolutePosition/point"/> - </genClasses> - <genClasses ecoreClass="iPos_Datamodel.ecore#//RelativePosition"> - <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//RelativePosition/reference"/> - <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//RelativePosition/point"/> - </genClasses> <genClasses ecoreClass="iPos_Datamodel.ecore#//WGS84Point"> <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//WGS84Point/longitude"/> <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//WGS84Point/latitude"/> @@ -73,6 +63,8 @@ </genClasses> <genClasses ecoreClass="iPos_Datamodel.ecore#//Zone"> <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//Zone/space"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//Zone/name"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//Zone/id"/> </genClasses> <genClasses ecoreClass="iPos_Datamodel.ecore#//ZoneMap"> <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//ZoneMap/zone"/> @@ -81,9 +73,9 @@ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//Space/x"/> <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//Space/y"/> <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//Space/z"/> + <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//Space/centrePoint"/> </genClasses> <genClasses ecoreClass="iPos_Datamodel.ecore#//MapType"/> - <genClasses ecoreClass="iPos_Datamodel.ecore#//NetworkInterface"/> <genClasses ecoreClass="iPos_Datamodel.ecore#//Quaternion"> <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//Quaternion/x"/> <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//Quaternion/y"/> @@ -94,8 +86,8 @@ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//Gaussian/confidenceInterval"/> </genClasses> <genClasses ecoreClass="iPos_Datamodel.ecore#//Point"/> - <genClasses ecoreClass="iPos_Datamodel.ecore#//Rawdata"> - <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//Rawdata/sensorId"/> + <genClasses ecoreClass="iPos_Datamodel.ecore#//RawdataEvent"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//RawdataEvent/timeStamp"/> </genClasses> <genClasses ecoreClass="iPos_Datamodel.ecore#//Proximity"> <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//Proximity/tagId"/> @@ -111,33 +103,30 @@ <genClasses ecoreClass="iPos_Datamodel.ecore#//IMU"> <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//IMU/angularrate"/> <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//IMU/acceleration"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//IMU/sensorId"/> + </genClasses> + <genClasses ecoreClass="iPos_Datamodel.ecore#//Acceleration"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//Acceleration/x"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//Acceleration/y"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//Acceleration/z"/> </genClasses> - <genClasses ecoreClass="iPos_Datamodel.ecore#//AngularRate"/> - <genClasses ecoreClass="iPos_Datamodel.ecore#//Acceleration"/> <genClasses ecoreClass="iPos_Datamodel.ecore#//Beacon"> <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//Beacon/distances"/> <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//Beacon/type"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//Beacon/sensorId"/> </genClasses> <genClasses ecoreClass="iPos_Datamodel.ecore#//PositionEvent"> - <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//PositionEvent/placing"/> <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//PositionEvent/timeStamp"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//PositionEvent/lObjectId"/> + <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//PositionEvent/zonedescriptors"/> + <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//PositionEvent/placing"/> </genClasses> - <genClasses ecoreClass="iPos_Datamodel.ecore#//RawdataEvent"> - <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//RawdataEvent/rawdata"/> - </genClasses> - <genClasses ecoreClass="iPos_Datamodel.ecore#//TrackingRequest"/> - <genClasses ecoreClass="iPos_Datamodel.ecore#//MonitoringRequest"/> - <genClasses ecoreClass="iPos_Datamodel.ecore#//WorldModelUpdateRequest"/> - <genClasses ecoreClass="iPos_Datamodel.ecore#//DataStorageRequest"/> <genClasses ecoreClass="iPos_Datamodel.ecore#//EventFilterConfiguration"> <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//EventFilterConfiguration/positionAmbiguityStrategy"/> <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//EventFilterConfiguration/positionAmbiguityParameters"/> <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//EventFilterConfiguration/filterCriteria"/> <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//EventFilterConfiguration/eventfiltercondition"/> </genClasses> - <genClasses ecoreClass="iPos_Datamodel.ecore#//WorldModelQueryRequest"/> - <genClasses ecoreClass="iPos_Datamodel.ecore#//DataStorageQueryRequest"/> - <genClasses ecoreClass="iPos_Datamodel.ecore#//AgentRegistrationRequest"/> <genClasses ecoreClass="iPos_Datamodel.ecore#//MonitoringTask"> <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//MonitoringTask/eventfilterconfiguration"/> </genClasses> @@ -146,7 +135,9 @@ </genClasses> <genClasses ecoreClass="iPos_Datamodel.ecore#//WorldModel"> <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//WorldModel/agent"/> - <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//WorldModel/zonemap"/> + <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//WorldModel/zoneMap"/> + <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//WorldModel/pois"/> + <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//WorldModel/referenceSystem"/> </genClasses> <genClasses ecoreClass="iPos_Datamodel.ecore#//Barcode"/> <genClasses ecoreClass="iPos_Datamodel.ecore#//OtherProx"> @@ -156,25 +147,248 @@ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//Bluetooth/rss"/> </genClasses> <genClasses ecoreClass="iPos_Datamodel.ecore#//UWB"/> - <genClasses ecoreClass="iPos_Datamodel.ecore#//SensorConfigurationRequest"/> <genClasses ecoreClass="iPos_Datamodel.ecore#//OtherBeacon"> <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//OtherBeacon/data"/> </genClasses> - <genClasses ecoreClass="iPos_Datamodel.ecore#//ReferencePosition"> - <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//ReferencePosition/position"/> - <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//ReferencePosition/id"/> + <genClasses ecoreClass="iPos_Datamodel.ecore#//POI"> + <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//POI/placing"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//POI/description"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//POI/data"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//POI/id"/> </genClasses> <genClasses ecoreClass="iPos_Datamodel.ecore#//EventFilterCondition"> <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//EventFilterCondition/timeCondition"/> - <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//EventFilterCondition/categoryCondition"/> - <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//EventFilterCondition/idCondition"/> <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//EventFilterCondition/accuracyCondition"/> <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//EventFilterCondition/positionCondition"/> <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//EventFilterCondition/timeMinInterval"/> <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//EventFilterCondition/positionDelta"/> <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//EventFilterCondition/sensorIdCondition"/> <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//EventFilterCondition/filterStructure"/> - <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//EventFilterCondition/positionConditionCell"/> - </genClasses> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//EventFilterCondition/positionConditionCells"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//EventFilterCondition/idCondition"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//EventFilterCondition/categoryCondition"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//EventFilterCondition/propertyCondition"/> + </genClasses> + <genClasses ecoreClass="iPos_Datamodel.ecore#//ZoneDescriptor"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//ZoneDescriptor/zoneId"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//ZoneDescriptor/notificationType"/> + </genClasses> + <genClasses ecoreClass="iPos_Datamodel.ecore#//DataStorageQueryResponse"> + <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//DataStorageQueryResponse/positionEvents"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//DataStorageQueryResponse/trackingTaskId"/> + </genClasses> + <genClasses ecoreClass="iPos_Datamodel.ecore#//MessageReceivedEvent"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//MessageReceivedEvent/protocolName"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//MessageReceivedEvent/serializedMsg"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//MessageReceivedEvent/agentId"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//MessageReceivedEvent/extractedAttributes"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//MessageReceivedEvent/timestamp"/> + </genClasses> + <nestedGenPackages prefix="OFBiz" disposableProviderFactory="true" ecorePackage="iPos_Datamodel.ecore#//OFBiz"> + <genClasses ecoreClass="iPos_Datamodel.ecore#//OFBiz/Picklist"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//OFBiz/Picklist/picklistId"/> + <genFeatures notify="false" createChild="false" propertySortChoices="true" + ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//OFBiz/Picklist/picklistRoles"/> + <genFeatures notify="false" createChild="false" propertySortChoices="true" + ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//OFBiz/Picklist/picklistBins"/> + </genClasses> + <genClasses ecoreClass="iPos_Datamodel.ecore#//OFBiz/PicklistBin"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//OFBiz/PicklistBin/picklistId"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//OFBiz/PicklistBin/binLocationNumber"/> + <genFeatures notify="false" createChild="false" propertySortChoices="true" + ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//OFBiz/PicklistBin/picklistItems"/> + </genClasses> + <genClasses ecoreClass="iPos_Datamodel.ecore#//OFBiz/PicklistItem"> + <genFeatures notify="false" createChild="false" propertySortChoices="true" + ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//OFBiz/PicklistItem/inventoryItem"/> + </genClasses> + <genClasses ecoreClass="iPos_Datamodel.ecore#//OFBiz/InventoryItem"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//OFBiz/InventoryItem/inventoryItemId"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//OFBiz/InventoryItem/containerId"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//OFBiz/InventoryItem/productId"/> + </genClasses> + <genClasses ecoreClass="iPos_Datamodel.ecore#//OFBiz/PicklistRole"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//OFBiz/PicklistRole/picklistId"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//OFBiz/PicklistRole/partyId"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//OFBiz/PicklistRole/roleTypeId"/> + </genClasses> + </nestedGenPackages> + <nestedGenPackages prefix="IPosDevKit" disposableProviderFactory="true" ecorePackage="iPos_Datamodel.ecore#//IPosDevKit"> + <genClasses ecoreClass="iPos_Datamodel.ecore#//IPosDevKit/TrackingRequest"/> + <genClasses ecoreClass="iPos_Datamodel.ecore#//IPosDevKit/MonitoringRequest"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//IPosDevKit/MonitoringRequest/frameIds"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//IPosDevKit/MonitoringRequest/delta"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//IPosDevKit/MonitoringRequest/updateFrequency"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//IPosDevKit/MonitoringRequest/type"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//IPosDevKit/MonitoringRequest/id"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//IPosDevKit/MonitoringRequest/fusionStrategy"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//IPosDevKit/MonitoringRequest/exitNotification"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//IPosDevKit/MonitoringRequest/properties"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//IPosDevKit/MonitoringRequest/monitoringTaskId"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//IPosDevKit/MonitoringRequest/requestorProtocol"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//IPosDevKit/MonitoringRequest/serializationType"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//IPosDevKit/MonitoringRequest/refSystemId"/> + </genClasses> + <genClasses ecoreClass="iPos_Datamodel.ecore#//IPosDevKit/WorldModelUpdateRequest"/> + <genClasses ecoreClass="iPos_Datamodel.ecore#//IPosDevKit/DataStorageRequest"/> + <genClasses ecoreClass="iPos_Datamodel.ecore#//IPosDevKit/WorldModelQueryRequest"/> + <genClasses ecoreClass="iPos_Datamodel.ecore#//IPosDevKit/DataStorageQueryRequest"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//IPosDevKit/DataStorageQueryRequest/trackingTaskId"/> + </genClasses> + <genClasses ecoreClass="iPos_Datamodel.ecore#//IPosDevKit/AgentRegistrationRequest"/> + <genClasses ecoreClass="iPos_Datamodel.ecore#//IPosDevKit/SensorConfigurationRequest"/> + <genClasses ecoreClass="iPos_Datamodel.ecore#//IPosDevKit/IposPositionEvent"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//IPosDevKit/IposPositionEvent/agentId"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//IPosDevKit/IposPositionEvent/sensorId"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//IPosDevKit/IposPositionEvent/type"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//IPosDevKit/IposPositionEvent/sensorType"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//IPosDevKit/IposPositionEvent/lastPosUpdate"/> + <genFeatures notify="false" createChild="false" propertySortChoices="true" + ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//IPosDevKit/IposPositionEvent/position"/> + <genFeatures notify="false" createChild="false" propertySortChoices="true" + ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//IPosDevKit/IposPositionEvent/orientation"/> + <genFeatures notify="false" createChild="false" propertySortChoices="true" + ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//IPosDevKit/IposPositionEvent/zoneDescriptors"/> + </genClasses> + <genClasses ecoreClass="iPos_Datamodel.ecore#//IPosDevKit/IPosRawdataEvent"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//IPosDevKit/IPosRawdataEvent/agentId"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//IPosDevKit/IPosRawdataEvent/sensorId"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//IPosDevKit/IPosRawdataEvent/agentType"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//IPosDevKit/IPosRawdataEvent/sensorType"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//IPosDevKit/IPosRawdataEvent/timeStamp"/> + </genClasses> + <genClasses ecoreClass="iPos_Datamodel.ecore#//IPosDevKit/IPosBeaconEvent"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//IPosDevKit/IPosBeaconEvent/distances"/> + </genClasses> + <genClasses ecoreClass="iPos_Datamodel.ecore#//IPosDevKit/IPosUWBEvent"/> + <genClasses ecoreClass="iPos_Datamodel.ecore#//IPosDevKit/IPosBTEvent"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//IPosDevKit/IPosBTEvent/rss"/> + </genClasses> + <genClasses ecoreClass="iPos_Datamodel.ecore#//IPosDevKit/IPosProximityEvent"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//IPosDevKit/IPosProximityEvent/tagId"/> + </genClasses> + <genClasses ecoreClass="iPos_Datamodel.ecore#//IPosDevKit/IPosNFCEvent"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//IPosDevKit/IPosNFCEvent/tagData"/> + </genClasses> + <genClasses ecoreClass="iPos_Datamodel.ecore#//IPosDevKit/IPosBarcodeEvent"/> + <genClasses ecoreClass="iPos_Datamodel.ecore#//IPosDevKit/IPosRFIDEvent"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//IPosDevKit/IPosRFIDEvent/location"/> + </genClasses> + <genClasses ecoreClass="iPos_Datamodel.ecore#//IPosDevKit/IPosOtherProxEvent"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//IPosDevKit/IPosOtherProxEvent/data"/> + </genClasses> + <genClasses ecoreClass="iPos_Datamodel.ecore#//IPosDevKit/IPosOtherBeaconEvent"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//IPosDevKit/IPosOtherBeaconEvent/data"/> + </genClasses> + <genClasses ecoreClass="iPos_Datamodel.ecore#//IPosDevKit/IposMsgRcvEvent"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//IPosDevKit/IposMsgRcvEvent/protocolName"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//IPosDevKit/IposMsgRcvEvent/serializedMsg"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//IPosDevKit/IposMsgRcvEvent/lastPosUpdate"/> + <genFeatures notify="false" createChild="false" propertySortChoices="true" + ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//IPosDevKit/IposMsgRcvEvent/lastKnownPosition"/> + <genFeatures notify="false" createChild="false" propertySortChoices="true" + ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//IPosDevKit/IposMsgRcvEvent/lastKnownOrientation"/> + <genFeatures notify="false" createChild="false" propertySortChoices="true" + ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//IPosDevKit/IposMsgRcvEvent/lastKnownZonedescriptors"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//IPosDevKit/IposMsgRcvEvent/agentId"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//IPosDevKit/IposMsgRcvEvent/extractedAttributes"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//IPosDevKit/IposMsgRcvEvent/timestamp"/> + </genClasses> + </nestedGenPackages> + <nestedGenPackages prefix="Tooz" disposableProviderFactory="true" ecorePackage="iPos_Datamodel.ecore#//Tooz"> + <genClasses ecoreClass="iPos_Datamodel.ecore#//Tooz/MonitoringTarget"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//Tooz/MonitoringTarget/targetSensorId"/> + </genClasses> + <genClasses ecoreClass="iPos_Datamodel.ecore#//Tooz/DistantEntity"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//Tooz/DistantEntity/localSensorId"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//Tooz/DistantEntity/localAgentId"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//Tooz/DistantEntity/distantEntityId"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//Tooz/DistantEntity/distance"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//Tooz/DistantEntity/proximityIndex"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//Tooz/DistantEntity/entityData"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//Tooz/DistantEntity/timeStamp"/> + </genClasses> + </nestedGenPackages> + <nestedGenPackages prefix="VDA5050" disposableProviderFactory="true" ecorePackage="iPos_Datamodel.ecore#//VDA5050"> + <genClasses ecoreClass="iPos_Datamodel.ecore#//VDA5050/AgvState"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//VDA5050/AgvState/timeStamp"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//VDA5050/AgvState/serialNumber"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//VDA5050/AgvState/lastNodeId"/> + <genFeatures notify="false" createChild="false" propertySortChoices="true" + ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//VDA5050/AgvState/batteryState"/> + <genFeatures notify="false" createChild="false" propertySortChoices="true" + ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//VDA5050/AgvState/errors"/> + <genFeatures notify="false" createChild="false" propertySortChoices="true" + ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//VDA5050/AgvState/agvposition"/> + <genFeatures notify="false" createChild="false" propertySortChoices="true" + ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//VDA5050/AgvState/loads"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//VDA5050/AgvState/manufacturer"/> + </genClasses> + <genClasses ecoreClass="iPos_Datamodel.ecore#//VDA5050/BatteryState"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//VDA5050/BatteryState/batteryCharge"/> + </genClasses> + <genClasses ecoreClass="iPos_Datamodel.ecore#//VDA5050/Error"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//VDA5050/Error/errorType"/> + </genClasses> + <genClasses ecoreClass="iPos_Datamodel.ecore#//VDA5050/AgvPosition"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//VDA5050/AgvPosition/x"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//VDA5050/AgvPosition/y"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//VDA5050/AgvPosition/theta"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//VDA5050/AgvPosition/mapId"/> + </genClasses> + <genClasses ecoreClass="iPos_Datamodel.ecore#//VDA5050/Load"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//VDA5050/Load/loadId"/> + </genClasses> + </nestedGenPackages> + <nestedGenPackages prefix="OSM" disposableProviderFactory="true" ecorePackage="iPos_Datamodel.ecore#//OSM"> + <genClasses ecoreClass="iPos_Datamodel.ecore#//OSM/OSMObject"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//OSM/OSMObject/id"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//OSM/OSMObject/sensorId"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//OSM/OSMObject/type"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//OSM/OSMObject/sensorType"/> + <genFeatures notify="false" createChild="false" propertySortChoices="true" + ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//OSM/OSMObject/osmposition"/> + <genFeatures notify="false" createChild="false" propertySortChoices="true" + ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//OSM/OSMObject/osmorientation"/> + <genFeatures notify="false" createChild="false" propertySortChoices="true" + ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//OSM/OSMObject/osmextractedattributes"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//OSM/OSMObject/lastPosUpdate"/> + <genFeatures notify="false" createChild="false" propertySortChoices="true" + ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//OSM/OSMObject/osmzonedescriptor"/> + </genClasses> + <genClasses ecoreClass="iPos_Datamodel.ecore#//OSM/OSMPosition"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//OSM/OSMPosition/refSystemId"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//OSM/OSMPosition/accuracy"/> + <genFeatures notify="false" createChild="false" propertySortChoices="true" + ecoreFeature="ecore:EReference iPos_Datamodel.ecore#//OSM/OSMPosition/osmpoint"/> + </genClasses> + <genClasses ecoreClass="iPos_Datamodel.ecore#//OSM/OSMPoint"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//OSM/OSMPoint/x"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//OSM/OSMPoint/y"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//OSM/OSMPoint/z"/> + </genClasses> + <genClasses ecoreClass="iPos_Datamodel.ecore#//OSM/OSMOrientation"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//OSM/OSMOrientation/x"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//OSM/OSMOrientation/y"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//OSM/OSMOrientation/z"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//OSM/OSMOrientation/w"/> + </genClasses> + <genClasses ecoreClass="iPos_Datamodel.ecore#//OSM/OSMExtractedAttributes"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//OSM/OSMExtractedAttributes/batteryChargeLevel"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//OSM/OSMExtractedAttributes/loadedItems"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//OSM/OSMExtractedAttributes/errors"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//OSM/OSMExtractedAttributes/theta"/> + </genClasses> + <genClasses ecoreClass="iPos_Datamodel.ecore#//OSM/OSMZoneDescriptor"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//OSM/OSMZoneDescriptor/zoneId"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//OSM/OSMZoneDescriptor/notificationType"/> + </genClasses> + <genClasses ecoreClass="iPos_Datamodel.ecore#//OSM/OSMMonitoringTarget"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//OSM/OSMMonitoringTarget/monitoringTaskId"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute iPos_Datamodel.ecore#//OSM/OSMMonitoringTarget/protocol"/> + </genClasses> + </nestedGenPackages> + <nestedGenPackages prefix="IPos_Datamodel_print" disposableProviderFactory="true" + ecorePackage="iPos_Datamodel.ecore#//IPos_Datamodel_print"/> </genPackages> </genmodel:GenModel> diff --git a/emf_datamodel/model/iPos_Datamodel.jpg b/emf_datamodel/model/iPos_Datamodel.jpg deleted file mode 100644 index 86fdaaf1c8c8231d456b4ef2cbdc1f6ca1ea747f..0000000000000000000000000000000000000000 Binary files a/emf_datamodel/model/iPos_Datamodel.jpg and /dev/null differ diff --git a/init_Industrierobotik.txt b/init_Industrierobotik.txt new file mode 100644 index 0000000000000000000000000000000000000000..969b1b7c0a18d45c5c21cd9c7c5cafe4bc813bf6 --- /dev/null +++ b/init_Industrierobotik.txt @@ -0,0 +1,5 @@ +{"frames": [{"id": "cobot1_door_zone", "space": [{"position": {"refSystemId": "ROOT", "point": {"x": 2.0,"y": 0.0,"z": 0.0}, "accuracy": 0.0}, "orientation": {"x": 1.0,"y": 0.5,"z": 1.0, "w": 1.5}, "x": 6.0, "y": 4.0, "z":6.0}]}, {"id": "cobot1_window_zone", "space": [{"position": {"refSystemId": "ROOT", "point": {"x": 2.0,"y": 4.0,"z": 0.0}, "accuracy": 0.0}, "orientation": {"x": 1.0,"y": 0.5,"z": 1.0, "w": 1.5}, "x": 6.0, "y": 4.0, "z":6.0}]}, {"id": "robolab_east", "space": [{"position": {"refSystemId": "ROOT", "point": {"x": 4.0,"y": 2.0,"z": 0.0}, "accuracy": 0.0}, "orientation": {"x": 1.0,"y": 0.5,"z": 1.0, "w": 1.5}, "x": 4.0, "y": 4.0, "z":4.0}]}, {"id": "robolab_west", "space": [{"position": {"refSystemId": "ROOT", "point": {"x": -4.0,"y": 2.0,"z": 0.0}, "accuracy": 0.0}, "orientation": {"x": 1.0,"y": 0.5,"z": 1.0, "w": 1.5}, "x": 8.0, "y": 10.0, "z":6.0}]}, {"id": "robolab_armarea", "space": [{"position": {"refSystemId": "CETI_ROBOTARM_CELL", "point": {"x": 0.0,"y": 0.0,"z": 0.0}, "accuracy": 0.0}, "orientation": {"x": 1.0,"y": 0.5,"z": 1.0, "w": 1.5}, "x": 8.0, "y": 10.0, "z":6.0}]} ]} +{"refSystems": [{"id": "ROOT"}, {"id": "CETI_ROOT", "position": {"refSystemId": "ROOT", "point": {"x": 0.5,"y": 0.75,"z": 1.0}, "accuracy": 1.0}, "orientation": {"x": 0.7071067811865477,"y": 0.0,"z": 0.0, "w": 0.7071067811865477}}, {"id": "CETI_ROBOLAB", "position": {"refSystemId": "CETI_ROOT", "point": {"x": 0.2,"y": 0.2,"z": 0.2}, "accuracy": 1.0}, "orientation": {"x": 0.4082481001180531,"y": 0.4082481001180531,"z": 0.4082481001180531, "w": 0.7071067811865477}}, {"id": "CETI_OFFICE", "position": {"refSystemId": "CETI_ROOT", "point": {"x": 2.0,"y": 2.0,"z": 0.0}, "accuracy": 1.0}, "orientation": {"x": 0.0,"y": 0.0,"z": 0.0, "w": 0.0}}, {"id": "TL_TESTHALL", "position": {"refSystemId": "ROOT", "point": {"x": 40.0,"y": 60.0,"z": 0.0}, "accuracy": 1.0}, "orientation": {"x": 0.0,"y": 0.0,"z": 0.21643961393810285, "w": 0.9762960071199334}}, {"id": "CETI_ROBOTARM_CELL", "position": {"refSystemId": "CETI_ROBOLAB", "point": {"x": 0.0,"y": 1.2,"z": 2.2}, "accuracy": 1.0}, "orientation": {"x": 0.2705992818596786,"y": 0.2705992818596786,"z": 0.0, "w": 0.9238795325112868}}]} +{"objectConfigs": [{"agentId": "Employee_1", "sensorId": "UWB_2", "agentType": "HUMAN", "sensorType": "UWB"}, {"agentId": "turtlebot", "sensorId": "UWB_1", "agentType": "ROBOT", "sensorType": "UWB"}, {"agentId": "turtlebot", "sensorId": "98:CD:AC:26:2D:18", "agentType": "ROBOT", "sensorType": "RFID_SCANNER"}, {"agentId": "turtlebot", "sensorId": "handy1", "agentType": "ROBOT", "sensorType": "IMU"}, {"agentId": "tooz_employee", "sensorId": "tooz_employee_uwb", "agentType": "HUMAN", "sensorType": "UWB"}, {"agentId": "tooz_employee", "sensorId": "tooz_employee_bt", "agentType": "HUMAN", "sensorType": "BT"}, {"agentId": "TL_TUD-Virtual_AGV", "sensorId": "TL_TUD-Virtual_AGV", "agentType": "Robot", "sensorType": "virtual"}, {"agentId": "TL_TUD-1", "sensorId": "TL_TUD-1", "agentType": "Robot", "sensorType": "virtual"}, {"agentId": "TL_TUD-2", "sensorId": "TL_TUD-2", "agentType": "Robot", "sensorType": "virtual"}, {"agentId": "TL_TUD-3", "sensorId": "TL_TUD-3", "agentType": "Robot", "sensorType": "virtual"}, {"agentId": "TL_TUD-4", "sensorId": "TL_TUD-4", "agentType": "Robot", "sensorType": "virtual"}, {"agentId": "TL_TUD-5", "sensorId": "TL_TUD-5", "agentType": "Robot", "sensorType": "virtual"}]} +{"pois": [{"id": "UWB_BEACON_1", "description": "Beacon_Position", "data": {"type" : "UWB"}, "position": {"refSystemId": "ROOT", "point": {"x": 3.1,"y": 0.5,"z": 0.0}, "accuracy": 1.0}, "orientation": {"x": 0.0,"y": 0.0,"z": 0.0, "w": 0.0} }, {"id": "UWB_BEACON_2", "description": "Beacon_Position", "data": {"type" : "UWB"}, "position": {"refSystemId": "ROOT", "point": {"x": -0.3,"y": 4.5,"z": 0.0}, "accuracy": 1.0}, "orientation": {"x": 0.0,"y": 0.0,"z": 0.0, "w": 0.0}}, {"id": "83221710", "description": "RFID_TAG", "data": {"type" : "NFC"}, "position": {"refSystemId": "ROOT", "point": {"x": 2.1,"y": 0.4,"z": 0.5}, "accuracy": 0.1}, "orientation": {"x": 0.0,"y": 0.0,"z": 0.0, "w": 0.0} }, {"id": "31762128", "description": "RFID_TAG", "data": {"type" : "NFC"}, "position": {"refSystemId": "ROOT", "point": {"x": 2.2,"y": 3.4,"z": 0.5}, "accuracy": 0.1}, "orientation": {"x": 0.0,"y": 0.0,"z": 0.0, "w": 0.0} }, {"id": "885", "description": "Beacon_Position", "data": {"type" : "UWB"}, "position": {"refSystemId": "ROOT", "point": {"x": 0,"y": 0,"z": 0.97}, "accuracy": 0.01}, "orientation": {"x": 0.0,"y": 0.0,"z": 0.0, "w": 0.0} }, {"id": "2934", "description": "Beacon_Position", "data": {"type" : "UWB"}, "position": {"refSystemId": "ROOT", "point": {"x": 4.24,"y": 1.33,"z": 1.0}, "accuracy": 0.01}, "orientation": {"x": 0.0,"y": 0.0,"z": 0.0, "w": 0.0} }, {"id": "3383", "description": "Beacon_Position", "data": {"type" : "UWB"}, "position": {"refSystemId": "ROOT", "point": {"x": 1.25,"y": 5.89,"z": 1.06}, "accuracy": 0.01}, "orientation": {"x": 0.0,"y": 0.0,"z": 0.0, "w": 0.0} }, {"id": "1107", "description": "Beacon_Position", "data": {"type" : "UWB"}, "position": {"refSystemId": "ROOT", "point": {"x": 4.24,"y": 5.83,"z": 1.05}, "accuracy": 0.01}, "orientation": {"x": 0.0,"y": 0.0,"z": 0.0, "w": 0.0} }]} +{"monitoringRequests": [{"frameIds": ["cobot1_door_zone", "cobot1_window_zone"], "monitoringTaskId": "RobolabMonitoringCeti", "refSystemId": "CETI_ROBOTARM_CELL", "serializationType": "protobuf"}, {"frameIds": ["cobot1_door_zone", "cobot1_window_zone"], "monitoringTaskId": "AGVViewer_VDA5050", "refSystemId": "ROOT", "serializationType": "json"}]} \ No newline at end of file diff --git a/init_Orderpicker.txt b/init_Orderpicker.txt new file mode 100644 index 0000000000000000000000000000000000000000..3baf143e7703bcacbe1e832b9d0d9e592c7c058b --- /dev/null +++ b/init_Orderpicker.txt @@ -0,0 +1,5 @@ +{"frames": [{"id": "box_1", "space": [{"position": {"refSystemId": "ROOT", "point": {"x": 0.5,"y": 2.7,"z": 0.0}, "accuracy": 0.0}, "orientation": {"x": 1.0,"y": 0.5,"z": 1.0, "w": 1.5}, "x": 0.8, "y": 0.5, "z":15.0}]}, {"id": "box_2", "space": [{"position": {"refSystemId": "ROOT", "point": {"x": 0.5,"y": 3.45,"z": 0.0}, "accuracy": 0.0}, "orientation": {"x": 1.0,"y": 0.5,"z": 1.0, "w": 1.5}, "x": 0.8, "y": 0.5, "z":15.0}]}, {"id": "box_3", "space": [{"position": {"refSystemId": "ROOT", "point": {"x": 0.5,"y": 4.25,"z": 0.0}, "accuracy": 0.0}, "orientation": {"x": 1.0,"y": 0.5,"z": 1.0, "w": 1.5}, "x": 0.8, "y": 0.5, "z":15.0}]}, {"id": "shipmentBin_1", "space": [{"position": {"refSystemId": "ROOT", "point": {"x": 3.0,"y": 2.57,"z": 0.0}, "accuracy": 0.0}, "orientation": {"x": 1.0,"y": 0.5,"z": 1.0, "w": 1.5}, "x": 0.8, "y": 0.5, "z":15.0}]}, {"id": "shipmentBin_2", "space": [{"position": {"refSystemId": "ROOT", "point": {"x": 2.7,"y": 3.75,"z": 0.0}, "accuracy": 0.0}, "orientation": {"x": 1.0,"y": 0.5,"z": 1.0, "w": 1.5}, "x": 0.8, "y": 0.5, "z":15.0}]}, {"id": "cobot1_door_zone", "space": [{"position": {"refSystemId": "ROOT", "point": {"x": 2.0,"y": 1.0,"z": 0.0}, "accuracy": 0.0}, "orientation": {"x": 1.0,"y": 0.5,"z": 1.0, "w": 1.5}, "x": 6.0, "y": 4.0, "z":6.0}]}, {"id": "cobot1_window_zone", "space": [{"position": {"refSystemId": "ROOT", "point": {"x": 2.0,"y": 5.0,"z": 0.0}, "accuracy": 0.0}, "orientation": {"x": 1.0,"y": 0.5,"z": 1.0, "w": 1.5}, "x": 6.0, "y": 4.0, "z":6.0}]} ]} +{"refSystems": [{"id": "ROOT"}, {"id": "CETI_ROOT", "position": {"refSystemId": "ROOT", "point": {"x": 3.05,"y": 2.08,"z": 0.0}, "accuracy": 1.0}, "orientation": {"x": 0.0,"y": 0.0,"z": 0.0, "w": 0.0}}]} +{"objectConfigs": [{"agentId": "Employee_1", "sensorId": "UWB_2", "agentType": "HUMAN", "sensorType": "UWB"}, {"agentId": "turtlebot", "sensorId": "UWB_1", "agentType": "ROBOT", "sensorType": "UWB"}, {"agentId": "turtlebot", "sensorId": "98:CD:AC:26:2D:18", "agentType": "ROBOT", "sensorType": "RFID_SCANNER"}]} +{"pois": [{"id": "885", "description": "Beacon_Position", "data": {"type" : "UWB"}, "position": {"refSystemId": "ROOT", "point": {"x": 0,"y": 0,"z": 0.97}, "accuracy": 0.01}, "orientation": {"x": 0.0,"y": 0.0,"z": 0.0, "w": 0.0} }, {"id": "2934", "description": "Beacon_Position", "data": {"type" : "UWB"}, "position": {"refSystemId": "ROOT", "point": {"x": 4.24,"y": 1.33,"z": 1.0}, "accuracy": 0.01}, "orientation": {"x": 0.0,"y": 0.0,"z": 0.0, "w": 0.0} }, {"id": "3383", "description": "Beacon_Position", "data": {"type" : "UWB"}, "position": {"refSystemId": "ROOT", "point": {"x": 1.25,"y": 5.89,"z": 1.06}, "accuracy": 0.01}, "orientation": {"x": 0.0,"y": 0.0,"z": 0.0, "w": 0.0} }, {"id": "1107", "description": "Beacon_Position", "data": {"type" : "UWB"}, "position": {"refSystemId": "ROOT", "point": {"x": 4.24,"y": 5.83,"z": 1.05}, "accuracy": 0.01}, "orientation": {"x": 0.0,"y": 0.0,"z": 0.0, "w": 0.0} }, {"id": "83221710", "description": "RFID_TAG", "data": {"type" : "NFC"}, "position": {"refSystemId": "ROOT", "point": {"x": 1.8,"y": 2.3,"z": 0.5}, "accuracy": 0.1}, "orientation": {"x": 0.0,"y": 0.0,"z": 0.0, "w": 0.0} }, {"id": "31762128", "description": "RFID_TAG", "data": {"type" : "NFC"}, "position": {"refSystemId": "ROOT", "point": {"x": 1.6,"y": 2.9,"z": 0.5}, "accuracy": 0.1}, "orientation": {"x": 0.0,"y": 0.0,"z": 0.0, "w": 0.0} }]} +{"monitoringRequests": [{"frameIds": ["cobot1_door_zone", "cobot1_window_zone"], "monitoringTaskId": "RobolabMonitoringCeti", "refSystemId": "CETI_ROOT", "serializationType": "protobuf"}, {"frameIds": ["cobot1_door_zone", "cobot1_window_zone"], "monitoringTaskId": "ipos/client/position", "serializationType": "json"}]} \ No newline at end of file diff --git a/init_Sensordatenfusion.txt b/init_Sensordatenfusion.txt new file mode 100644 index 0000000000000000000000000000000000000000..a79b0ffe8ba43eb9b40a560fd4524c0d9c8d7a08 --- /dev/null +++ b/init_Sensordatenfusion.txt @@ -0,0 +1,5 @@ +{"frames": [{"id": "robolab", "space": [{"position": {"refSystemId": "ROOT", "point": {"x": 2.0,"y": 0.0,"z": 0.0}, "accuracy": 0.0}, "orientation": {"x": 1.0,"y": 0.5,"z": 1.0, "w": 1.5}, "x": 10.0, "y": 10.0, "z":10.0}]} ]} +{"refSystems": [{"id": "ROOT"}]} +{"objectConfigs": [{"agentId": "turtlebot", "sensorId": "UWB_1", "agentType": "ROBOT", "sensorType": "UWB"}, {"agentId": "turtlebot", "sensorId": "98:CD:AC:26:2D:18", "agentType": "ROBOT", "sensorType": "RFID_SCANNER"}]} +{"pois": [{"id": "83221710", "description": "RFID_TAG", "data": {"type" : "NFC"}, "position": {"refSystemId": "ROOT", "point": {"x": 2.1,"y": 0.4,"z": 0.5}, "accuracy": 0.1}, "orientation": {"x": 0.0,"y": 0.0,"z": 0.0, "w": 0.0} }, {"id": "31762128", "description": "RFID_TAG", "data": {"type" : "NFC"}, "position": {"refSystemId": "ROOT", "point": {"x": 2.2,"y": 3.4,"z": 0.5}, "accuracy": 0.1}, "orientation": {"x": 0.0,"y": 0.0,"z": 0.0, "w": 0.0} }]} +{"monitoringRequests": [{"frameId": "robolab", "monitoringTaskId": "ipos/client/position", "serializationType": "json"}]} \ No newline at end of file diff --git a/logback-spring.xml b/logback-spring.xml new file mode 100644 index 0000000000000000000000000000000000000000..d94e304855d95c18bae85380a1b18636ee46da84 --- /dev/null +++ b/logback-spring.xml @@ -0,0 +1,31 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<configuration> + + <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> + <filter class="ipos.project.CustomLoggingFilter" /> + <layout class="ch.qos.logback.classic.PatternLayout"> + <Pattern> + %black(%d{ISO8601}) %highlight(%-5level) [%blue(%t)] %yellow(%C{1.}):: %msg%n%throwable + </Pattern> + </layout> + </appender> + +<appender name="FILE" class="ch.qos.logback.core.FileAppender"> + <file>testFile.log</file> + <append>true</append> + <!-- set immediateFlush to false for much higher logging throughput --> + <immediateFlush>false</immediateFlush> + <!-- encoders are assigned the type + ch.qos.logback.classic.encoder.PatternLayoutEncoder by default --> + <encoder> + <pattern>%-4relative [%thread] %-5level %logger{35} - %msg%n</pattern> + </encoder> + </appender> + + + <root level="INFO"> + <appender-ref ref="STDOUT" /> + <appender-ref ref="FILE" /> + </root> +</configuration> \ No newline at end of file diff --git a/models b/models new file mode 160000 index 0000000000000000000000000000000000000000..e935f40576d779242f0b4f4ed1dae6e713d483b2 --- /dev/null +++ b/models @@ -0,0 +1 @@ +Subproject commit e935f40576d779242f0b4f4ed1dae6e713d483b2 diff --git a/src/main/java/ipos/project/CustomLoggingFilter.java b/src/main/java/ipos/project/CustomLoggingFilter.java new file mode 100644 index 0000000000000000000000000000000000000000..d3ff6af081244c55f2894828415cd761744b9d4e --- /dev/null +++ b/src/main/java/ipos/project/CustomLoggingFilter.java @@ -0,0 +1,42 @@ +package ipos.project; + +import ch.qos.logback.classic.spi.ILoggingEvent; +import ch.qos.logback.core.filter.Filter; +import ch.qos.logback.core.spi.FilterReply; + +public class CustomLoggingFilter extends Filter<ILoggingEvent> { + + @Override + public FilterReply decide(ILoggingEvent event) { + if (event.getMessage().contains("Eventfilter:")) { + return FilterReply.DENY; + } else if (event.getMessage().contains("SDF:")) { + return FilterReply.DENY; + } else if (event.getMessage().contains("SDF-DEBUG:")) { + return FilterReply.DENY; + } else if (event.getMessage().contains("SDF-PUB:")) { + return FilterReply.DENY; + } else if (event.getMessage().contains("INDFRO:")){ + return FilterReply.ACCEPT; + } else if (event.getMessage().contains("INDFRO-DEBUG:")){ + return FilterReply.ACCEPT; + } else if (event.getMessage().contains("ODO:")){ + return FilterReply.DENY; + } else if (event.getMessage().contains("Received a Message:")){ // MQTT-library meldet sich + return FilterReply.DENY; + } else if (event.getMessage().contains("OP:")){ + return FilterReply.DENY; + } else if (event.getMessage().contains("TOOZ:")){ + return FilterReply.ACCEPT; + } else if (event.getMessage().contains("VDA5050:")){ + return FilterReply.DENY; + } else if (event.getMessage().contains("OSM:")){ + return FilterReply.DENY; + }else if (event.getMessage().contains("SHELL:")){ + return FilterReply.ACCEPT; + } else { + return FilterReply.ACCEPT; + } + + } +} \ No newline at end of file diff --git a/src/main/java/ipos/project/DataModellntegration/SimpleSceneIntegration.java b/src/main/java/ipos/project/DataModellntegration/SimpleSceneIntegration.java deleted file mode 100644 index 9d3e0cbd8b310fcf3da302402f0c8ccfaf857750..0000000000000000000000000000000000000000 --- a/src/main/java/ipos/project/DataModellntegration/SimpleSceneIntegration.java +++ /dev/null @@ -1,28 +0,0 @@ -package ipos.project.DataModellntegration; - -import ipos.models.SimpleScene.IposPosition; -import ipos.project.DataModellntegration.service.impl.ExternalPubServiceImpl; -import ipos.project.mapper.ProtoJsonMap; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.jms.annotation.JmsListener; -import org.springframework.stereotype.Component; - -@Component -public class SimpleSceneIntegration { - private final Logger LOG = LoggerFactory.getLogger(getClass()); - - @Autowired - private ExternalPubServiceImpl mqttService; - - @JmsListener(destination = "/positions", containerFactory = "jmsListenFactory") - public void receiveMessage(IposPosition pos) { - LOG.trace("Data integration get: " + pos); - // we can translate a class into a string using several methods: 1) `.toString()` 2) `JsonFormat` in `ProtoJsonMap` - String jsonPos = ProtoJsonMap.toJson(pos); - if (jsonPos != null) { - this.mqttService.publish("test51/subscribe/positions", jsonPos, 0, false); - } - } -} diff --git a/src/main/java/ipos/project/DataModellntegration/SimpleSceneIntegration/SimpleSceneIntegration.java b/src/main/java/ipos/project/DataModellntegration/SimpleSceneIntegration/SimpleSceneIntegration.java new file mode 100644 index 0000000000000000000000000000000000000000..26180e5a8710a7fa0f2cbe5511a7573de88f95e4 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/SimpleSceneIntegration/SimpleSceneIntegration.java @@ -0,0 +1,205 @@ +package ipos.project.DataModellntegration.SimpleSceneIntegration; + +import com.fasterxml.jackson.core.JsonProcessingException; +import com.google.protobuf.InvalidProtocolBufferException; +import ipos.models.SimpleScene; +import ipos.project.DataModellntegration.SimpleSceneIntegration.api.MqttRequestHandler; +import ipos.project.DataModellntegration.SimpleSceneIntegration.service.SimpleSceneTransformer; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposMsgRcvEvent; +import ipos.project.devkit.utility.ExternalPubServiceImpl; +import ipos.project.DataModellntegration.iPos_Datamodel.*; +import ipos.project.DataModellntegration.iPos_Datamodel.impl.PositionEventImpl; +import ipos.project.UseCaseController.Administration; +import ipos.project.devkit.utility.OtherUtility; +import ipos.project.devkit.utility.ProtoJsonMap; +import org.apache.logging.log4j.LogManager; +import org.eclipse.emf.common.util.EList; +import org.eclipse.paho.client.mqttv3.MqttMessage; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; +import com.fasterxml.jackson.databind.ObjectMapper; + +import java.io.BufferedReader; +import java.io.File; +import java.io.FileReader; +import java.io.IOException; +import java.util.ArrayList; +import java.util.List; + +@Component +public class SimpleSceneIntegration { + // private static final Logger LOG = LoggerFactory.getLogger(SimpleSceneIntegration.class); + private static org.apache.logging.log4j.Logger LOG = LogManager.getLogger(); + + @Autowired + public SimpleSceneIntegration(ExternalPubServiceImpl mqttService_){ + mqttService = mqttService_; + } + + //@Autowired + public static ExternalPubServiceImpl mqttService; + + public static void init(){ + Administration.initialize(); + } + + public static void init(String path_to_init_data_file){ + Administration.initialize(); // clears WorldModel + handleMessageFile(path_to_init_data_file); + } + + public static void handleMessageFile(String path_to_message_file) { + File initFile = new File(path_to_message_file); + try { + for (String line : readLines(initFile)) { + SimpleScene.IposConfigWrapper iposConfigWrapper = ProtoJsonMap.fromJson(line, SimpleScene.IposConfigWrapper.class); + MqttRequestHandler.handleConfigWrapper(iposConfigWrapper); + } + }catch (InvalidProtocolBufferException e) { + LOG.error("Error trying to read JSON into protobuf-objects: "); + e.printStackTrace(); + } + } + + /** + * As opposed to the Stream<String>-approach using this approach reads the lines in order + * @param initFile + * @return + */ + private static List<String> readLines(File initFile) { + List<String> lines = new ArrayList<>(); + try(BufferedReader br = new BufferedReader(new FileReader(initFile))) { // br is automatically closed at the end of try-scope + for (String line; (line = br.readLine()) != null; ){ + lines.add(line); + } + } catch (IOException e) { + LOG.error("Error while reading the text file: "); + e.printStackTrace(); + } + return lines; + } + + /* + @JmsListener(destination = "/positions", containerFactory = "jmsListenFactory") + public static void receiveMessage(IposPosition pos) { + LOG.trace("Data integration get: " + pos); + // we can translate a class into a string using several methods: 1) `.toString()` 2) `JsonFormat` in `ProtoJsonMap` + String jsonPos = ProtoJsonMap.toJson(pos); + if (jsonPos != null) { + this.mqttService.publish("test51/subscribe/positions", jsonPos, 0, false); + } + }*/ + + public static void receiveMessage(DataStorageQueryResponse dsQueryResponse, String trackingTaskId, String serializationType){ + SimpleScene.IposQueryResponse queryResponse_proto = SimpleSceneTransformer.queryResp_Internal2SScene(dsQueryResponse, trackingTaskId); + MqttMessage mqttMessage = mqttService.createMqttMsg(queryResponse_proto, 0, false); + LOG.info("INDFRO: Publishing DataStorageQueryResponse on topic " + trackingTaskId + ": " + ProtoJsonMap.toJson(queryResponse_proto) + "; serializationType: " + serializationType); + OtherUtility.publishRespectingSerializationType(trackingTaskId, serializationType, queryResponse_proto); + } + + public static void receiveMessage(PositionEvent positionEvent, String monitoringTaskId, String notificationType, String serializationType) { + //String jsonPos = ProtoJsonMap.toJson(positionEvent); // we can translate a class into a string using several methods: 1) `.toString()` 2) `JsonFormat` in `ProtoJsonMap` + if (positionEvent != null) { + + // verwenden: DataServices.create-Methoden verwenden. Für ZoneDeskriptoren neue create-Funktionen schreiben + // PositionEvent posEvent_copy = duplicatePositionEvent(positionEvent); + // scale_position_frontend_app(posEvent_copy, 15); + SimpleScene.IposPositionEvent posEvent_proto = SimpleSceneTransformer.posEvent_internal2Proto(positionEvent, notificationType); + SimpleScene.IposMonitoringWrapper iposMonitoringWrapper = wrapIntoMonitoringWrapper(posEvent_proto); + logging_sdf(monitoringTaskId, serializationType, posEvent_proto); + logging_indfro(positionEvent, monitoringTaskId, serializationType); + logging_op(positionEvent, monitoringTaskId, serializationType); + OtherUtility.publishRespectingSerializationType(monitoringTaskId, serializationType, iposMonitoringWrapper); + + }else{ + LOG.warn("Warning: SimpleScene: Received empty PositionEvent"); + } + } + + public static void receiveMessage(IposMsgRcvEvent iposMsgRcvEvent, String monitoringTaskId, String serializationType){ + if (iposMsgRcvEvent != null){ + SimpleScene.IposMsgRcvEvent iposMsgRcvEvent_proto = SimpleSceneTransformer.iposMsgRcvEvent_internal2proto(iposMsgRcvEvent); + SimpleScene.IposMonitoringWrapper iposMonitoringWrapper_proto = wrapIntoMonitoringWrapper(iposMsgRcvEvent_proto); + OtherUtility.publishRespectingSerializationType(monitoringTaskId, serializationType, iposMonitoringWrapper_proto); + }else{ + LOG.warn("Warning: SimpleScene: Received empty IposMsgRcvEvent"); + } + } + + private static SimpleScene.IposMonitoringWrapper wrapIntoMonitoringWrapper(SimpleScene.IposPositionEvent posEvent_proto) { + SimpleScene.IposMonitoringWrapper.Builder iposMonitoringWrapper_proto = SimpleScene.IposMonitoringWrapper.newBuilder(); + iposMonitoringWrapper_proto.addIposPositionEvents(posEvent_proto); + return iposMonitoringWrapper_proto.build(); + } + + private static SimpleScene.IposMonitoringWrapper wrapIntoMonitoringWrapper(SimpleScene.IposMsgRcvEvent iposMsg) { + SimpleScene.IposMonitoringWrapper.Builder iposMonitoringWrapper_proto = SimpleScene.IposMonitoringWrapper.newBuilder(); + iposMonitoringWrapper_proto.addIposMsgRcvEvents(iposMsg); + return iposMonitoringWrapper_proto.build(); + } + + private static void logging_op(PositionEvent positionEvent, String monitoringTaskId, String serializationType) { + LOG.info("OP: Publishing PositionEvent on topic " + monitoringTaskId + ": ZoneDescriptors:" + logZoneDescr(positionEvent.getZonedescriptors()) + "; serializationType: " + serializationType); + LOG.info("OP:"); + } + + private static PositionEvent duplicatePositionEvent(PositionEvent positionEvent) { + PositionEventImpl posEvent_copy = (PositionEventImpl) positionEvent; + ObjectMapper objectMapper = new ObjectMapper(); + try { + posEvent_copy = objectMapper.readValue(objectMapper.writeValueAsString(positionEvent), PositionEventImpl.class); + } catch (JsonProcessingException e) { + LOG.warn("could not duplicate PositionEvent"); + e.printStackTrace(); + } + return posEvent_copy; + } + + private static void logging_indfro(PositionEvent positionEvent, String monitoringTaskId, String serializationType) { + LOG.info("INDFRO: Publishing PositionEvent on topic " + monitoringTaskId + ": ZoneDescriptors:" + logZoneDescr(positionEvent.getZonedescriptors()) + "; serializationType: " + serializationType); + } + + private static String logZoneDescr(EList<ZoneDescriptor> zonedescriptors) { + String logString = ""; + for (ZoneDescriptor zoneDescriptor : zonedescriptors){ + logString += "zoneId: " + zoneDescriptor.getZoneId() + "; "; + logString += "notificationType: " + zoneDescriptor.getNotificationType() + " "; + } + logString += "_______"; + return logString; + } + + private static PositionEvent scale_position_frontend_app(PositionEvent internalPositionEvent, int factor) { + Point3D point = (Point3D) internalPositionEvent.getPlacing().getPosition().getPoint(); + point.setX(factor*point.getX()); + point.setY(factor*point.getY()); + point.setZ(factor*point.getZ()); + return internalPositionEvent; + } + + private static void logging_sdf(String monitoringTaskId, String serializationType, SimpleScene.IposPositionEvent posEvent_proto) { + for (SimpleScene.IposObject obj : posEvent_proto.getObjectsList()){ + String agentId = obj.getId(); + String sensorId = obj.getSensorId(); + String sensorType = obj.getSensorType(); + String timestamp = obj.getLastPosUpdate(); + String topic = monitoringTaskId; + float accuracy = obj.getPosition().getAccuracy(); + String positionString = toPositionString(obj.getPosition()); + LOG.info("SDF-PUB: Publishing: sensorType: " + sensorType + "; timestamp: " + timestamp + "; accuracy: " + accuracy + "position: " + positionString + "; sensorId: " + sensorId + "; agentId: " + agentId + "; topic: " + monitoringTaskId + "; serializationType: " + serializationType); + LOG.info("SDF: "); + LOG.info("SDF: "); + LOG.info("SDF: "); + } + } + + private static String toPositionString(SimpleScene.IposPosition position) { + String posString = "("; + posString += "x: " + position.getPoint().getX(); + posString += "y: " + position.getPoint().getY(); + posString += "z: " + position.getPoint().getZ(); + posString += ")"; + return posString; + } + +} diff --git a/src/main/java/ipos/project/DataModellntegration/SimpleSceneIntegration/api/MqttRequestHandler.java b/src/main/java/ipos/project/DataModellntegration/SimpleSceneIntegration/api/MqttRequestHandler.java new file mode 100644 index 0000000000000000000000000000000000000000..43a83e74d2525cdf5bd4e5000cf011ac352b529e --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/SimpleSceneIntegration/api/MqttRequestHandler.java @@ -0,0 +1,118 @@ +package ipos.project.DataModellntegration.SimpleSceneIntegration.api; + +import com.google.protobuf.InvalidProtocolBufferException; +import ipos.models.SimpleScene; +import ipos.models.SimpleScene.IposMonitoringRequest; +import ipos.project.DataModellntegration.SimpleSceneIntegration.service.SimpleSceneTransformer; +import ipos.project.DataModellntegration.iPos_Datamodel.*; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.DataStorageQueryRequest; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest; +import ipos.project.UseCaseController.Administration; +import ipos.project.UseCaseController.PositionMonitoring; +import ipos.project.config.mqtt.Handler; +import ipos.project.config.mqtt.MqttListener; +import ipos.project.devkit.utility.ProtoJsonMap; +import org.apache.logging.log4j.LogManager; +import org.eclipse.paho.client.mqttv3.MqttMessage; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.jms.core.JmsTemplate; + +import java.util.List; + + +// subscribe to the topic. It's example +@MqttListener(PositionMonitoring.TOPIC_ConfigWrapper) +public class MqttRequestHandler implements Handler { + + private static org.apache.logging.log4j.Logger LOG = LogManager.getLogger(); + JmsTemplate jmsTemplate; + + @Autowired + public MqttRequestHandler(JmsTemplate jmsTemplate) { + this.jmsTemplate = jmsTemplate; + } + + // method that handle new message from the topic + public void handle(MqttMessage message) { + try { + // TODO: Zwischen JSON und Protobuf unterscheiden können + SimpleScene.IposConfigWrapper iposConfigWrapper = ProtoJsonMap.fromJson(message.toString(), SimpleScene.IposConfigWrapper.class); + // IposMonitoringRequest monReqProto = IposMonitoringRequest.parseFrom(message.getPayload()); + handleConfigWrapper(iposConfigWrapper); + } catch (InvalidProtocolBufferException e) { + e.printStackTrace(); + } + } + + public static void handleConfigWrapper(SimpleScene.IposConfigWrapper iposConfigWrapper) { + LOG.info("IposConfigWrapper received: \n" + + iposConfigWrapper.toString()); + // Annahme: iposConfigWrapper enthält für leere Felder leere Listen und nicht null + processMonitoringRequests(iposConfigWrapper); + processRefSystems(iposConfigWrapper.getRefSystemsList()); + processFrameConfigs(iposConfigWrapper.getFramesList()); // should be done not before refSystem-processing, as it might require one of the processed refSystems + processObjectConfigs(iposConfigWrapper.getObjectConfigsList()); + processPois(iposConfigWrapper.getPoisList()); + processQueryRequest(iposConfigWrapper.getQueryRequestsList()); + + // this.jmsTemplate.convertAndSend("/request123", monReqInternal); // submit request to the internal broker + } + + private static void processQueryRequest(List<SimpleScene.IposQueryRequest> queryRequestsList) { + for (SimpleScene.IposQueryRequest proto_qReq : queryRequestsList){ + DataStorageQueryRequest internal_qReq = SimpleSceneTransformer.queryReq_SScene2Internal(proto_qReq); + LOG.info("INDFRO:"); + LOG.info("INDFRO: Received QueryRequest for trackingTaskId " + internal_qReq.getTrackingTaskId()); + PositionMonitoring.receiveMessage(internal_qReq); + } + } + + /* + private SimpleScene.IposConfigWrapper replaceNullByEmptyList(SimpleScene.IposConfigWrapper configWrapper) { + SimpleScene.IposConfigWrapper.Builder configWrapper_NoNull = SimpleScene.IposConfigWrapper.newBuilder(); + configWrapper_NoNull.add; + } + */ + + private static void processPois(List<SimpleScene.POI> poisList) { + for (SimpleScene.POI poi : poisList){ + POI poi_internal = SimpleSceneTransformer.poi_SScene2Internal(poi); + Administration.handlePoi(poi_internal); + } + } + + private static void processRefSystems(List<SimpleScene.RefSystem> refSystemsList) { + for (SimpleScene.RefSystem refSystem : refSystemsList){ + ReferenceSystem refSystem_internal = SimpleSceneTransformer.refSystem_SScene2Internal(refSystem); + Administration.handleRefSystem(refSystem_internal); + } + } + + private static void processObjectConfigs(List<SimpleScene.IposObjectConfig> objectConfigsList) { + for( SimpleScene.IposObjectConfig objConfig : objectConfigsList){ + Agent agent = SimpleSceneTransformer.agent_SScene2Internal(objConfig); + Administration.handleAgent(agent); + } + } + + private static void processFrameConfigs(List<SimpleScene.IposFrameConfig> frames){ + /* + if (null == frames){ + LOG.info("ConfigWrapper-message contains no Frame-definitions"); + return; + } + */ + for( SimpleScene.IposFrameConfig frame : frames){ + Zone zone = SimpleSceneTransformer.zone_SScene2Internal(frame); + Administration.handleZone(zone); + } + } + + private static void processMonitoringRequests(SimpleScene.IposConfigWrapper iposConfigWrapper) { + for (IposMonitoringRequest monReq : iposConfigWrapper.getMonitoringRequestsList()){ + MonitoringRequest monReqInternal = SimpleSceneTransformer.monReq_SScene2Internal(monReq); + PositionMonitoring.receiveMessage(monReqInternal); + // TODO: send request via JMS to MonitoringController + } + } +} diff --git a/src/main/java/ipos/project/DataModellntegration/SimpleSceneIntegration/service/ExternalPubService.java b/src/main/java/ipos/project/DataModellntegration/SimpleSceneIntegration/service/ExternalPubService.java new file mode 100644 index 0000000000000000000000000000000000000000..69cb4a98491f5cb52180eb72ca47c27e415cef60 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/SimpleSceneIntegration/service/ExternalPubService.java @@ -0,0 +1,9 @@ +package ipos.project.DataModellntegration.SimpleSceneIntegration.service; + +import com.google.protobuf.AbstractMessageLite; +import org.eclipse.paho.client.mqttv3.MqttMessage; + +public interface ExternalPubService { + void publish(final String topic, final String msg , int qos, boolean retained); + MqttMessage createMqttMsg(AbstractMessageLite message, int qos, boolean retained); +} diff --git a/src/main/java/ipos/project/DataModellntegration/SimpleSceneIntegration/service/SimpleSceneTransformer.java b/src/main/java/ipos/project/DataModellntegration/SimpleSceneIntegration/service/SimpleSceneTransformer.java new file mode 100644 index 0000000000000000000000000000000000000000..dcf82d8825fecc66c3cecba46b04c36317b0833b --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/SimpleSceneIntegration/service/SimpleSceneTransformer.java @@ -0,0 +1,301 @@ +package ipos.project.DataModellntegration.SimpleSceneIntegration.service; + +import com.google.protobuf.ByteString; +import ipos.models.SimpleScene; +import ipos.project.DataModellntegration.iPos_Datamodel.*; +import com.google.protobuf.ProtocolStringList; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.DataStorageQueryRequest; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitFactory; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposMsgRcvEvent; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest; +import ipos.project.UseCaseController.PositionMonitoring; +import ipos.project.devkit.utility.OtherUtility; +import org.apache.logging.log4j.LogManager; +import org.eclipse.emf.common.util.EList; + +import java.util.*; +import java.util.stream.Collectors; + +public class SimpleSceneTransformer { + private static org.apache.logging.log4j.Logger LOG = LogManager.getLogger(); + private static IPosDevKitFactory devKitFactory = IPosDevKitFactory.eINSTANCE; + private static IPos_DatamodelFactory modelFactory = IPos_DatamodelFactory.eINSTANCE; + + public static MonitoringRequest monReq_SScene2Internal(SimpleScene.IposMonitoringRequest monReqProto){ + MonitoringRequest monReqInt = devKitFactory.createMonitoringRequest(); + monReqInt.setFrameIds(new LinkedList<>()); + monReqInt.getFrameIds().addAll(monReqProto.getFrameIdsList()); + monReqInt.setDelta(monReqProto.getDelta()); + monReqInt.setUpdateFrequency(monReqProto.getUpdateFrequency()); + monReqInt.setType(toJavaStringList(monReqProto.getTypeList())); + monReqInt.setId(toJavaStringList(monReqProto.getIdList())); + monReqInt.setFusionStrategy(monReqProto.getFusionStrategy()); + monReqInt.setExitNotification(monReqProto.getExitNotification()); + monReqInt.setProperties(monReqProto.getPropertiesList()); + monReqInt.setMonitoringTaskId(monReqProto.getMonitoringTaskId()); + monReqInt.setRefSystemId(monReqProto.getRefSystemId()); + monReqInt.setRequestorProtocol(monReqProto.getRequestorProtocol()); + monReqInt.setSerializationType(monReqProto.getSerializationType()); + return monReqInt; + } + + private static List<String> toJavaStringList(ProtocolStringList protoList){ + List<String> javaList = new ArrayList<>(); + for(int i = 0; i < protoList.size(); i++ ){ + javaList.add(protoList.get(i)); + } + return javaList; + } + + public static SimpleScene.IposMonitoringRequest monReq_Internal2SScene(){ + return null; + } + + public static SimpleScene.IposPositionEvent posEvent_internal2Proto(PositionEvent internalPosEvent, String notificationType){ + SimpleScene.IposObject.Builder protoIposObject = constructProtoIposObjectFromPosEvent(internalPosEvent); + if (protoIposObject == null) return null; + SimpleScene.IposPositionEvent.Builder protoIposPosEvent = transformIntoProtoIposPosEvent(notificationType, protoIposObject); + return protoIposPosEvent.build(); + } + + private static SimpleScene.IposObject.Builder constructProtoIposObjectFromPosEvent(PositionEvent internalPosEvent) { + LocalizableObject lObject = PositionMonitoring.getLObjectByIdOrNull(internalPosEvent.getLObjectId()); + if (null == lObject || null == lObject.getAgent()) { + LOG.error("Internal-PositionEvent could not be transformed into protobuf-format. " + + "No LocalizableObject with the provided sensor-id could be found, or no agent " + + "is associated to the LocalizableObject that has been found."); + return null; + } + SimpleScene.IposPoint3D.Builder protoPoint3D = transformIntoProtoPoint3D(internalPosEvent); + SimpleScene.IposPosition.Builder protoIposPosition = transformIntoProtoIposPosition(internalPosEvent, protoPoint3D); + SimpleScene.IposSimpleOrientation.Builder protoOrientation = transformIntoProtoOrientation(internalPosEvent); + List<SimpleScene.IposZoneDescriptor.Builder> zoneDescriptors = transformIntoProtoZoneDescriptorList(internalPosEvent); + SimpleScene.IposObject.Builder protoIposObject = transformIntoProtoObject(internalPosEvent, lObject, protoIposPosition, protoOrientation, zoneDescriptors); + return protoIposObject; + } + + private static List<SimpleScene.IposZoneDescriptor.Builder> transformIntoProtoZoneDescriptorList(PositionEvent internalPosEvent) { + return transformIntoProtoZoneDescriptorList(internalPosEvent.getZonedescriptors()); + } + + private static List<SimpleScene.IposZoneDescriptor.Builder> transformIntoProtoZoneDescriptorList(EList<ZoneDescriptor> zoneDescriptors) { + List<SimpleScene.IposZoneDescriptor.Builder> zoneDescriptorList = new LinkedList<>(); + for ( ZoneDescriptor zoneDescriptor_internal : zoneDescriptors){ + SimpleScene.IposZoneDescriptor.Builder protoIposZoneDescriptor = SimpleScene.IposZoneDescriptor.newBuilder(); + protoIposZoneDescriptor.setZoneId(zoneDescriptor_internal.getZoneId()); + protoIposZoneDescriptor.setNotificationType(zoneDescriptor_internal.getNotificationType()); + zoneDescriptorList.add(protoIposZoneDescriptor); + } + return zoneDescriptorList; + } + + private static SimpleScene.IposPositionEvent.Builder transformIntoProtoIposPosEvent(String notificationType, SimpleScene.IposObject.Builder protoIposObject) { + SimpleScene.IposPositionEvent.Builder protoIposPosEvent = SimpleScene.IposPositionEvent.newBuilder(); + /*if (!PositionMonitoring.UNDEFINED_TYPE.equals(notificationType)) { // if undefined, protobuf-object will be created without explicit notificationtype-information + protoIposPosEvent.setType(notificationType); + }*/ + protoIposPosEvent.addObjects(protoIposObject); + return protoIposPosEvent; + } + + private static SimpleScene.IposObject.Builder transformIntoProtoObject(PositionEvent internalPosEvent, LocalizableObject lObject, SimpleScene.IposPosition.Builder protoIposPosition, SimpleScene.IposSimpleOrientation.Builder protoOrientation, List<SimpleScene.IposZoneDescriptor.Builder> zoneDescriptors) { + SimpleScene.IposObject.Builder protoIposObject = SimpleScene.IposObject.newBuilder(); + protoIposObject.setSensorId(lObject.getId()).setSensorType(lObject.getSensorType()).setId(lObject.getAgent().getId()).setType(lObject.getAgent().getAgentType()).setOrientation(protoOrientation).setPosition(protoIposPosition).setLastPosUpdate(internalPosEvent.getTimeStamp()); + for (SimpleScene.IposZoneDescriptor.Builder zoneDescriptor : zoneDescriptors){ + protoIposObject.addZoneDescriptors(zoneDescriptor); // getZoneDescriptorsBuilderList().addAll(zoneDescriptors); + } + return protoIposObject; + } + + private static SimpleScene.IposSimpleOrientation.Builder transformIntoProtoOrientation(PositionEvent internalPosEvent) { + return transformIntoProtoOrientation((Quaternion) internalPosEvent.getPlacing().getOrientation()); + } + + private static SimpleScene.IposSimpleOrientation.Builder transformIntoProtoOrientation(Quaternion internalOrientation) { + SimpleScene.IposSimpleOrientation.Builder protoOrientation = SimpleScene.IposSimpleOrientation.newBuilder(); + protoOrientation.setX(internalOrientation.getX()).setY(internalOrientation.getY()).setZ(internalOrientation.getZ()).setW(internalOrientation.getW()); + return protoOrientation; + } + + private static SimpleScene.IposPosition.Builder transformIntoProtoIposPosition(PositionEvent internalPosEvent, SimpleScene.IposPoint3D.Builder protoPoint3D) { + return transformIntoProtoIposPosition(internalPosEvent.getPlacing().getPosition(), protoPoint3D); + } + + private static SimpleScene.IposPosition.Builder transformIntoProtoIposPosition(Position internalPos, SimpleScene.IposPoint3D.Builder protoPoint3D) { + float internalAccuracy = ((Gaussian) internalPos.getAccuracy()).getConfidenceInterval(); + String internalRefSystemId = internalPos.getReferenceSystem().getId(); + SimpleScene.IposPosition.Builder protoIposPosition = SimpleScene.IposPosition.newBuilder(); + protoIposPosition.setAccuracy(internalAccuracy).setRefSystemId(internalRefSystemId).setPoint(protoPoint3D); + return protoIposPosition; + } + + private static SimpleScene.IposPoint3D.Builder transformIntoProtoPoint3D(PositionEvent internalPosEvent) { + return transformIntoProtoPoint3D(internalPosEvent.getPlacing().getPosition()); + } + + private static SimpleScene.IposPoint3D.Builder transformIntoProtoPoint3D(Position internalPos) { + SimpleScene.IposPoint3D.Builder protoPoint3D = SimpleScene.IposPoint3D.newBuilder(); + Point3D internalPoint3D = (Point3D) internalPos.getPoint(); + protoPoint3D.setX(internalPoint3D.getX()).setY(internalPoint3D.getY()).setZ(internalPoint3D.getZ()); + return protoPoint3D; + } + + public static Zone zone_SScene2Internal(SimpleScene.IposFrameConfig frame) { + Zone zone = modelFactory.createZone(); + zone.setId(frame.getId()); + zone.setName(frame.getId()); + for (SimpleScene.IposSpace space_proto : frame.getSpaceList()){ + Space space = space_SScene2Internal(space_proto); + zone.getSpace().add(space); + } + return zone; + } + + private static Space space_SScene2Internal(SimpleScene.IposSpace space_proto) { + Space space = modelFactory.createSpace(); + space.setX(space_proto.getX()); + space.setY(space_proto.getY()); + space.setZ(space_proto.getZ()); + space.setCentrePoint(placing_SScene2Internal(space_proto.getPosition(),space_proto.getOrientation())); + return space; + } + + private static Placing placing_SScene2Internal(SimpleScene.IposPosition position, SimpleScene.IposSimpleOrientation orientation) { + Placing placing = modelFactory.createPlacing(); + placing.setPosition(position_SScene2Internal(position)); + placing.setOrientation(orientation_SScene2Internal(orientation)); + return placing; + } + + private static Orientation orientation_SScene2Internal(SimpleScene.IposSimpleOrientation orientation_proto) { + Quaternion orientation = modelFactory.createQuaternion(); + orientation.setX(orientation_proto.getX()); + orientation.setY(orientation_proto.getY()); + orientation.setZ(orientation_proto.getZ()); + orientation.setW(orientation_proto.getW()); + return orientation; + } + + private static Position position_SScene2Internal(SimpleScene.IposPosition position_proto) { + Position position = modelFactory.createPosition(); + position.setReferenceSystem(PositionMonitoring.getReferenceSystemByIdOrNull(position_proto.getRefSystemId())); + position.setPoint(point_SScene2Internal(position_proto.getPoint())); + position.setAccuracy(accuracy_SScene2Internal(position_proto.getAccuracy())); + return position; + } + + private static Accuracy accuracy_SScene2Internal(float accuracy_proto) { + Gaussian accuracy = modelFactory.createGaussian(); + accuracy.setConfidenceInterval(accuracy_proto); + return accuracy; + } + + private static Point point_SScene2Internal(SimpleScene.IposPoint3D point_proto) { + Point3D point = modelFactory.createPoint3D(); + point.setX(point_proto.getX()); + point.setY(point_proto.getY()); + point.setZ(point_proto.getZ()); + return point; + } + + /** + * It is the job of this function to create Agent- and LocalizableObject-objects. + * If is not the job of this function to checker whether agent/lobject-Objects + * do already exist for the respective ids. + * @param objConfig + * @return + */ + public static Agent agent_SScene2Internal(SimpleScene.IposObjectConfig objConfig) { + Agent agent = modelFactory.createAgent(); + agent.setAgentType(objConfig.getAgentType()); + agent.setId(objConfig.getAgentId()); + LocalizableObject lObject = modelFactory.createLocalizableObject(); + lObject.setSensorType(objConfig.getSensorType()); + lObject.setId(objConfig.getSensorId()); + lObject.setAgent(agent); + agent.getLObject().add(lObject); + return agent; + } + + public static ReferenceSystem refSystem_SScene2Internal(SimpleScene.RefSystem refSystem_proto) { + ReferenceSystem refSystem = modelFactory.createReferenceSystem(); + refSystem.setId(refSystem_proto.getId()); + refSystem.setName(refSystem_proto.getId()); + if (null != refSystem_proto.getPosition() && null != refSystem_proto.getOrientation()) { + refSystem.setOrigin(placing_SScene2Internal(refSystem_proto.getPosition(), refSystem_proto.getOrientation())); + } + return refSystem; + } + + public static POI poi_SScene2Internal(SimpleScene.POI poi_proto) { + POI poi = modelFactory.createPOI(); + poi.setId(poi_proto.getId()); + poi.setDescription(poi_proto.getDescription()); + poi.setData(poi_proto.getDataMap()); + poi.setPlacing(placing_SScene2Internal(poi_proto.getPosition(), poi_proto.getOrientation())); + return poi; + } + + public static DataStorageQueryRequest queryReq_SScene2Internal(SimpleScene.IposQueryRequest proto_qReq) { + DataStorageQueryRequest internal_queryReq = devKitFactory.createDataStorageQueryRequest(); + internal_queryReq.setTrackingTaskId(proto_qReq.getTrackingTaskId()); + return internal_queryReq; + } + + public static SimpleScene.IposQueryResponse queryResp_Internal2SScene(DataStorageQueryResponse dsQueryResponse, String trackingTaskId) { + SimpleScene.IposQueryResponse.Builder iposQueryResponse = SimpleScene.IposQueryResponse.newBuilder(); + iposQueryResponse.setTrackingTaskId(dsQueryResponse.getTrackingTaskId()); + List<SimpleScene.IposObject.Builder> iposObjects = transformIntoProtoObjectList(dsQueryResponse.getPositionEvents()); + for ( SimpleScene.IposObject.Builder iposObject : iposObjects){ + iposQueryResponse.addObjects(iposObject); + } + return iposQueryResponse.build(); + + } + + private static List<SimpleScene.IposObject.Builder> transformIntoProtoObjectList(EList<PositionEvent> positionEvents) { + List<SimpleScene.IposObject.Builder> iposObjectList = new LinkedList<>(); + for (PositionEvent posEvent : positionEvents){ + SimpleScene.IposObject.Builder protoIposObject = constructProtoIposObjectFromPosEvent(posEvent); + if (protoIposObject == null) continue; + iposObjectList.add(protoIposObject); + } + return iposObjectList; + } + + public static SimpleScene.IposMsgRcvEvent iposMsgRcvEvent_internal2proto(IposMsgRcvEvent iposMsgRcvEvent_internal) { + SimpleScene.IposMsgRcvEvent.Builder iposMsgRcvEvent_proto = SimpleScene.IposMsgRcvEvent.newBuilder(); + iposMsgRcvEvent_proto.setProtocolName(iposMsgRcvEvent_internal.getProtocolName()); + iposMsgRcvEvent_proto.setSerializedMsg(ByteString.copyFrom(iposMsgRcvEvent_internal.getSerializedMsg())); + iposMsgRcvEvent_proto.setAgentId(iposMsgRcvEvent_internal.getAgentId()); + iposMsgRcvEvent_proto.setLastPosUpdate(Optional.ofNullable(iposMsgRcvEvent_internal.getLastPosUpdate()).orElse("")); + List<SimpleScene.Attribute> attributeList = iposMsgRcvEvent_internal.getExtractedAttributes().stream().map(SimpleSceneTransformer::toAttribute_proto).collect(Collectors.toList()); + attributeList.stream().forEach(attribute -> iposMsgRcvEvent_proto.addExtractedAttributes(attribute)); + // iposMsgRcvEvent_proto.getExtractedAttributesList().addAll(attributeList); + iposMsgRcvEvent_proto.setTimestamp(Optional.ofNullable(iposMsgRcvEvent_internal.getTimestamp()).orElse("")); + if (null != iposMsgRcvEvent_internal.getLastKnownPosition()) { + SimpleScene.IposPoint3D.Builder protoPoint3D = transformIntoProtoPoint3D(iposMsgRcvEvent_internal.getLastKnownPosition()); + iposMsgRcvEvent_proto.setLastKnownPosition(transformIntoProtoIposPosition(iposMsgRcvEvent_internal.getLastKnownPosition(), protoPoint3D)); + } + if (null != iposMsgRcvEvent_internal.getLastKnownOrientation()) iposMsgRcvEvent_proto.setLastKnownOrientation(transformIntoProtoOrientation((Quaternion) iposMsgRcvEvent_internal.getLastKnownOrientation())); + List<SimpleScene.IposZoneDescriptor> zoneDescriptors_proto = extractZoneDescriptors(iposMsgRcvEvent_internal); + zoneDescriptors_proto.stream().forEach(zoneDescriptor -> iposMsgRcvEvent_proto.addLastKnownZoneDescriptors(zoneDescriptor)); + //iposMsgRcvEvent_proto.getLastKnownZoneDescriptorsList().addAll(extractZoneDescriptors(iposMsgRcvEvent_internal)); + return iposMsgRcvEvent_proto.build(); + } + + private static List<SimpleScene.IposZoneDescriptor> extractZoneDescriptors(IposMsgRcvEvent iposMsgRcvEvent_internal) { + List<SimpleScene.IposZoneDescriptor.Builder> zoneDescriptorBuilders = transformIntoProtoZoneDescriptorList(iposMsgRcvEvent_internal.getLastKnownZonedescriptors()); + List<SimpleScene.IposZoneDescriptor> zoneDescriptors = zoneDescriptorBuilders.stream().map(zoneDescriptorBuilder -> zoneDescriptorBuilder.build()).collect(Collectors.toList()); + return zoneDescriptors; + } + + private static SimpleScene.Attribute toAttribute_proto(HashMap<String, String> stringStringHashMap) { + SimpleScene.Attribute.Builder attribute_proto = SimpleScene.Attribute.newBuilder(); + attribute_proto.setName(stringStringHashMap.get(OtherUtility.KEY_EXTRACTED_ATTRIBUTE_NAME)); + attribute_proto.setType(stringStringHashMap.get(OtherUtility.KEY_EXTRACTED_ATTRIBUTE_TYPE)); + attribute_proto.setData(stringStringHashMap.get(OtherUtility.KEY_EXTRACTED_ATTRIBUTE_VALUE)); + return attribute_proto.build(); + } + +} diff --git a/src/main/java/ipos/project/DataModellntegration/VDA5050Processor/VDA5050Processor.java b/src/main/java/ipos/project/DataModellntegration/VDA5050Processor/VDA5050Processor.java new file mode 100644 index 0000000000000000000000000000000000000000..703e334e3d2b9b3eb77d8853539de979005e1270 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/VDA5050Processor/VDA5050Processor.java @@ -0,0 +1,44 @@ +package ipos.project.DataModellntegration.VDA5050Processor; + +import com.google.protobuf.InvalidProtocolBufferException; +import ipos.models.GenericSensor; +import ipos.models.VDA5050; +import ipos.project.DataModellntegration.VDA5050Processor.api.MqttRequestHandler; +import ipos.project.SensorValueIntegration.api.MqttPositionHandler; +import ipos.project.devkit.utility.OtherUtility; +import ipos.project.devkit.utility.ProtoJsonMap; +import org.apache.logging.log4j.LogManager; + +import java.io.File; +import java.util.Scanner; + +import static ipos.project.devkit.utility.OtherUtility.waitUntilUserRequestsReadingNextLine; + +public class VDA5050Processor { + private static org.apache.logging.log4j.Logger LOG = LogManager.getLogger(); + + public static final String TOPIC_AGVSTATE = "VDA5050_AgvState"; + public static final String PROTOCOL_NAME_VDA5050 = "VDA5050"; + public static final String AGV_ID_CONNECTOR_CHARACTER = "-"; + public static final Object TYPE_STRING = "string"; + public static final String TYPE_FLOAT = "float"; + public static final String TYPE_LIST_OF_INT = "listOfInt"; + public static final CharSequence DELIMITER_CSV = ","; + + public static void processTestData(String path_to_test_data_file){ + File testDataFile = new File(path_to_test_data_file); + Scanner scanner = new Scanner(System.in); + try { + for (String line : OtherUtility.readLines(testDataFile)) { + VDA5050.AgvState agvState_proto = ProtoJsonMap.fromJson(line, VDA5050.AgvState.class); + OtherUtility.waitUntilUserRequestsReadingNextLine(scanner); + MqttRequestHandler.processAgvState(agvState_proto); + } + }catch (InvalidProtocolBufferException e) { + LOG.error("Error trying to read JSON into protobuf-objects: "); + e.printStackTrace(); + } + } + + +} diff --git a/src/main/java/ipos/project/DataModellntegration/VDA5050Processor/api/MqttRequestHandler.java b/src/main/java/ipos/project/DataModellntegration/VDA5050Processor/api/MqttRequestHandler.java new file mode 100644 index 0000000000000000000000000000000000000000..6f124e36152f04877cc9c4b228b79d07889a6b91 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/VDA5050Processor/api/MqttRequestHandler.java @@ -0,0 +1,283 @@ +package ipos.project.DataModellntegration.VDA5050Processor.api; + +import com.google.protobuf.InvalidProtocolBufferException; +import ipos.models.SimpleScene; +import ipos.models.SimpleScene.IposMonitoringRequest; +import ipos.models.VDA5050; +import ipos.project.DataModellntegration.SimpleSceneIntegration.service.SimpleSceneTransformer; +import ipos.project.DataModellntegration.VDA5050Processor.VDA5050Processor; +import ipos.project.DataModellntegration.VDA5050Processor.service.VDA5050Transformer; +import ipos.project.DataModellntegration.iPos_Datamodel.*; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.DataStorageQueryRequest; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest; +import ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvPosition; +import ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvState; +import ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.Error; +import ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.Load; +import ipos.project.Functionality.DataServices; +import ipos.project.UseCaseController.Administration; +import ipos.project.UseCaseController.PositionMonitoring; +import ipos.project.config.mqtt.Handler; +import ipos.project.config.mqtt.MqttListener; +import ipos.project.devkit.trans.IPos2protoTransformer; +import ipos.project.devkit.utility.OtherUtility; +import ipos.project.devkit.utility.ProtoJsonMap; +import org.apache.logging.log4j.LogManager; +import org.eclipse.paho.client.mqttv3.MqttMessage; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.jms.core.JmsTemplate; + +import java.util.*; +import java.util.stream.Collectors; + + +// subscribe to the topic. It's example +@MqttListener(VDA5050Processor.TOPIC_AGVSTATE) +public class MqttRequestHandler implements Handler { + + private static org.apache.logging.log4j.Logger LOG = LogManager.getLogger(); + JmsTemplate jmsTemplate; + private static IPos_DatamodelFactory modelFactory = IPos_DatamodelFactory.eINSTANCE; + + @Autowired + public MqttRequestHandler(JmsTemplate jmsTemplate) { + this.jmsTemplate = jmsTemplate; + } + + // method that handle new message from the topic + public void handle(MqttMessage message) { + try { + // TODO: Zwischen JSON und Protobuf unterscheiden können + //SimpleScene.IposConfigWrapper iposConfigWrapper = ProtoJsonMap.fromJson(message.toString(), SimpleScene.IposConfigWrapper.class); + VDA5050.AgvState agvState = ProtoJsonMap.fromJson(message.toString(), VDA5050.AgvState.class); + // VDA5050.AgvState agvState_proto = ProtoJsonMap.fromJson(line, VDA5050.AgvState.class); + // IposMonitoringRequest monReqProto = IposMonitoringRequest.parseFrom(message.getPayload()); + processAgvState(agvState); + } catch (InvalidProtocolBufferException e) { + e.printStackTrace(); + } catch (NullPointerException e){ + LOG.info("VDA5050-message could not be read. " + e.getMessage()); + e.printStackTrace(); + } + } + + public static void processAgvState(VDA5050.AgvState agvState_proto) { + LOG.info("VDA5050-AgvState message received: \n" + agvState_proto.toString()); + AgvState agvState = VDA5050Transformer.agvState_proto2internal(agvState_proto); + MessageReceivedEvent messageReceivedEvent = extractMessageReceivedEventFromAgvState(agvState, ProtoJsonMap.toJson(agvState_proto)); + LOG.info("VDA5050: Corresponding MessageReceivedEvent: " + messageReceivedEvent.toString()); + attemptToHandleAsPositionEvent(agvState); + attemptToEvaluateLastNodeId(agvState, messageReceivedEvent.getAgentId()); + PositionMonitoring.receiveMessage(messageReceivedEvent); + // this.jmsTemplate.convertAndSend("/request123", monReqInternal); // submit request to the internal broker + } + + private static void attemptToEvaluateLastNodeId(AgvState agvState, String agentId) { + // we prefer current positions over old positions communicated over lastNodeIds + boolean noCurrentPositionAvailable = !containsValidAgvPosition(agvState); + boolean lastNodeIdIsAvailable = null != agvState.getLastNodeId(); + if( noCurrentPositionAvailable && lastNodeIdIsAvailable){ + try { + String lastNodeId = agvState.getLastNodeId(); + POI poi = Optional.ofNullable(DataServices.getPoiByIdOrNull(lastNodeId)).orElseThrow(() -> new NullPointerException("Message contained unknown lastNodeId: " + agvState.getLastNodeId())); + LocalizableObject lObject = Optional.ofNullable(DataServices.getLObjectByIdOrNull(agentId)).orElseThrow(() -> new NullPointerException("Message was sent on behalf of an unknown agentId: " + agentId)); + if (null == lObject.getLastPosUpdate()){ // assumption: if lastPosUpdate is unset, there is no position information that would be more current than the VDA5050-lastNodeId + lObject.setCurrentPlacing(poi.getPlacing()); + LOG.info("VDA5050: currentPlacing of localizable object " + lObject.getId() + " has been updated."); + return; + } + }catch(NullPointerException e){ + LOG.info("LastNodeId of VDA5050-message (AgvState) could not be processed. " + e.getMessage()); + return; + } + } + } + + private static void attemptToHandleAsPositionEvent(AgvState agvState) { + if(containsValidAgvPosition(agvState)){ + try { + PositionEvent posEvent = extractPositionEvent(agvState); + PositionMonitoring.receiveMessage(posEvent); + }catch (NullPointerException e){ + LOG.info("Received message did not receive sufficient information to be handled as PositionEvent. " + e.getMessage()); + } + } + } + + private static PositionEvent extractPositionEvent(AgvState agvState) { + PositionEvent posEvent = modelFactory.createPositionEvent(); + Objects.requireNonNull(agvState.getManufacturer(), "Message missed a required information: manufacturer"); + Objects.requireNonNull(agvState.getSerialNumber(), "Message missed a required information: serialNumber"); + String extractedRefSystem = Optional.ofNullable(agvState.getAgvposition().getMapId()).orElse(PositionMonitoring.SRS_ID_ROOT); + Objects.requireNonNull(DataServices.getReferenceSystemByIdOrNull(extractedRefSystem), "Message contained a position that is associated an unknown reference system: " + extractedRefSystem); + posEvent.setTimeStamp(Optional.ofNullable(agvState.getTimeStamp()).orElse("")); + posEvent.setLObjectId(agvState.getManufacturer() + VDA5050Processor.AGV_ID_CONNECTOR_CHARACTER + agvState.getSerialNumber()); + posEvent.setPlacing( + IPos2protoTransformer.createPlacing( + IPos2protoTransformer.createPosition( + IPos2protoTransformer.createPoint3D( + agvState.getAgvposition().getX(), + agvState.getAgvposition().getY(), + 0), + -1.0f, + DataServices.getReferenceSystemByIdOrNull(extractedRefSystem)), + IPos2protoTransformer.createOrientation( + 0, + 0, + 0, + 0 + ) + ) + ); + return posEvent; + } + + private static boolean containsValidAgvPosition(AgvState agvState) { + return null != agvState.getAgvposition(); + } + + private static MessageReceivedEvent extractMessageReceivedEventFromAgvState(AgvState agvState, String serializedMsg) { + Objects.requireNonNull(agvState.getManufacturer(), "Message missed a required information: manufacturer"); + Objects.requireNonNull(agvState.getSerialNumber(), "Message missed a required information: serialNumber"); + MessageReceivedEvent messageReceivedEvent = modelFactory.createMessageReceivedEvent(); + messageReceivedEvent.setProtocolName(VDA5050Processor.PROTOCOL_NAME_VDA5050); + messageReceivedEvent.setSerializedMsg(serializedMsg.getBytes()); + messageReceivedEvent.setAgentId(agvState.getManufacturer() + VDA5050Processor.AGV_ID_CONNECTOR_CHARACTER + agvState.getSerialNumber()); + messageReceivedEvent.setExtractedAttributes(extractAgvStateAttributes(agvState)); + messageReceivedEvent.setTimestamp(Optional.ofNullable(agvState.getTimeStamp()).orElse("")); + return messageReceivedEvent; + } + + private static LinkedList<HashMap<String, String>> extractAgvStateAttributes(AgvState agvState) { + LinkedList<HashMap<String, String>> extractedAttributes = new LinkedList<>(); + extractAgvStateBatteryChargeLevel(agvState, extractedAttributes); + extractAgvStateLoads(agvState, extractedAttributes); + extractAgvStateErrors(agvState, extractedAttributes); + extractAgvStateTheta(agvState, extractedAttributes); + extractAgvStateLastNodeId(agvState, extractedAttributes); + return extractedAttributes; + } + + private static void extractAgvStateLastNodeId(AgvState agvState, LinkedList<HashMap<String, String>> extractedAttributes) { + if(null == agvState.getLastNodeId() || agvState.getLastNodeId().equals("")){ + return; + } + HashMap agvStateLastNodeId = new HashMap<String, String>(); + agvStateLastNodeId.put(OtherUtility.KEY_EXTRACTED_ATTRIBUTE_NAME, "lastNodeId"); + agvStateLastNodeId.put(OtherUtility.KEY_EXTRACTED_ATTRIBUTE_TYPE, VDA5050Processor.TYPE_STRING); + agvStateLastNodeId.put(OtherUtility.KEY_EXTRACTED_ATTRIBUTE_VALUE, agvState.getLastNodeId()); + extractedAttributes.add(agvStateLastNodeId); + } + + private static void extractAgvStateErrors(AgvState agvState, LinkedList<HashMap<String, String>> extractedAttributes) { + if(null == agvState.getErrors() || agvState.getErrors().size()==0){ + return; + } + HashMap agvStateErrors = new HashMap<String, String>(); + agvStateErrors.put(OtherUtility.KEY_EXTRACTED_ATTRIBUTE_NAME, "errors"); + agvStateErrors.put(OtherUtility.KEY_EXTRACTED_ATTRIBUTE_TYPE, VDA5050Processor.TYPE_LIST_OF_INT); + List<String> errorIdsAsStringList = agvState.getErrors().stream().map(MqttRequestHandler::extractErrorId).collect(Collectors.toList()); + agvStateErrors.put(OtherUtility.KEY_EXTRACTED_ATTRIBUTE_VALUE, String.join(VDA5050Processor.DELIMITER_CSV, errorIdsAsStringList)); + extractedAttributes.add(agvStateErrors); + } + + private static void extractAgvStateLoads(AgvState agvState, LinkedList<HashMap<String, String>> extractedAttributes) { + if(null == agvState.getLoads() || agvState.getLoads().size() == 0){ + return; + } + HashMap agvStateLoads = new HashMap<String, String>(); + agvStateLoads.put(OtherUtility.KEY_EXTRACTED_ATTRIBUTE_NAME, "loads"); + agvStateLoads.put(OtherUtility.KEY_EXTRACTED_ATTRIBUTE_TYPE, VDA5050Processor.TYPE_LIST_OF_INT); + List<String> loadIdsAsStringList = agvState.getLoads().stream().map(MqttRequestHandler::extractLoadId).collect(Collectors.toList()); + agvStateLoads.put(OtherUtility.KEY_EXTRACTED_ATTRIBUTE_VALUE, String.join(VDA5050Processor.DELIMITER_CSV, loadIdsAsStringList)); + extractedAttributes.add(agvStateLoads); + } + + private static String extractErrorId(Error error) { + return error.getErrorType(); + } + + private static java.lang.String extractLoadId(Load load) { + return load.getLoadId(); + } + + private static void extractAgvStateBatteryChargeLevel(AgvState agvState, LinkedList<HashMap<String, String>> extractedAttributes) { + if(null == agvState.getBatteryState()){ + return; + } + HashMap agvStateBatteryCharge = new HashMap<String, String>(); + agvStateBatteryCharge.put(OtherUtility.KEY_EXTRACTED_ATTRIBUTE_NAME, "batteryCharge"); + agvStateBatteryCharge.put(OtherUtility.KEY_EXTRACTED_ATTRIBUTE_TYPE, VDA5050Processor.TYPE_FLOAT); + agvStateBatteryCharge.put(OtherUtility.KEY_EXTRACTED_ATTRIBUTE_VALUE, "" + agvState.getBatteryState().getBatteryCharge()); + extractedAttributes.add(agvStateBatteryCharge); + } + + private static void extractAgvStateTheta(AgvState agvState, LinkedList<HashMap<String, String>> extractedAttributes) { + if(null == agvState.getAgvposition()){ + return; + } + HashMap agvStateTheta = new HashMap<String, String>(); + agvStateTheta.put(OtherUtility.KEY_EXTRACTED_ATTRIBUTE_NAME, "theta"); + agvStateTheta.put(OtherUtility.KEY_EXTRACTED_ATTRIBUTE_TYPE, VDA5050Processor.TYPE_FLOAT); + agvStateTheta.put(OtherUtility.KEY_EXTRACTED_ATTRIBUTE_VALUE, "" + agvState.getAgvposition().getTheta()); + extractedAttributes.add(agvStateTheta); + } + + private static void processQueryRequest(List<SimpleScene.IposQueryRequest> queryRequestsList) { + for (SimpleScene.IposQueryRequest proto_qReq : queryRequestsList){ + DataStorageQueryRequest internal_qReq = SimpleSceneTransformer.queryReq_SScene2Internal(proto_qReq); + LOG.info("INDFRO:"); + LOG.info("INDFRO: Received QueryRequest for trackingTaskId " + internal_qReq.getTrackingTaskId()); + PositionMonitoring.receiveMessage(internal_qReq); + } + } + + /* + private SimpleScene.IposConfigWrapper replaceNullByEmptyList(SimpleScene.IposConfigWrapper configWrapper) { + SimpleScene.IposConfigWrapper.Builder configWrapper_NoNull = SimpleScene.IposConfigWrapper.newBuilder(); + configWrapper_NoNull.add; + } + */ + + private static void processPois(List<SimpleScene.POI> poisList) { + for (SimpleScene.POI poi : poisList){ + POI poi_internal = SimpleSceneTransformer.poi_SScene2Internal(poi); + Administration.handlePoi(poi_internal); + } + } + + private static void processRefSystems(List<SimpleScene.RefSystem> refSystemsList) { + for (SimpleScene.RefSystem refSystem : refSystemsList){ + ReferenceSystem refSystem_internal = SimpleSceneTransformer.refSystem_SScene2Internal(refSystem); + Administration.handleRefSystem(refSystem_internal); + } + } + + private static void processObjectConfigs(List<SimpleScene.IposObjectConfig> objectConfigsList) { + for( SimpleScene.IposObjectConfig objConfig : objectConfigsList){ + Agent agent = SimpleSceneTransformer.agent_SScene2Internal(objConfig); + Administration.handleAgent(agent); + } + } + + private static void processFrameConfigs(List<SimpleScene.IposFrameConfig> frames){ + /* + if (null == frames){ + LOG.info("ConfigWrapper-message contains no Frame-definitions"); + return; + } + */ + for( SimpleScene.IposFrameConfig frame : frames){ + Zone zone = SimpleSceneTransformer.zone_SScene2Internal(frame); + Administration.handleZone(zone); + } + } + + private static void processMonitoringRequests(SimpleScene.IposConfigWrapper iposConfigWrapper) { + for (IposMonitoringRequest monReq : iposConfigWrapper.getMonitoringRequestsList()){ + MonitoringRequest monReqInternal = SimpleSceneTransformer.monReq_SScene2Internal(monReq); + PositionMonitoring.receiveMessage(monReqInternal); + // TODO: send request via JMS to MonitoringController + } + } +} diff --git a/src/main/java/ipos/project/DataModellntegration/VDA5050Processor/service/VDA5050Transformer.java b/src/main/java/ipos/project/DataModellntegration/VDA5050Processor/service/VDA5050Transformer.java new file mode 100644 index 0000000000000000000000000000000000000000..44c26e7fb6047796fa77923200634d3f6b2dcbb0 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/VDA5050Processor/service/VDA5050Transformer.java @@ -0,0 +1,70 @@ +package ipos.project.DataModellntegration.VDA5050Processor.service; + +import ipos.models.VDA5050; +import ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.*; +import ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.Error; +import org.apache.logging.log4j.LogManager; + +import java.util.LinkedList; +import java.util.List; + +public class VDA5050Transformer { + private static org.apache.logging.log4j.Logger LOG = LogManager.getLogger(); + private static VDA5050Factory vda5050Factory = VDA5050Factory.eINSTANCE; + + public static AgvState agvState_proto2internal(VDA5050.AgvState agvState_proto) { + AgvState agvState_internal = vda5050Factory.createAgvState(); + agvState_internal.setTimeStamp(agvState_proto.getTimeStamp()); + agvState_internal.setSerialNumber(agvState_proto.getSerialNumber()); + agvState_internal.setLastNodeId(agvState_proto.getLastNodeId()); + agvState_internal.setManufacturer(agvState_proto.getManufacturer()); + agvState_internal.setBatteryState(extractBatteryStateOrNull(agvState_proto)); + agvState_internal.getErrors().addAll(extractErrorsOrEmptyList(agvState_proto)); + agvState_internal.getLoads().addAll(extractLoadsOrEmptyList(agvState_proto)); + agvState_internal.setAgvposition(extractAgvPositionOrNull(agvState_proto)); + return agvState_internal; + } + + private static AgvPosition extractAgvPositionOrNull(VDA5050.AgvState agvState_proto) { + boolean agvPositionNotPresentInMessage = ipos.models.VDA5050.AgvPosition.getDefaultInstance() == agvState_proto.getAgvPosition(); + if (agvPositionNotPresentInMessage){ + return null; + }else { + AgvPosition agvPosition_internal = vda5050Factory.createAgvPosition(); + agvPosition_internal.setX(agvState_proto.getAgvPosition().getX()); + agvPosition_internal.setY(agvState_proto.getAgvPosition().getY()); + agvPosition_internal.setTheta(agvState_proto.getAgvPosition().getTheta()); + return agvPosition_internal; + } + } + + private static BatteryState extractBatteryStateOrNull(VDA5050.AgvState agvState_proto) { + if (ipos.models.VDA5050.BatteryState.getDefaultInstance() == agvState_proto.getBatteryState()){ + return null; + }else { + BatteryState batteryState = vda5050Factory.createBatteryState(); + batteryState.setBatteryCharge(agvState_proto.getBatteryState().getBatteryCharge()); + return batteryState; + } + } + + private static List<ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.Error> extractErrorsOrEmptyList(VDA5050.AgvState agvState_proto){ + LinkedList<ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.Error> errors = new LinkedList<>(); + for (VDA5050.Error error_proto : agvState_proto.getErrorsList()){ + Error error_internal = vda5050Factory.createError(); + error_internal.setErrorType(error_proto.getErrorType()); + errors.add(error_internal); + } + return errors; + } + + private static List<ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.Load> extractLoadsOrEmptyList(VDA5050.AgvState agvState_proto){ + LinkedList<ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.Load> loads = new LinkedList<>(); + for (VDA5050.Load load_proto : agvState_proto.getLoadsList()){ + Load load_internal = vda5050Factory.createLoad(); + load_internal.setLoadId(load_proto.getLoadId()); + loads.add(load_internal); + } + return loads; + } +} diff --git a/src/main/java/ipos/project/DataModellntegration/api/MqttRequestHandler.java b/src/main/java/ipos/project/DataModellntegration/api/MqttRequestHandler.java deleted file mode 100644 index 7dd6e7ee877f04416adce2d9886fcaa938f3ee51..0000000000000000000000000000000000000000 --- a/src/main/java/ipos/project/DataModellntegration/api/MqttRequestHandler.java +++ /dev/null @@ -1,39 +0,0 @@ -package ipos.project.DataModellntegration.api; - -import com.google.protobuf.InvalidProtocolBufferException; -import ipos.models.SimpleScene.IposSubscriptionRequest; -import ipos.project.config.mqtt.Handler; -import ipos.project.config.mqtt.MqttListener; -import org.eclipse.paho.client.mqttv3.MqttMessage; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.jms.core.JmsTemplate; - - -// subscribe to the topic. It's example -@MqttListener("usertopic/subscription-req") -public class MqttRequestHandler implements Handler { - - private final Logger LOG = LoggerFactory.getLogger(getClass()); - JmsTemplate jmsTemplate; - - @Autowired - public MqttRequestHandler(JmsTemplate jmsTemplate) { - this.jmsTemplate = jmsTemplate; - } - - // method that handle new message from the topic - public void handle(MqttMessage message) { - try { - IposSubscriptionRequest req = IposSubscriptionRequest.parseFrom(message.getPayload()); - LOG.info("IposSubscriptionRequest received: \n" - + req.toString()); - // ... do something with request - - this.jmsTemplate.convertAndSend("/request123", req); // submit request to the internal broker - } catch (InvalidProtocolBufferException e) { - e.printStackTrace(); - } - } -} diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/AbsolutePosition.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/AbsolutePosition.java deleted file mode 100644 index 7962df73fd8492b5445f55209d285890b8b5321c..0000000000000000000000000000000000000000 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/AbsolutePosition.java +++ /dev/null @@ -1,44 +0,0 @@ -/** - */ -package ipos.project.DataModellntegration.iPos_Datamodel; - -/** - * <!-- begin-user-doc --> - * A representation of the model object '<em><b>Absolute Position</b></em>'. - * <!-- end-user-doc --> - * - * <p> - * The following features are supported: - * </p> - * <ul> - * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.AbsolutePosition#getPoint <em>Point</em>}</li> - * </ul> - * - * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getAbsolutePosition() - * @model - * @generated - */ -public interface AbsolutePosition extends Position { - /** - * Returns the value of the '<em><b>Point</b></em>' reference. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return the value of the '<em>Point</em>' reference. - * @see #setPoint(WGS84Point) - * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getAbsolutePosition_Point() - * @model required="true" - * @generated - */ - WGS84Point getPoint(); - - /** - * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.AbsolutePosition#getPoint <em>Point</em>}' reference. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @param value the new value of the '<em>Point</em>' reference. - * @see #getPoint() - * @generated - */ - void setPoint(WGS84Point value); - -} // AbsolutePosition diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Acceleration.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Acceleration.java index 3069155c119caf040eb1bc89e01c6724ee3d1999..8c2bbd336e3da3027d590b5662500ca75ba0c098 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Acceleration.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Acceleration.java @@ -9,10 +9,84 @@ import org.eclipse.emf.ecore.EObject; * A representation of the model object '<em><b>Acceleration</b></em>'. * <!-- end-user-doc --> * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.Acceleration#getX <em>X</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.Acceleration#getY <em>Y</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.Acceleration#getZ <em>Z</em>}</li> + * </ul> * * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getAcceleration() * @model * @generated */ public interface Acceleration extends EObject { + /** + * Returns the value of the '<em><b>X</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>X</em>' attribute. + * @see #setX(float) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getAcceleration_X() + * @model dataType="org.eclipse.emf.ecore.xml.type.Float" + * @generated + */ + float getX(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.Acceleration#getX <em>X</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>X</em>' attribute. + * @see #getX() + * @generated + */ + void setX(float value); + + /** + * Returns the value of the '<em><b>Y</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Y</em>' attribute. + * @see #setY(float) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getAcceleration_Y() + * @model dataType="org.eclipse.emf.ecore.xml.type.Float" + * @generated + */ + float getY(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.Acceleration#getY <em>Y</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Y</em>' attribute. + * @see #getY() + * @generated + */ + void setY(float value); + + /** + * Returns the value of the '<em><b>Z</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Z</em>' attribute. + * @see #setZ(float) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getAcceleration_Z() + * @model dataType="org.eclipse.emf.ecore.xml.type.Float" + * @generated + */ + float getZ(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.Acceleration#getZ <em>Z</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Z</em>' attribute. + * @see #getZ() + * @generated + */ + void setZ(float value); + } // Acceleration diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Agent.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Agent.java index 419bf7729cca21e2d94ad4c398493a40c49ee392..d897bd2bbfbe051a26e7ce869f6ce189d02d9914 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Agent.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Agent.java @@ -13,10 +13,8 @@ import org.eclipse.emf.common.util.EList; * The following features are supported: * </p> * <ul> - * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.Agent#getName <em>Name</em>}</li> * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.Agent#getLObject <em>LObject</em>}</li> - * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.Agent#getNetInt <em>Net Int</em>}</li> - * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.Agent#getPSensors <em>PSensors</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.Agent#getAgentType <em>Agent Type</em>}</li> * </ul> * * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getAgent() @@ -24,28 +22,6 @@ import org.eclipse.emf.common.util.EList; * @generated */ public interface Agent extends Entity { - /** - * Returns the value of the '<em><b>Name</b></em>' attribute. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return the value of the '<em>Name</em>' attribute. - * @see #setName(String) - * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getAgent_Name() - * @model - * @generated - */ - String getName(); - - /** - * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.Agent#getName <em>Name</em>}' attribute. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @param value the new value of the '<em>Name</em>' attribute. - * @see #getName() - * @generated - */ - void setName(String value); - /** * Returns the value of the '<em><b>LObject</b></em>' reference list. * The list contents are of type {@link ipos.project.DataModellntegration.iPos_Datamodel.LocalizableObject}. @@ -59,37 +35,25 @@ public interface Agent extends Entity { EList<LocalizableObject> getLObject(); /** - * Returns the value of the '<em><b>Net Int</b></em>' reference. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return the value of the '<em>Net Int</em>' reference. - * @see #setNetInt(NetworkInterface) - * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getAgent_NetInt() - * @model required="true" - * @generated - */ - NetworkInterface getNetInt(); - - /** - * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.Agent#getNetInt <em>Net Int</em>}' reference. + * Returns the value of the '<em><b>Agent Type</b></em>' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @param value the new value of the '<em>Net Int</em>' reference. - * @see #getNetInt() + * @return the value of the '<em>Agent Type</em>' attribute. + * @see #setAgentType(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getAgent_AgentType() + * @model * @generated */ - void setNetInt(NetworkInterface value); + String getAgentType(); /** - * Returns the value of the '<em><b>PSensors</b></em>' reference list. - * The list contents are of type {@link ipos.project.DataModellntegration.iPos_Datamodel.PositionSensor}. + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.Agent#getAgentType <em>Agent Type</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @return the value of the '<em>PSensors</em>' reference list. - * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getAgent_PSensors() - * @model + * @param value the new value of the '<em>Agent Type</em>' attribute. + * @see #getAgentType() * @generated */ - EList<PositionSensor> getPSensors(); + void setAgentType(String value); } // Agent diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/AngularRate.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/AngularRate.java deleted file mode 100644 index 7d44f0984a7f4cdc55ae24e9c36b5d9152af7faa..0000000000000000000000000000000000000000 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/AngularRate.java +++ /dev/null @@ -1,18 +0,0 @@ -/** - */ -package ipos.project.DataModellntegration.iPos_Datamodel; - -import org.eclipse.emf.ecore.EObject; - -/** - * <!-- begin-user-doc --> - * A representation of the model object '<em><b>Angular Rate</b></em>'. - * <!-- end-user-doc --> - * - * - * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getAngularRate() - * @model - * @generated - */ -public interface AngularRate extends EObject { -} // AngularRate diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Beacon.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Beacon.java index 11f2f0f0f5811b9aba7478df4ee22ca5facf6567..4522ff76bf5e3c524236b5d014a75b64f6954649 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Beacon.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Beacon.java @@ -15,13 +15,14 @@ import java.util.Map; * <ul> * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.Beacon#getDistances <em>Distances</em>}</li> * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.Beacon#getType <em>Type</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.Beacon#getSensorId <em>Sensor Id</em>}</li> * </ul> * * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getBeacon() * @model * @generated */ -public interface Beacon extends Rawdata { +public interface Beacon extends RawdataEvent { /** * Returns the value of the '<em><b>Distances</b></em>' attribute. * <!-- begin-user-doc --> @@ -32,7 +33,7 @@ public interface Beacon extends Rawdata { * @model transient="true" * @generated */ - Map<String, Integer> getDistances(); + Map<String, Double> getDistances(); /** * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.Beacon#getDistances <em>Distances</em>}' attribute. @@ -42,7 +43,7 @@ public interface Beacon extends Rawdata { * @see #getDistances() * @generated */ - void setDistances(Map<String, Integer> value); + void setDistances(Map<String, Double> value); /** * Returns the value of the '<em><b>Type</b></em>' attribute. @@ -66,4 +67,26 @@ public interface Beacon extends Rawdata { */ void setType(String value); + /** + * Returns the value of the '<em><b>Sensor Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Sensor Id</em>' attribute. + * @see #setSensorId(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getBeacon_SensorId() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + String getSensorId(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.Beacon#getSensorId <em>Sensor Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Sensor Id</em>' attribute. + * @see #getSensorId() + * @generated + */ + void setSensorId(String value); + } // Beacon diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Bluetooth.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Bluetooth.java index d1f98e44798dcced0ecef5717251fb3dd3fa4984..5e7793c96575870014ffe8ccf3a65a4004987740 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Bluetooth.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Bluetooth.java @@ -31,7 +31,7 @@ public interface Bluetooth extends Beacon { * @model transient="true" * @generated */ - Map<String, Integer> getRss(); + Map<String, Double> getRss(); /** * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.Bluetooth#getRss <em>Rss</em>}' attribute. @@ -41,6 +41,6 @@ public interface Bluetooth extends Beacon { * @see #getRss() * @generated */ - void setRss(Map<String, Integer> value); + void setRss(Map<String, Double> value); } // Bluetooth diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/DataStorageQueryRequest.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/DataStorageQueryRequest.java deleted file mode 100644 index 9ac0c20521c1a22d76c177999b3f1b0fb9d5901d..0000000000000000000000000000000000000000 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/DataStorageQueryRequest.java +++ /dev/null @@ -1,18 +0,0 @@ -/** - */ -package ipos.project.DataModellntegration.iPos_Datamodel; - -import org.eclipse.emf.ecore.EObject; - -/** - * <!-- begin-user-doc --> - * A representation of the model object '<em><b>Data Storage Query Request</b></em>'. - * <!-- end-user-doc --> - * - * - * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getDataStorageQueryRequest() - * @model - * @generated - */ -public interface DataStorageQueryRequest extends EObject { -} // DataStorageQueryRequest diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/DataStorageQueryResponse.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/DataStorageQueryResponse.java new file mode 100644 index 0000000000000000000000000000000000000000..f2adfc0843c4444f89b92fb5a0ceb4994b7343df --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/DataStorageQueryResponse.java @@ -0,0 +1,61 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Data Storage Query Response</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.DataStorageQueryResponse#getPositionEvents <em>Position Events</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.DataStorageQueryResponse#getTrackingTaskId <em>Tracking Task Id</em>}</li> + * </ul> + * + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getDataStorageQueryResponse() + * @model + * @generated + */ +public interface DataStorageQueryResponse extends EObject { + /** + * Returns the value of the '<em><b>Position Events</b></em>' reference list. + * The list contents are of type {@link ipos.project.DataModellntegration.iPos_Datamodel.PositionEvent}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Position Events</em>' reference list. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getDataStorageQueryResponse_PositionEvents() + * @model + * @generated + */ + EList<PositionEvent> getPositionEvents(); + + /** + * Returns the value of the '<em><b>Tracking Task Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Tracking Task Id</em>' attribute. + * @see #setTrackingTaskId(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getDataStorageQueryResponse_TrackingTaskId() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + String getTrackingTaskId(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.DataStorageQueryResponse#getTrackingTaskId <em>Tracking Task Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Tracking Task Id</em>' attribute. + * @see #getTrackingTaskId() + * @generated + */ + void setTrackingTaskId(String value); + +} // DataStorageQueryResponse diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/EventFilterCondition.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/EventFilterCondition.java index 6aea00da4db647c20055103d4232a441c7d95bc5..1011992e2ff07dd31bc7083c48e709eee295b8a4 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/EventFilterCondition.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/EventFilterCondition.java @@ -4,6 +4,7 @@ package ipos.project.DataModellntegration.iPos_Datamodel; import java.util.ArrayList; import java.util.List; +import java.util.Map; import org.eclipse.emf.ecore.EObject; @@ -17,15 +18,16 @@ import org.eclipse.emf.ecore.EObject; * </p> * <ul> * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.EventFilterCondition#getTimeCondition <em>Time Condition</em>}</li> - * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.EventFilterCondition#getCategoryCondition <em>Category Condition</em>}</li> - * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.EventFilterCondition#getIdCondition <em>Id Condition</em>}</li> * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.EventFilterCondition#getAccuracyCondition <em>Accuracy Condition</em>}</li> * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.EventFilterCondition#getPositionCondition <em>Position Condition</em>}</li> * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.EventFilterCondition#getTimeMinInterval <em>Time Min Interval</em>}</li> * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.EventFilterCondition#getPositionDelta <em>Position Delta</em>}</li> * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.EventFilterCondition#getSensorIdCondition <em>Sensor Id Condition</em>}</li> * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.EventFilterCondition#getFilterStructure <em>Filter Structure</em>}</li> - * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.EventFilterCondition#getPositionConditionCell <em>Position Condition Cell</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.EventFilterCondition#getPositionConditionCells <em>Position Condition Cells</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.EventFilterCondition#getIdCondition <em>Id Condition</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.EventFilterCondition#getCategoryCondition <em>Category Condition</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.EventFilterCondition#getPropertyCondition <em>Property Condition</em>}</li> * </ul> * * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getEventFilterCondition() @@ -55,51 +57,6 @@ public interface EventFilterCondition extends EObject { */ void setTimeCondition(ArrayList<String[]> value); - /** - * Returns the value of the '<em><b>Category Condition</b></em>' attribute. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return the value of the '<em>Category Condition</em>' attribute. - * @see #setCategoryCondition(List) - * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getEventFilterCondition_CategoryCondition() - * @model dataType="ipos.project.DataModellntegration.iPos_Datamodel.StringList" transient="true" - * @generated - */ - List<String> getCategoryCondition(); - - /** - * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.EventFilterCondition#getCategoryCondition <em>Category Condition</em>}' attribute. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @param value the new value of the '<em>Category Condition</em>' attribute. - * @see #getCategoryCondition() - * @generated - */ - void setCategoryCondition(List<String> value); - - /** - * Returns the value of the '<em><b>Id Condition</b></em>' attribute. - * The default value is <code>""</code>. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return the value of the '<em>Id Condition</em>' attribute. - * @see #setIdCondition(List) - * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getEventFilterCondition_IdCondition() - * @model default="" dataType="ipos.project.DataModellntegration.iPos_Datamodel.StringList" transient="true" - * @generated - */ - List<String> getIdCondition(); - - /** - * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.EventFilterCondition#getIdCondition <em>Id Condition</em>}' attribute. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @param value the new value of the '<em>Id Condition</em>' attribute. - * @see #getIdCondition() - * @generated - */ - void setIdCondition(List<String> value); - /** * Returns the value of the '<em><b>Accuracy Condition</b></em>' attribute. * <!-- begin-user-doc --> @@ -233,25 +190,91 @@ public interface EventFilterCondition extends EObject { void setFilterStructure(boolean[] value); /** - * Returns the value of the '<em><b>Position Condition Cell</b></em>' attribute. + * Returns the value of the '<em><b>Position Condition Cells</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Position Condition Cells</em>' attribute. + * @see #setPositionConditionCells(Map) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getEventFilterCondition_PositionConditionCells() + * @model transient="true" + * @generated + */ + Map<String, ArrayList<Float[][]>> getPositionConditionCells(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.EventFilterCondition#getPositionConditionCells <em>Position Condition Cells</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Position Condition Cells</em>' attribute. + * @see #getPositionConditionCells() + * @generated + */ + void setPositionConditionCells(Map<String, ArrayList<Float[][]>> value); + + /** + * Returns the value of the '<em><b>Id Condition</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Id Condition</em>' attribute. + * @see #setIdCondition(List) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getEventFilterCondition_IdCondition() + * @model dataType="ipos.project.DataModellntegration.iPos_Datamodel.StringList" + * @generated + */ + List<String> getIdCondition(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.EventFilterCondition#getIdCondition <em>Id Condition</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Id Condition</em>' attribute. + * @see #getIdCondition() + * @generated + */ + void setIdCondition(List<String> value); + + /** + * Returns the value of the '<em><b>Category Condition</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Category Condition</em>' attribute. + * @see #setCategoryCondition(List) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getEventFilterCondition_CategoryCondition() + * @model dataType="ipos.project.DataModellntegration.iPos_Datamodel.StringList" + * @generated + */ + List<String> getCategoryCondition(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.EventFilterCondition#getCategoryCondition <em>Category Condition</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Category Condition</em>' attribute. + * @see #getCategoryCondition() + * @generated + */ + void setCategoryCondition(List<String> value); + + /** + * Returns the value of the '<em><b>Property Condition</b></em>' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @return the value of the '<em>Position Condition Cell</em>' attribute. - * @see #setPositionConditionCell(ArrayList) - * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getEventFilterCondition_PositionConditionCell() - * @model dataType="ipos.project.DataModellntegration.iPos_Datamodel.FloatArray3d" + * @return the value of the '<em>Property Condition</em>' attribute. + * @see #setPropertyCondition(List) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getEventFilterCondition_PropertyCondition() + * @model dataType="ipos.project.DataModellntegration.iPos_Datamodel.StringList" * @generated */ - ArrayList<Float[][]> getPositionConditionCell(); + List<String> getPropertyCondition(); /** - * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.EventFilterCondition#getPositionConditionCell <em>Position Condition Cell</em>}' attribute. + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.EventFilterCondition#getPropertyCondition <em>Property Condition</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @param value the new value of the '<em>Position Condition Cell</em>' attribute. - * @see #getPositionConditionCell() + * @param value the new value of the '<em>Property Condition</em>' attribute. + * @see #getPropertyCondition() * @generated */ - void setPositionConditionCell(ArrayList<Float[][]> value); + void setPropertyCondition(List<String> value); } // EventFilterCondition diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/EventFilterConfiguration.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/EventFilterConfiguration.java index 23300598f997de738c874155d4a111a8eb859c05..b71e0b91a85585528c74fc6c0292e1c4aa48a871 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/EventFilterConfiguration.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/EventFilterConfiguration.java @@ -96,7 +96,7 @@ public interface EventFilterConfiguration extends EObject { /** * Returns the value of the '<em><b>Eventfiltercondition</b></em>' reference list. - * The list contents are of type {@link ipos.project.DataModellntegration.iPos_Datamodel.EventFilterCondition}. + * The list contents are of type {@link ipos.project.DataModellntegration.iPos_Datamodel.TrackingTask}. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @return the value of the '<em>Eventfiltercondition</em>' reference list. @@ -104,6 +104,6 @@ public interface EventFilterConfiguration extends EObject { * @model * @generated */ - EList<EventFilterCondition> getEventfiltercondition(); + EList<TrackingTask> getEventfiltercondition(); } // EventFilterConfiguration diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IMU.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IMU.java index a3d48662c6f32a414073b56c9b35af8c4d236a00..a8a4fa1cdc600a32da9106493296e87eff0b98c1 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IMU.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IMU.java @@ -13,24 +13,25 @@ package ipos.project.DataModellntegration.iPos_Datamodel; * <ul> * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IMU#getAngularrate <em>Angularrate</em>}</li> * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IMU#getAcceleration <em>Acceleration</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IMU#getSensorId <em>Sensor Id</em>}</li> * </ul> * * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getIMU() * @model * @generated */ -public interface IMU extends Rawdata { +public interface IMU extends RawdataEvent { /** * Returns the value of the '<em><b>Angularrate</b></em>' reference. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @return the value of the '<em>Angularrate</em>' reference. - * @see #setAngularrate(AngularRate) + * @see #setAngularrate(Quaternion) * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getIMU_Angularrate() * @model required="true" * @generated */ - AngularRate getAngularrate(); + Quaternion getAngularrate(); /** * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IMU#getAngularrate <em>Angularrate</em>}' reference. @@ -40,7 +41,7 @@ public interface IMU extends Rawdata { * @see #getAngularrate() * @generated */ - void setAngularrate(AngularRate value); + void setAngularrate(Quaternion value); /** * Returns the value of the '<em><b>Acceleration</b></em>' reference. @@ -64,4 +65,26 @@ public interface IMU extends Rawdata { */ void setAcceleration(Acceleration value); + /** + * Returns the value of the '<em><b>Sensor Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Sensor Id</em>' attribute. + * @see #setSensorId(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getIMU_SensorId() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + String getSensorId(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IMU#getSensorId <em>Sensor Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Sensor Id</em>' attribute. + * @see #getSensorId() + * @generated + */ + void setSensorId(String value); + } // IMU diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/AgentRegistrationRequest.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/AgentRegistrationRequest.java similarity index 62% rename from src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/AgentRegistrationRequest.java rename to src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/AgentRegistrationRequest.java index 245a59a5ea83e5f860e65dadb596edc50600d603..50a046601aa580535e9792f26288d7c14d7ef83a 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/AgentRegistrationRequest.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/AgentRegistrationRequest.java @@ -1,6 +1,6 @@ /** */ -package ipos.project.DataModellntegration.iPos_Datamodel; +package ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit; import org.eclipse.emf.ecore.EObject; @@ -10,7 +10,7 @@ import org.eclipse.emf.ecore.EObject; * <!-- end-user-doc --> * * - * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getAgentRegistrationRequest() + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getAgentRegistrationRequest() * @model * @generated */ diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/DataStorageQueryRequest.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/DataStorageQueryRequest.java new file mode 100644 index 0000000000000000000000000000000000000000..b79fd4e0a3106485cd21fe67e4a73f3586833ebf --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/DataStorageQueryRequest.java @@ -0,0 +1,46 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Data Storage Query Request</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.DataStorageQueryRequest#getTrackingTaskId <em>Tracking Task Id</em>}</li> + * </ul> + * + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getDataStorageQueryRequest() + * @model + * @generated + */ +public interface DataStorageQueryRequest extends EObject { + /** + * Returns the value of the '<em><b>Tracking Task Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Tracking Task Id</em>' attribute. + * @see #setTrackingTaskId(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getDataStorageQueryRequest_TrackingTaskId() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + String getTrackingTaskId(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.DataStorageQueryRequest#getTrackingTaskId <em>Tracking Task Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Tracking Task Id</em>' attribute. + * @see #getTrackingTaskId() + * @generated + */ + void setTrackingTaskId(String value); + +} // DataStorageQueryRequest diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/DataStorageRequest.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/DataStorageRequest.java similarity index 62% rename from src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/DataStorageRequest.java rename to src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/DataStorageRequest.java index 460d3fea0334ca40d33c5a423fb87e629d07a25c..56035b22d714da8d2237d2607b199102a4159a3f 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/DataStorageRequest.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/DataStorageRequest.java @@ -1,6 +1,6 @@ /** */ -package ipos.project.DataModellntegration.iPos_Datamodel; +package ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit; import org.eclipse.emf.ecore.EObject; @@ -10,7 +10,7 @@ import org.eclipse.emf.ecore.EObject; * <!-- end-user-doc --> * * - * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getDataStorageRequest() + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getDataStorageRequest() * @model * @generated */ diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/IPosBTEvent.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/IPosBTEvent.java new file mode 100644 index 0000000000000000000000000000000000000000..945c10530f006353a9f17532454dd736fd66fe7f --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/IPosBTEvent.java @@ -0,0 +1,46 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit; + +import java.util.Map; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>IPos BT Event</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosBTEvent#getRss <em>Rss</em>}</li> + * </ul> + * + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getIPosBTEvent() + * @model + * @generated + */ +public interface IPosBTEvent extends IPosBeaconEvent { + /** + * Returns the value of the '<em><b>Rss</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Rss</em>' attribute. + * @see #setRss(Map) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getIPosBTEvent_Rss() + * @model transient="true" + * @generated + */ + Map<String, Double> getRss(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosBTEvent#getRss <em>Rss</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Rss</em>' attribute. + * @see #getRss() + * @generated + */ + void setRss(Map<String, Double> value); + +} // IPosBTEvent diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/IPosBarcodeEvent.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/IPosBarcodeEvent.java new file mode 100644 index 0000000000000000000000000000000000000000..f05cc136680c58e7ce869a53013454693c04978e --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/IPosBarcodeEvent.java @@ -0,0 +1,16 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>IPos Barcode Event</b></em>'. + * <!-- end-user-doc --> + * + * + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getIPosBarcodeEvent() + * @model + * @generated + */ +public interface IPosBarcodeEvent extends IPosProximityEvent { +} // IPosBarcodeEvent diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/IPosBeaconEvent.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/IPosBeaconEvent.java new file mode 100644 index 0000000000000000000000000000000000000000..74ede265daac0bbf5ca393862aa64f010c283943 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/IPosBeaconEvent.java @@ -0,0 +1,46 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit; + +import java.util.Map; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>IPos Beacon Event</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosBeaconEvent#getDistances <em>Distances</em>}</li> + * </ul> + * + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getIPosBeaconEvent() + * @model + * @generated + */ +public interface IPosBeaconEvent extends IPosRawdataEvent { + /** + * Returns the value of the '<em><b>Distances</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Distances</em>' attribute. + * @see #setDistances(Map) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getIPosBeaconEvent_Distances() + * @model transient="true" + * @generated + */ + Map<String, Double> getDistances(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosBeaconEvent#getDistances <em>Distances</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Distances</em>' attribute. + * @see #getDistances() + * @generated + */ + void setDistances(Map<String, Double> value); + +} // IPosBeaconEvent diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/IPosDevKitFactory.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/IPosDevKitFactory.java new file mode 100644 index 0000000000000000000000000000000000000000..ed0faace0f3f7b58256e374e3bfa7fed935c2213 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/IPosDevKitFactory.java @@ -0,0 +1,214 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit; + +import org.eclipse.emf.ecore.EFactory; + +/** + * <!-- begin-user-doc --> + * The <b>Factory</b> for the model. + * It provides a create method for each non-abstract class of the model. + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage + * @generated + */ +public interface IPosDevKitFactory extends EFactory { + /** + * The singleton instance of the factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + IPosDevKitFactory eINSTANCE = ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosDevKitFactoryImpl + .init(); + + /** + * Returns a new object of class '<em>Tracking Request</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Tracking Request</em>'. + * @generated + */ + TrackingRequest createTrackingRequest(); + + /** + * Returns a new object of class '<em>Monitoring Request</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Monitoring Request</em>'. + * @generated + */ + MonitoringRequest createMonitoringRequest(); + + /** + * Returns a new object of class '<em>World Model Update Request</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>World Model Update Request</em>'. + * @generated + */ + WorldModelUpdateRequest createWorldModelUpdateRequest(); + + /** + * Returns a new object of class '<em>Data Storage Request</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Data Storage Request</em>'. + * @generated + */ + DataStorageRequest createDataStorageRequest(); + + /** + * Returns a new object of class '<em>World Model Query Request</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>World Model Query Request</em>'. + * @generated + */ + WorldModelQueryRequest createWorldModelQueryRequest(); + + /** + * Returns a new object of class '<em>Data Storage Query Request</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Data Storage Query Request</em>'. + * @generated + */ + DataStorageQueryRequest createDataStorageQueryRequest(); + + /** + * Returns a new object of class '<em>Agent Registration Request</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Agent Registration Request</em>'. + * @generated + */ + AgentRegistrationRequest createAgentRegistrationRequest(); + + /** + * Returns a new object of class '<em>Sensor Configuration Request</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Sensor Configuration Request</em>'. + * @generated + */ + SensorConfigurationRequest createSensorConfigurationRequest(); + + /** + * Returns a new object of class '<em>Ipos Position Event</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Ipos Position Event</em>'. + * @generated + */ + IposPositionEvent createIposPositionEvent(); + + /** + * Returns a new object of class '<em>IPos Rawdata Event</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>IPos Rawdata Event</em>'. + * @generated + */ + IPosRawdataEvent createIPosRawdataEvent(); + + /** + * Returns a new object of class '<em>IPos Beacon Event</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>IPos Beacon Event</em>'. + * @generated + */ + IPosBeaconEvent createIPosBeaconEvent(); + + /** + * Returns a new object of class '<em>IPos UWB Event</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>IPos UWB Event</em>'. + * @generated + */ + IPosUWBEvent createIPosUWBEvent(); + + /** + * Returns a new object of class '<em>IPos BT Event</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>IPos BT Event</em>'. + * @generated + */ + IPosBTEvent createIPosBTEvent(); + + /** + * Returns a new object of class '<em>IPos Proximity Event</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>IPos Proximity Event</em>'. + * @generated + */ + IPosProximityEvent createIPosProximityEvent(); + + /** + * Returns a new object of class '<em>IPos NFC Event</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>IPos NFC Event</em>'. + * @generated + */ + IPosNFCEvent createIPosNFCEvent(); + + /** + * Returns a new object of class '<em>IPos Barcode Event</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>IPos Barcode Event</em>'. + * @generated + */ + IPosBarcodeEvent createIPosBarcodeEvent(); + + /** + * Returns a new object of class '<em>IPos RFID Event</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>IPos RFID Event</em>'. + * @generated + */ + IPosRFIDEvent createIPosRFIDEvent(); + + /** + * Returns a new object of class '<em>IPos Other Prox Event</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>IPos Other Prox Event</em>'. + * @generated + */ + IPosOtherProxEvent createIPosOtherProxEvent(); + + /** + * Returns a new object of class '<em>IPos Other Beacon Event</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>IPos Other Beacon Event</em>'. + * @generated + */ + IPosOtherBeaconEvent createIPosOtherBeaconEvent(); + + /** + * Returns a new object of class '<em>Ipos Msg Rcv Event</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Ipos Msg Rcv Event</em>'. + * @generated + */ + IposMsgRcvEvent createIposMsgRcvEvent(); + + /** + * Returns the package supported by this factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the package supported by this factory. + * @generated + */ + IPosDevKitPackage getIPosDevKitPackage(); + +} //IPosDevKitFactory diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/IPosDevKitPackage.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/IPosDevKitPackage.java new file mode 100644 index 0000000000000000000000000000000000000000..1214f3518a46a16c7b3815df51853340861ed976 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/IPosDevKitPackage.java @@ -0,0 +1,2690 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit; + +import org.eclipse.emf.ecore.EAttribute; +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EPackage; +import org.eclipse.emf.ecore.EReference; + +/** + * <!-- begin-user-doc --> + * The <b>Package</b> for the model. + * It contains accessors for the meta objects to represent + * <ul> + * <li>each class,</li> + * <li>each feature of each class,</li> + * <li>each operation of each class,</li> + * <li>each enum,</li> + * <li>and each data type</li> + * </ul> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitFactory + * @model kind="package" + * @generated + */ +public interface IPosDevKitPackage extends EPackage { + /** + * The package name. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + String eNAME = "IPosDevKit"; + + /** + * The package namespace URI. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + String eNS_URI = "IDK"; + + /** + * The package namespace name. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + String eNS_PREFIX = "IDK"; + + /** + * The singleton instance of the package. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + IPosDevKitPackage eINSTANCE = ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosDevKitPackageImpl + .init(); + + /** + * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.TrackingRequestImpl <em>Tracking Request</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.TrackingRequestImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosDevKitPackageImpl#getTrackingRequest() + * @generated + */ + int TRACKING_REQUEST = 0; + + /** + * The number of structural features of the '<em>Tracking Request</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TRACKING_REQUEST_FEATURE_COUNT = 0; + + /** + * The number of operations of the '<em>Tracking Request</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int TRACKING_REQUEST_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.MonitoringRequestImpl <em>Monitoring Request</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.MonitoringRequestImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosDevKitPackageImpl#getMonitoringRequest() + * @generated + */ + int MONITORING_REQUEST = 1; + + /** + * The feature id for the '<em><b>Frame Ids</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int MONITORING_REQUEST__FRAME_IDS = 0; + + /** + * The feature id for the '<em><b>Delta</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int MONITORING_REQUEST__DELTA = 1; + + /** + * The feature id for the '<em><b>Update Frequency</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int MONITORING_REQUEST__UPDATE_FREQUENCY = 2; + + /** + * The feature id for the '<em><b>Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int MONITORING_REQUEST__TYPE = 3; + + /** + * The feature id for the '<em><b>Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int MONITORING_REQUEST__ID = 4; + + /** + * The feature id for the '<em><b>Fusion Strategy</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int MONITORING_REQUEST__FUSION_STRATEGY = 5; + + /** + * The feature id for the '<em><b>Exit Notification</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int MONITORING_REQUEST__EXIT_NOTIFICATION = 6; + + /** + * The feature id for the '<em><b>Properties</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int MONITORING_REQUEST__PROPERTIES = 7; + + /** + * The feature id for the '<em><b>Monitoring Task Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int MONITORING_REQUEST__MONITORING_TASK_ID = 8; + + /** + * The feature id for the '<em><b>Requestor Protocol</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int MONITORING_REQUEST__REQUESTOR_PROTOCOL = 9; + + /** + * The feature id for the '<em><b>Serialization Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int MONITORING_REQUEST__SERIALIZATION_TYPE = 10; + + /** + * The feature id for the '<em><b>Ref System Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int MONITORING_REQUEST__REF_SYSTEM_ID = 11; + + /** + * The number of structural features of the '<em>Monitoring Request</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int MONITORING_REQUEST_FEATURE_COUNT = 12; + + /** + * The number of operations of the '<em>Monitoring Request</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int MONITORING_REQUEST_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.WorldModelUpdateRequestImpl <em>World Model Update Request</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.WorldModelUpdateRequestImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosDevKitPackageImpl#getWorldModelUpdateRequest() + * @generated + */ + int WORLD_MODEL_UPDATE_REQUEST = 2; + + /** + * The number of structural features of the '<em>World Model Update Request</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int WORLD_MODEL_UPDATE_REQUEST_FEATURE_COUNT = 0; + + /** + * The number of operations of the '<em>World Model Update Request</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int WORLD_MODEL_UPDATE_REQUEST_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.DataStorageRequestImpl <em>Data Storage Request</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.DataStorageRequestImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosDevKitPackageImpl#getDataStorageRequest() + * @generated + */ + int DATA_STORAGE_REQUEST = 3; + + /** + * The number of structural features of the '<em>Data Storage Request</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int DATA_STORAGE_REQUEST_FEATURE_COUNT = 0; + + /** + * The number of operations of the '<em>Data Storage Request</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int DATA_STORAGE_REQUEST_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.WorldModelQueryRequestImpl <em>World Model Query Request</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.WorldModelQueryRequestImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosDevKitPackageImpl#getWorldModelQueryRequest() + * @generated + */ + int WORLD_MODEL_QUERY_REQUEST = 4; + + /** + * The number of structural features of the '<em>World Model Query Request</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int WORLD_MODEL_QUERY_REQUEST_FEATURE_COUNT = 0; + + /** + * The number of operations of the '<em>World Model Query Request</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int WORLD_MODEL_QUERY_REQUEST_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.DataStorageQueryRequestImpl <em>Data Storage Query Request</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.DataStorageQueryRequestImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosDevKitPackageImpl#getDataStorageQueryRequest() + * @generated + */ + int DATA_STORAGE_QUERY_REQUEST = 5; + + /** + * The feature id for the '<em><b>Tracking Task Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int DATA_STORAGE_QUERY_REQUEST__TRACKING_TASK_ID = 0; + + /** + * The number of structural features of the '<em>Data Storage Query Request</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int DATA_STORAGE_QUERY_REQUEST_FEATURE_COUNT = 1; + + /** + * The number of operations of the '<em>Data Storage Query Request</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int DATA_STORAGE_QUERY_REQUEST_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.AgentRegistrationRequestImpl <em>Agent Registration Request</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.AgentRegistrationRequestImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosDevKitPackageImpl#getAgentRegistrationRequest() + * @generated + */ + int AGENT_REGISTRATION_REQUEST = 6; + + /** + * The number of structural features of the '<em>Agent Registration Request</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int AGENT_REGISTRATION_REQUEST_FEATURE_COUNT = 0; + + /** + * The number of operations of the '<em>Agent Registration Request</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int AGENT_REGISTRATION_REQUEST_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.SensorConfigurationRequestImpl <em>Sensor Configuration Request</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.SensorConfigurationRequestImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosDevKitPackageImpl#getSensorConfigurationRequest() + * @generated + */ + int SENSOR_CONFIGURATION_REQUEST = 7; + + /** + * The number of structural features of the '<em>Sensor Configuration Request</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int SENSOR_CONFIGURATION_REQUEST_FEATURE_COUNT = 0; + + /** + * The number of operations of the '<em>Sensor Configuration Request</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int SENSOR_CONFIGURATION_REQUEST_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IposPositionEventImpl <em>Ipos Position Event</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IposPositionEventImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosDevKitPackageImpl#getIposPositionEvent() + * @generated + */ + int IPOS_POSITION_EVENT = 8; + + /** + * The feature id for the '<em><b>Agent Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_POSITION_EVENT__AGENT_ID = 0; + + /** + * The feature id for the '<em><b>Sensor Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_POSITION_EVENT__SENSOR_ID = 1; + + /** + * The feature id for the '<em><b>Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_POSITION_EVENT__TYPE = 2; + + /** + * The feature id for the '<em><b>Sensor Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_POSITION_EVENT__SENSOR_TYPE = 3; + + /** + * The feature id for the '<em><b>Last Pos Update</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_POSITION_EVENT__LAST_POS_UPDATE = 4; + + /** + * The feature id for the '<em><b>Position</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_POSITION_EVENT__POSITION = 5; + + /** + * The feature id for the '<em><b>Orientation</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_POSITION_EVENT__ORIENTATION = 6; + + /** + * The feature id for the '<em><b>Zone Descriptors</b></em>' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_POSITION_EVENT__ZONE_DESCRIPTORS = 7; + + /** + * The number of structural features of the '<em>Ipos Position Event</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_POSITION_EVENT_FEATURE_COUNT = 8; + + /** + * The number of operations of the '<em>Ipos Position Event</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_POSITION_EVENT_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosRawdataEventImpl <em>IPos Rawdata Event</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosRawdataEventImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosDevKitPackageImpl#getIPosRawdataEvent() + * @generated + */ + int IPOS_RAWDATA_EVENT = 9; + + /** + * The feature id for the '<em><b>Agent Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_RAWDATA_EVENT__AGENT_ID = 0; + + /** + * The feature id for the '<em><b>Sensor Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_RAWDATA_EVENT__SENSOR_ID = 1; + + /** + * The feature id for the '<em><b>Agent Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_RAWDATA_EVENT__AGENT_TYPE = 2; + + /** + * The feature id for the '<em><b>Sensor Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_RAWDATA_EVENT__SENSOR_TYPE = 3; + + /** + * The feature id for the '<em><b>Time Stamp</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_RAWDATA_EVENT__TIME_STAMP = 4; + + /** + * The number of structural features of the '<em>IPos Rawdata Event</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_RAWDATA_EVENT_FEATURE_COUNT = 5; + + /** + * The number of operations of the '<em>IPos Rawdata Event</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_RAWDATA_EVENT_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosBeaconEventImpl <em>IPos Beacon Event</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosBeaconEventImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosDevKitPackageImpl#getIPosBeaconEvent() + * @generated + */ + int IPOS_BEACON_EVENT = 10; + + /** + * The feature id for the '<em><b>Agent Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_BEACON_EVENT__AGENT_ID = IPOS_RAWDATA_EVENT__AGENT_ID; + + /** + * The feature id for the '<em><b>Sensor Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_BEACON_EVENT__SENSOR_ID = IPOS_RAWDATA_EVENT__SENSOR_ID; + + /** + * The feature id for the '<em><b>Agent Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_BEACON_EVENT__AGENT_TYPE = IPOS_RAWDATA_EVENT__AGENT_TYPE; + + /** + * The feature id for the '<em><b>Sensor Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_BEACON_EVENT__SENSOR_TYPE = IPOS_RAWDATA_EVENT__SENSOR_TYPE; + + /** + * The feature id for the '<em><b>Time Stamp</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_BEACON_EVENT__TIME_STAMP = IPOS_RAWDATA_EVENT__TIME_STAMP; + + /** + * The feature id for the '<em><b>Distances</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_BEACON_EVENT__DISTANCES = IPOS_RAWDATA_EVENT_FEATURE_COUNT + 0; + + /** + * The number of structural features of the '<em>IPos Beacon Event</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_BEACON_EVENT_FEATURE_COUNT = IPOS_RAWDATA_EVENT_FEATURE_COUNT + 1; + + /** + * The number of operations of the '<em>IPos Beacon Event</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_BEACON_EVENT_OPERATION_COUNT = IPOS_RAWDATA_EVENT_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosUWBEventImpl <em>IPos UWB Event</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosUWBEventImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosDevKitPackageImpl#getIPosUWBEvent() + * @generated + */ + int IPOS_UWB_EVENT = 11; + + /** + * The feature id for the '<em><b>Agent Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_UWB_EVENT__AGENT_ID = IPOS_BEACON_EVENT__AGENT_ID; + + /** + * The feature id for the '<em><b>Sensor Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_UWB_EVENT__SENSOR_ID = IPOS_BEACON_EVENT__SENSOR_ID; + + /** + * The feature id for the '<em><b>Agent Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_UWB_EVENT__AGENT_TYPE = IPOS_BEACON_EVENT__AGENT_TYPE; + + /** + * The feature id for the '<em><b>Sensor Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_UWB_EVENT__SENSOR_TYPE = IPOS_BEACON_EVENT__SENSOR_TYPE; + + /** + * The feature id for the '<em><b>Time Stamp</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_UWB_EVENT__TIME_STAMP = IPOS_BEACON_EVENT__TIME_STAMP; + + /** + * The feature id for the '<em><b>Distances</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_UWB_EVENT__DISTANCES = IPOS_BEACON_EVENT__DISTANCES; + + /** + * The number of structural features of the '<em>IPos UWB Event</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_UWB_EVENT_FEATURE_COUNT = IPOS_BEACON_EVENT_FEATURE_COUNT + 0; + + /** + * The number of operations of the '<em>IPos UWB Event</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_UWB_EVENT_OPERATION_COUNT = IPOS_BEACON_EVENT_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosBTEventImpl <em>IPos BT Event</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosBTEventImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosDevKitPackageImpl#getIPosBTEvent() + * @generated + */ + int IPOS_BT_EVENT = 12; + + /** + * The feature id for the '<em><b>Agent Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_BT_EVENT__AGENT_ID = IPOS_BEACON_EVENT__AGENT_ID; + + /** + * The feature id for the '<em><b>Sensor Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_BT_EVENT__SENSOR_ID = IPOS_BEACON_EVENT__SENSOR_ID; + + /** + * The feature id for the '<em><b>Agent Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_BT_EVENT__AGENT_TYPE = IPOS_BEACON_EVENT__AGENT_TYPE; + + /** + * The feature id for the '<em><b>Sensor Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_BT_EVENT__SENSOR_TYPE = IPOS_BEACON_EVENT__SENSOR_TYPE; + + /** + * The feature id for the '<em><b>Time Stamp</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_BT_EVENT__TIME_STAMP = IPOS_BEACON_EVENT__TIME_STAMP; + + /** + * The feature id for the '<em><b>Distances</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_BT_EVENT__DISTANCES = IPOS_BEACON_EVENT__DISTANCES; + + /** + * The feature id for the '<em><b>Rss</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_BT_EVENT__RSS = IPOS_BEACON_EVENT_FEATURE_COUNT + 0; + + /** + * The number of structural features of the '<em>IPos BT Event</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_BT_EVENT_FEATURE_COUNT = IPOS_BEACON_EVENT_FEATURE_COUNT + 1; + + /** + * The number of operations of the '<em>IPos BT Event</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_BT_EVENT_OPERATION_COUNT = IPOS_BEACON_EVENT_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosProximityEventImpl <em>IPos Proximity Event</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosProximityEventImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosDevKitPackageImpl#getIPosProximityEvent() + * @generated + */ + int IPOS_PROXIMITY_EVENT = 13; + + /** + * The feature id for the '<em><b>Agent Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_PROXIMITY_EVENT__AGENT_ID = IPOS_RAWDATA_EVENT__AGENT_ID; + + /** + * The feature id for the '<em><b>Sensor Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_PROXIMITY_EVENT__SENSOR_ID = IPOS_RAWDATA_EVENT__SENSOR_ID; + + /** + * The feature id for the '<em><b>Agent Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_PROXIMITY_EVENT__AGENT_TYPE = IPOS_RAWDATA_EVENT__AGENT_TYPE; + + /** + * The feature id for the '<em><b>Sensor Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_PROXIMITY_EVENT__SENSOR_TYPE = IPOS_RAWDATA_EVENT__SENSOR_TYPE; + + /** + * The feature id for the '<em><b>Time Stamp</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_PROXIMITY_EVENT__TIME_STAMP = IPOS_RAWDATA_EVENT__TIME_STAMP; + + /** + * The feature id for the '<em><b>Tag Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_PROXIMITY_EVENT__TAG_ID = IPOS_RAWDATA_EVENT_FEATURE_COUNT + 0; + + /** + * The number of structural features of the '<em>IPos Proximity Event</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_PROXIMITY_EVENT_FEATURE_COUNT = IPOS_RAWDATA_EVENT_FEATURE_COUNT + 1; + + /** + * The number of operations of the '<em>IPos Proximity Event</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_PROXIMITY_EVENT_OPERATION_COUNT = IPOS_RAWDATA_EVENT_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosNFCEventImpl <em>IPos NFC Event</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosNFCEventImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosDevKitPackageImpl#getIPosNFCEvent() + * @generated + */ + int IPOS_NFC_EVENT = 14; + + /** + * The feature id for the '<em><b>Agent Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_NFC_EVENT__AGENT_ID = IPOS_PROXIMITY_EVENT__AGENT_ID; + + /** + * The feature id for the '<em><b>Sensor Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_NFC_EVENT__SENSOR_ID = IPOS_PROXIMITY_EVENT__SENSOR_ID; + + /** + * The feature id for the '<em><b>Agent Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_NFC_EVENT__AGENT_TYPE = IPOS_PROXIMITY_EVENT__AGENT_TYPE; + + /** + * The feature id for the '<em><b>Sensor Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_NFC_EVENT__SENSOR_TYPE = IPOS_PROXIMITY_EVENT__SENSOR_TYPE; + + /** + * The feature id for the '<em><b>Time Stamp</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_NFC_EVENT__TIME_STAMP = IPOS_PROXIMITY_EVENT__TIME_STAMP; + + /** + * The feature id for the '<em><b>Tag Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_NFC_EVENT__TAG_ID = IPOS_PROXIMITY_EVENT__TAG_ID; + + /** + * The feature id for the '<em><b>Tag Data</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_NFC_EVENT__TAG_DATA = IPOS_PROXIMITY_EVENT_FEATURE_COUNT + 0; + + /** + * The number of structural features of the '<em>IPos NFC Event</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_NFC_EVENT_FEATURE_COUNT = IPOS_PROXIMITY_EVENT_FEATURE_COUNT + 1; + + /** + * The number of operations of the '<em>IPos NFC Event</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_NFC_EVENT_OPERATION_COUNT = IPOS_PROXIMITY_EVENT_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosBarcodeEventImpl <em>IPos Barcode Event</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosBarcodeEventImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosDevKitPackageImpl#getIPosBarcodeEvent() + * @generated + */ + int IPOS_BARCODE_EVENT = 15; + + /** + * The feature id for the '<em><b>Agent Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_BARCODE_EVENT__AGENT_ID = IPOS_PROXIMITY_EVENT__AGENT_ID; + + /** + * The feature id for the '<em><b>Sensor Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_BARCODE_EVENT__SENSOR_ID = IPOS_PROXIMITY_EVENT__SENSOR_ID; + + /** + * The feature id for the '<em><b>Agent Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_BARCODE_EVENT__AGENT_TYPE = IPOS_PROXIMITY_EVENT__AGENT_TYPE; + + /** + * The feature id for the '<em><b>Sensor Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_BARCODE_EVENT__SENSOR_TYPE = IPOS_PROXIMITY_EVENT__SENSOR_TYPE; + + /** + * The feature id for the '<em><b>Time Stamp</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_BARCODE_EVENT__TIME_STAMP = IPOS_PROXIMITY_EVENT__TIME_STAMP; + + /** + * The feature id for the '<em><b>Tag Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_BARCODE_EVENT__TAG_ID = IPOS_PROXIMITY_EVENT__TAG_ID; + + /** + * The number of structural features of the '<em>IPos Barcode Event</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_BARCODE_EVENT_FEATURE_COUNT = IPOS_PROXIMITY_EVENT_FEATURE_COUNT + 0; + + /** + * The number of operations of the '<em>IPos Barcode Event</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_BARCODE_EVENT_OPERATION_COUNT = IPOS_PROXIMITY_EVENT_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosRFIDEventImpl <em>IPos RFID Event</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosRFIDEventImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosDevKitPackageImpl#getIPosRFIDEvent() + * @generated + */ + int IPOS_RFID_EVENT = 16; + + /** + * The feature id for the '<em><b>Agent Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_RFID_EVENT__AGENT_ID = IPOS_PROXIMITY_EVENT__AGENT_ID; + + /** + * The feature id for the '<em><b>Sensor Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_RFID_EVENT__SENSOR_ID = IPOS_PROXIMITY_EVENT__SENSOR_ID; + + /** + * The feature id for the '<em><b>Agent Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_RFID_EVENT__AGENT_TYPE = IPOS_PROXIMITY_EVENT__AGENT_TYPE; + + /** + * The feature id for the '<em><b>Sensor Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_RFID_EVENT__SENSOR_TYPE = IPOS_PROXIMITY_EVENT__SENSOR_TYPE; + + /** + * The feature id for the '<em><b>Time Stamp</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_RFID_EVENT__TIME_STAMP = IPOS_PROXIMITY_EVENT__TIME_STAMP; + + /** + * The feature id for the '<em><b>Tag Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_RFID_EVENT__TAG_ID = IPOS_PROXIMITY_EVENT__TAG_ID; + + /** + * The feature id for the '<em><b>Location</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_RFID_EVENT__LOCATION = IPOS_PROXIMITY_EVENT_FEATURE_COUNT + 0; + + /** + * The number of structural features of the '<em>IPos RFID Event</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_RFID_EVENT_FEATURE_COUNT = IPOS_PROXIMITY_EVENT_FEATURE_COUNT + 1; + + /** + * The number of operations of the '<em>IPos RFID Event</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_RFID_EVENT_OPERATION_COUNT = IPOS_PROXIMITY_EVENT_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosOtherProxEventImpl <em>IPos Other Prox Event</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosOtherProxEventImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosDevKitPackageImpl#getIPosOtherProxEvent() + * @generated + */ + int IPOS_OTHER_PROX_EVENT = 17; + + /** + * The feature id for the '<em><b>Agent Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_OTHER_PROX_EVENT__AGENT_ID = IPOS_PROXIMITY_EVENT__AGENT_ID; + + /** + * The feature id for the '<em><b>Sensor Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_OTHER_PROX_EVENT__SENSOR_ID = IPOS_PROXIMITY_EVENT__SENSOR_ID; + + /** + * The feature id for the '<em><b>Agent Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_OTHER_PROX_EVENT__AGENT_TYPE = IPOS_PROXIMITY_EVENT__AGENT_TYPE; + + /** + * The feature id for the '<em><b>Sensor Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_OTHER_PROX_EVENT__SENSOR_TYPE = IPOS_PROXIMITY_EVENT__SENSOR_TYPE; + + /** + * The feature id for the '<em><b>Time Stamp</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_OTHER_PROX_EVENT__TIME_STAMP = IPOS_PROXIMITY_EVENT__TIME_STAMP; + + /** + * The feature id for the '<em><b>Tag Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_OTHER_PROX_EVENT__TAG_ID = IPOS_PROXIMITY_EVENT__TAG_ID; + + /** + * The feature id for the '<em><b>Data</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_OTHER_PROX_EVENT__DATA = IPOS_PROXIMITY_EVENT_FEATURE_COUNT + 0; + + /** + * The number of structural features of the '<em>IPos Other Prox Event</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_OTHER_PROX_EVENT_FEATURE_COUNT = IPOS_PROXIMITY_EVENT_FEATURE_COUNT + 1; + + /** + * The number of operations of the '<em>IPos Other Prox Event</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_OTHER_PROX_EVENT_OPERATION_COUNT = IPOS_PROXIMITY_EVENT_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosOtherBeaconEventImpl <em>IPos Other Beacon Event</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosOtherBeaconEventImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosDevKitPackageImpl#getIPosOtherBeaconEvent() + * @generated + */ + int IPOS_OTHER_BEACON_EVENT = 18; + + /** + * The feature id for the '<em><b>Agent Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_OTHER_BEACON_EVENT__AGENT_ID = IPOS_BEACON_EVENT__AGENT_ID; + + /** + * The feature id for the '<em><b>Sensor Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_OTHER_BEACON_EVENT__SENSOR_ID = IPOS_BEACON_EVENT__SENSOR_ID; + + /** + * The feature id for the '<em><b>Agent Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_OTHER_BEACON_EVENT__AGENT_TYPE = IPOS_BEACON_EVENT__AGENT_TYPE; + + /** + * The feature id for the '<em><b>Sensor Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_OTHER_BEACON_EVENT__SENSOR_TYPE = IPOS_BEACON_EVENT__SENSOR_TYPE; + + /** + * The feature id for the '<em><b>Time Stamp</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_OTHER_BEACON_EVENT__TIME_STAMP = IPOS_BEACON_EVENT__TIME_STAMP; + + /** + * The feature id for the '<em><b>Distances</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_OTHER_BEACON_EVENT__DISTANCES = IPOS_BEACON_EVENT__DISTANCES; + + /** + * The feature id for the '<em><b>Data</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_OTHER_BEACON_EVENT__DATA = IPOS_BEACON_EVENT_FEATURE_COUNT + 0; + + /** + * The number of structural features of the '<em>IPos Other Beacon Event</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_OTHER_BEACON_EVENT_FEATURE_COUNT = IPOS_BEACON_EVENT_FEATURE_COUNT + 1; + + /** + * The number of operations of the '<em>IPos Other Beacon Event</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_OTHER_BEACON_EVENT_OPERATION_COUNT = IPOS_BEACON_EVENT_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IposMsgRcvEventImpl <em>Ipos Msg Rcv Event</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IposMsgRcvEventImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosDevKitPackageImpl#getIposMsgRcvEvent() + * @generated + */ + int IPOS_MSG_RCV_EVENT = 19; + + /** + * The feature id for the '<em><b>Protocol Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_MSG_RCV_EVENT__PROTOCOL_NAME = 0; + + /** + * The feature id for the '<em><b>Serialized Msg</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_MSG_RCV_EVENT__SERIALIZED_MSG = 1; + + /** + * The feature id for the '<em><b>Last Pos Update</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_MSG_RCV_EVENT__LAST_POS_UPDATE = 2; + + /** + * The feature id for the '<em><b>Last Known Position</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_MSG_RCV_EVENT__LAST_KNOWN_POSITION = 3; + + /** + * The feature id for the '<em><b>Last Known Orientation</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_MSG_RCV_EVENT__LAST_KNOWN_ORIENTATION = 4; + + /** + * The feature id for the '<em><b>Last Known Zonedescriptors</b></em>' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_MSG_RCV_EVENT__LAST_KNOWN_ZONEDESCRIPTORS = 5; + + /** + * The feature id for the '<em><b>Agent Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_MSG_RCV_EVENT__AGENT_ID = 6; + + /** + * The feature id for the '<em><b>Extracted Attributes</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_MSG_RCV_EVENT__EXTRACTED_ATTRIBUTES = 7; + + /** + * The feature id for the '<em><b>Timestamp</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_MSG_RCV_EVENT__TIMESTAMP = 8; + + /** + * The number of structural features of the '<em>Ipos Msg Rcv Event</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_MSG_RCV_EVENT_FEATURE_COUNT = 9; + + /** + * The number of operations of the '<em>Ipos Msg Rcv Event</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IPOS_MSG_RCV_EVENT_OPERATION_COUNT = 0; + + /** + * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.TrackingRequest <em>Tracking Request</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Tracking Request</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.TrackingRequest + * @generated + */ + EClass getTrackingRequest(); + + /** + * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest <em>Monitoring Request</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Monitoring Request</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest + * @generated + */ + EClass getMonitoringRequest(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest#getFrameIds <em>Frame Ids</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Frame Ids</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest#getFrameIds() + * @see #getMonitoringRequest() + * @generated + */ + EAttribute getMonitoringRequest_FrameIds(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest#getDelta <em>Delta</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Delta</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest#getDelta() + * @see #getMonitoringRequest() + * @generated + */ + EAttribute getMonitoringRequest_Delta(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest#getUpdateFrequency <em>Update Frequency</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Update Frequency</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest#getUpdateFrequency() + * @see #getMonitoringRequest() + * @generated + */ + EAttribute getMonitoringRequest_UpdateFrequency(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest#getType <em>Type</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Type</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest#getType() + * @see #getMonitoringRequest() + * @generated + */ + EAttribute getMonitoringRequest_Type(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest#getId <em>Id</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Id</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest#getId() + * @see #getMonitoringRequest() + * @generated + */ + EAttribute getMonitoringRequest_Id(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest#getFusionStrategy <em>Fusion Strategy</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Fusion Strategy</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest#getFusionStrategy() + * @see #getMonitoringRequest() + * @generated + */ + EAttribute getMonitoringRequest_FusionStrategy(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest#isExitNotification <em>Exit Notification</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Exit Notification</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest#isExitNotification() + * @see #getMonitoringRequest() + * @generated + */ + EAttribute getMonitoringRequest_ExitNotification(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest#getProperties <em>Properties</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Properties</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest#getProperties() + * @see #getMonitoringRequest() + * @generated + */ + EAttribute getMonitoringRequest_Properties(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest#getMonitoringTaskId <em>Monitoring Task Id</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Monitoring Task Id</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest#getMonitoringTaskId() + * @see #getMonitoringRequest() + * @generated + */ + EAttribute getMonitoringRequest_MonitoringTaskId(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest#getRequestorProtocol <em>Requestor Protocol</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Requestor Protocol</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest#getRequestorProtocol() + * @see #getMonitoringRequest() + * @generated + */ + EAttribute getMonitoringRequest_RequestorProtocol(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest#getSerializationType <em>Serialization Type</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Serialization Type</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest#getSerializationType() + * @see #getMonitoringRequest() + * @generated + */ + EAttribute getMonitoringRequest_SerializationType(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest#getRefSystemId <em>Ref System Id</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Ref System Id</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest#getRefSystemId() + * @see #getMonitoringRequest() + * @generated + */ + EAttribute getMonitoringRequest_RefSystemId(); + + /** + * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.WorldModelUpdateRequest <em>World Model Update Request</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>World Model Update Request</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.WorldModelUpdateRequest + * @generated + */ + EClass getWorldModelUpdateRequest(); + + /** + * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.DataStorageRequest <em>Data Storage Request</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Data Storage Request</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.DataStorageRequest + * @generated + */ + EClass getDataStorageRequest(); + + /** + * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.WorldModelQueryRequest <em>World Model Query Request</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>World Model Query Request</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.WorldModelQueryRequest + * @generated + */ + EClass getWorldModelQueryRequest(); + + /** + * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.DataStorageQueryRequest <em>Data Storage Query Request</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Data Storage Query Request</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.DataStorageQueryRequest + * @generated + */ + EClass getDataStorageQueryRequest(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.DataStorageQueryRequest#getTrackingTaskId <em>Tracking Task Id</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Tracking Task Id</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.DataStorageQueryRequest#getTrackingTaskId() + * @see #getDataStorageQueryRequest() + * @generated + */ + EAttribute getDataStorageQueryRequest_TrackingTaskId(); + + /** + * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.AgentRegistrationRequest <em>Agent Registration Request</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Agent Registration Request</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.AgentRegistrationRequest + * @generated + */ + EClass getAgentRegistrationRequest(); + + /** + * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.SensorConfigurationRequest <em>Sensor Configuration Request</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Sensor Configuration Request</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.SensorConfigurationRequest + * @generated + */ + EClass getSensorConfigurationRequest(); + + /** + * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposPositionEvent <em>Ipos Position Event</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Ipos Position Event</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposPositionEvent + * @generated + */ + EClass getIposPositionEvent(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposPositionEvent#getAgentId <em>Agent Id</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Agent Id</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposPositionEvent#getAgentId() + * @see #getIposPositionEvent() + * @generated + */ + EAttribute getIposPositionEvent_AgentId(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposPositionEvent#getSensorId <em>Sensor Id</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Sensor Id</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposPositionEvent#getSensorId() + * @see #getIposPositionEvent() + * @generated + */ + EAttribute getIposPositionEvent_SensorId(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposPositionEvent#getType <em>Type</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Type</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposPositionEvent#getType() + * @see #getIposPositionEvent() + * @generated + */ + EAttribute getIposPositionEvent_Type(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposPositionEvent#getSensorType <em>Sensor Type</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Sensor Type</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposPositionEvent#getSensorType() + * @see #getIposPositionEvent() + * @generated + */ + EAttribute getIposPositionEvent_SensorType(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposPositionEvent#getLastPosUpdate <em>Last Pos Update</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Last Pos Update</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposPositionEvent#getLastPosUpdate() + * @see #getIposPositionEvent() + * @generated + */ + EAttribute getIposPositionEvent_LastPosUpdate(); + + /** + * Returns the meta object for the reference '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposPositionEvent#getPosition <em>Position</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference '<em>Position</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposPositionEvent#getPosition() + * @see #getIposPositionEvent() + * @generated + */ + EReference getIposPositionEvent_Position(); + + /** + * Returns the meta object for the reference '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposPositionEvent#getOrientation <em>Orientation</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference '<em>Orientation</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposPositionEvent#getOrientation() + * @see #getIposPositionEvent() + * @generated + */ + EReference getIposPositionEvent_Orientation(); + + /** + * Returns the meta object for the reference list '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposPositionEvent#getZoneDescriptors <em>Zone Descriptors</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference list '<em>Zone Descriptors</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposPositionEvent#getZoneDescriptors() + * @see #getIposPositionEvent() + * @generated + */ + EReference getIposPositionEvent_ZoneDescriptors(); + + /** + * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosRawdataEvent <em>IPos Rawdata Event</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>IPos Rawdata Event</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosRawdataEvent + * @generated + */ + EClass getIPosRawdataEvent(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosRawdataEvent#getAgentId <em>Agent Id</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Agent Id</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosRawdataEvent#getAgentId() + * @see #getIPosRawdataEvent() + * @generated + */ + EAttribute getIPosRawdataEvent_AgentId(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosRawdataEvent#getSensorId <em>Sensor Id</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Sensor Id</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosRawdataEvent#getSensorId() + * @see #getIPosRawdataEvent() + * @generated + */ + EAttribute getIPosRawdataEvent_SensorId(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosRawdataEvent#getAgentType <em>Agent Type</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Agent Type</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosRawdataEvent#getAgentType() + * @see #getIPosRawdataEvent() + * @generated + */ + EAttribute getIPosRawdataEvent_AgentType(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosRawdataEvent#getSensorType <em>Sensor Type</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Sensor Type</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosRawdataEvent#getSensorType() + * @see #getIPosRawdataEvent() + * @generated + */ + EAttribute getIPosRawdataEvent_SensorType(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosRawdataEvent#getTimeStamp <em>Time Stamp</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Time Stamp</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosRawdataEvent#getTimeStamp() + * @see #getIPosRawdataEvent() + * @generated + */ + EAttribute getIPosRawdataEvent_TimeStamp(); + + /** + * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosBeaconEvent <em>IPos Beacon Event</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>IPos Beacon Event</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosBeaconEvent + * @generated + */ + EClass getIPosBeaconEvent(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosBeaconEvent#getDistances <em>Distances</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Distances</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosBeaconEvent#getDistances() + * @see #getIPosBeaconEvent() + * @generated + */ + EAttribute getIPosBeaconEvent_Distances(); + + /** + * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosUWBEvent <em>IPos UWB Event</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>IPos UWB Event</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosUWBEvent + * @generated + */ + EClass getIPosUWBEvent(); + + /** + * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosBTEvent <em>IPos BT Event</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>IPos BT Event</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosBTEvent + * @generated + */ + EClass getIPosBTEvent(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosBTEvent#getRss <em>Rss</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Rss</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosBTEvent#getRss() + * @see #getIPosBTEvent() + * @generated + */ + EAttribute getIPosBTEvent_Rss(); + + /** + * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosProximityEvent <em>IPos Proximity Event</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>IPos Proximity Event</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosProximityEvent + * @generated + */ + EClass getIPosProximityEvent(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosProximityEvent#getTagId <em>Tag Id</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Tag Id</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosProximityEvent#getTagId() + * @see #getIPosProximityEvent() + * @generated + */ + EAttribute getIPosProximityEvent_TagId(); + + /** + * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosNFCEvent <em>IPos NFC Event</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>IPos NFC Event</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosNFCEvent + * @generated + */ + EClass getIPosNFCEvent(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosNFCEvent#getTagData <em>Tag Data</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Tag Data</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosNFCEvent#getTagData() + * @see #getIPosNFCEvent() + * @generated + */ + EAttribute getIPosNFCEvent_TagData(); + + /** + * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosBarcodeEvent <em>IPos Barcode Event</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>IPos Barcode Event</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosBarcodeEvent + * @generated + */ + EClass getIPosBarcodeEvent(); + + /** + * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosRFIDEvent <em>IPos RFID Event</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>IPos RFID Event</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosRFIDEvent + * @generated + */ + EClass getIPosRFIDEvent(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosRFIDEvent#getLocation <em>Location</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Location</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosRFIDEvent#getLocation() + * @see #getIPosRFIDEvent() + * @generated + */ + EAttribute getIPosRFIDEvent_Location(); + + /** + * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosOtherProxEvent <em>IPos Other Prox Event</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>IPos Other Prox Event</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosOtherProxEvent + * @generated + */ + EClass getIPosOtherProxEvent(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosOtherProxEvent#getData <em>Data</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Data</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosOtherProxEvent#getData() + * @see #getIPosOtherProxEvent() + * @generated + */ + EAttribute getIPosOtherProxEvent_Data(); + + /** + * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosOtherBeaconEvent <em>IPos Other Beacon Event</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>IPos Other Beacon Event</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosOtherBeaconEvent + * @generated + */ + EClass getIPosOtherBeaconEvent(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosOtherBeaconEvent#getData <em>Data</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Data</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosOtherBeaconEvent#getData() + * @see #getIPosOtherBeaconEvent() + * @generated + */ + EAttribute getIPosOtherBeaconEvent_Data(); + + /** + * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposMsgRcvEvent <em>Ipos Msg Rcv Event</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Ipos Msg Rcv Event</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposMsgRcvEvent + * @generated + */ + EClass getIposMsgRcvEvent(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposMsgRcvEvent#getProtocolName <em>Protocol Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Protocol Name</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposMsgRcvEvent#getProtocolName() + * @see #getIposMsgRcvEvent() + * @generated + */ + EAttribute getIposMsgRcvEvent_ProtocolName(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposMsgRcvEvent#getSerializedMsg <em>Serialized Msg</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Serialized Msg</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposMsgRcvEvent#getSerializedMsg() + * @see #getIposMsgRcvEvent() + * @generated + */ + EAttribute getIposMsgRcvEvent_SerializedMsg(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposMsgRcvEvent#getLastPosUpdate <em>Last Pos Update</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Last Pos Update</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposMsgRcvEvent#getLastPosUpdate() + * @see #getIposMsgRcvEvent() + * @generated + */ + EAttribute getIposMsgRcvEvent_LastPosUpdate(); + + /** + * Returns the meta object for the reference '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposMsgRcvEvent#getLastKnownPosition <em>Last Known Position</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference '<em>Last Known Position</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposMsgRcvEvent#getLastKnownPosition() + * @see #getIposMsgRcvEvent() + * @generated + */ + EReference getIposMsgRcvEvent_LastKnownPosition(); + + /** + * Returns the meta object for the reference '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposMsgRcvEvent#getLastKnownOrientation <em>Last Known Orientation</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference '<em>Last Known Orientation</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposMsgRcvEvent#getLastKnownOrientation() + * @see #getIposMsgRcvEvent() + * @generated + */ + EReference getIposMsgRcvEvent_LastKnownOrientation(); + + /** + * Returns the meta object for the reference list '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposMsgRcvEvent#getLastKnownZonedescriptors <em>Last Known Zonedescriptors</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference list '<em>Last Known Zonedescriptors</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposMsgRcvEvent#getLastKnownZonedescriptors() + * @see #getIposMsgRcvEvent() + * @generated + */ + EReference getIposMsgRcvEvent_LastKnownZonedescriptors(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposMsgRcvEvent#getAgentId <em>Agent Id</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Agent Id</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposMsgRcvEvent#getAgentId() + * @see #getIposMsgRcvEvent() + * @generated + */ + EAttribute getIposMsgRcvEvent_AgentId(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposMsgRcvEvent#getExtractedAttributes <em>Extracted Attributes</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Extracted Attributes</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposMsgRcvEvent#getExtractedAttributes() + * @see #getIposMsgRcvEvent() + * @generated + */ + EAttribute getIposMsgRcvEvent_ExtractedAttributes(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposMsgRcvEvent#getTimestamp <em>Timestamp</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Timestamp</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposMsgRcvEvent#getTimestamp() + * @see #getIposMsgRcvEvent() + * @generated + */ + EAttribute getIposMsgRcvEvent_Timestamp(); + + /** + * Returns the factory that creates the instances of the model. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the factory that creates the instances of the model. + * @generated + */ + IPosDevKitFactory getIPosDevKitFactory(); + + /** + * <!-- begin-user-doc --> + * Defines literals for the meta objects that represent + * <ul> + * <li>each class,</li> + * <li>each feature of each class,</li> + * <li>each operation of each class,</li> + * <li>each enum,</li> + * <li>and each data type</li> + * </ul> + * <!-- end-user-doc --> + * @generated + */ + interface Literals { + /** + * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.TrackingRequestImpl <em>Tracking Request</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.TrackingRequestImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosDevKitPackageImpl#getTrackingRequest() + * @generated + */ + EClass TRACKING_REQUEST = eINSTANCE.getTrackingRequest(); + + /** + * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.MonitoringRequestImpl <em>Monitoring Request</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.MonitoringRequestImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosDevKitPackageImpl#getMonitoringRequest() + * @generated + */ + EClass MONITORING_REQUEST = eINSTANCE.getMonitoringRequest(); + + /** + * The meta object literal for the '<em><b>Frame Ids</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute MONITORING_REQUEST__FRAME_IDS = eINSTANCE.getMonitoringRequest_FrameIds(); + + /** + * The meta object literal for the '<em><b>Delta</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute MONITORING_REQUEST__DELTA = eINSTANCE.getMonitoringRequest_Delta(); + + /** + * The meta object literal for the '<em><b>Update Frequency</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute MONITORING_REQUEST__UPDATE_FREQUENCY = eINSTANCE.getMonitoringRequest_UpdateFrequency(); + + /** + * The meta object literal for the '<em><b>Type</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute MONITORING_REQUEST__TYPE = eINSTANCE.getMonitoringRequest_Type(); + + /** + * The meta object literal for the '<em><b>Id</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute MONITORING_REQUEST__ID = eINSTANCE.getMonitoringRequest_Id(); + + /** + * The meta object literal for the '<em><b>Fusion Strategy</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute MONITORING_REQUEST__FUSION_STRATEGY = eINSTANCE.getMonitoringRequest_FusionStrategy(); + + /** + * The meta object literal for the '<em><b>Exit Notification</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute MONITORING_REQUEST__EXIT_NOTIFICATION = eINSTANCE.getMonitoringRequest_ExitNotification(); + + /** + * The meta object literal for the '<em><b>Properties</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute MONITORING_REQUEST__PROPERTIES = eINSTANCE.getMonitoringRequest_Properties(); + + /** + * The meta object literal for the '<em><b>Monitoring Task Id</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute MONITORING_REQUEST__MONITORING_TASK_ID = eINSTANCE.getMonitoringRequest_MonitoringTaskId(); + + /** + * The meta object literal for the '<em><b>Requestor Protocol</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute MONITORING_REQUEST__REQUESTOR_PROTOCOL = eINSTANCE.getMonitoringRequest_RequestorProtocol(); + + /** + * The meta object literal for the '<em><b>Serialization Type</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute MONITORING_REQUEST__SERIALIZATION_TYPE = eINSTANCE.getMonitoringRequest_SerializationType(); + + /** + * The meta object literal for the '<em><b>Ref System Id</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute MONITORING_REQUEST__REF_SYSTEM_ID = eINSTANCE.getMonitoringRequest_RefSystemId(); + + /** + * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.WorldModelUpdateRequestImpl <em>World Model Update Request</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.WorldModelUpdateRequestImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosDevKitPackageImpl#getWorldModelUpdateRequest() + * @generated + */ + EClass WORLD_MODEL_UPDATE_REQUEST = eINSTANCE.getWorldModelUpdateRequest(); + + /** + * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.DataStorageRequestImpl <em>Data Storage Request</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.DataStorageRequestImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosDevKitPackageImpl#getDataStorageRequest() + * @generated + */ + EClass DATA_STORAGE_REQUEST = eINSTANCE.getDataStorageRequest(); + + /** + * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.WorldModelQueryRequestImpl <em>World Model Query Request</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.WorldModelQueryRequestImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosDevKitPackageImpl#getWorldModelQueryRequest() + * @generated + */ + EClass WORLD_MODEL_QUERY_REQUEST = eINSTANCE.getWorldModelQueryRequest(); + + /** + * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.DataStorageQueryRequestImpl <em>Data Storage Query Request</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.DataStorageQueryRequestImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosDevKitPackageImpl#getDataStorageQueryRequest() + * @generated + */ + EClass DATA_STORAGE_QUERY_REQUEST = eINSTANCE.getDataStorageQueryRequest(); + + /** + * The meta object literal for the '<em><b>Tracking Task Id</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute DATA_STORAGE_QUERY_REQUEST__TRACKING_TASK_ID = eINSTANCE.getDataStorageQueryRequest_TrackingTaskId(); + + /** + * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.AgentRegistrationRequestImpl <em>Agent Registration Request</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.AgentRegistrationRequestImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosDevKitPackageImpl#getAgentRegistrationRequest() + * @generated + */ + EClass AGENT_REGISTRATION_REQUEST = eINSTANCE.getAgentRegistrationRequest(); + + /** + * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.SensorConfigurationRequestImpl <em>Sensor Configuration Request</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.SensorConfigurationRequestImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosDevKitPackageImpl#getSensorConfigurationRequest() + * @generated + */ + EClass SENSOR_CONFIGURATION_REQUEST = eINSTANCE.getSensorConfigurationRequest(); + + /** + * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IposPositionEventImpl <em>Ipos Position Event</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IposPositionEventImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosDevKitPackageImpl#getIposPositionEvent() + * @generated + */ + EClass IPOS_POSITION_EVENT = eINSTANCE.getIposPositionEvent(); + + /** + * The meta object literal for the '<em><b>Agent Id</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute IPOS_POSITION_EVENT__AGENT_ID = eINSTANCE.getIposPositionEvent_AgentId(); + + /** + * The meta object literal for the '<em><b>Sensor Id</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute IPOS_POSITION_EVENT__SENSOR_ID = eINSTANCE.getIposPositionEvent_SensorId(); + + /** + * The meta object literal for the '<em><b>Type</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute IPOS_POSITION_EVENT__TYPE = eINSTANCE.getIposPositionEvent_Type(); + + /** + * The meta object literal for the '<em><b>Sensor Type</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute IPOS_POSITION_EVENT__SENSOR_TYPE = eINSTANCE.getIposPositionEvent_SensorType(); + + /** + * The meta object literal for the '<em><b>Last Pos Update</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute IPOS_POSITION_EVENT__LAST_POS_UPDATE = eINSTANCE.getIposPositionEvent_LastPosUpdate(); + + /** + * The meta object literal for the '<em><b>Position</b></em>' reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference IPOS_POSITION_EVENT__POSITION = eINSTANCE.getIposPositionEvent_Position(); + + /** + * The meta object literal for the '<em><b>Orientation</b></em>' reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference IPOS_POSITION_EVENT__ORIENTATION = eINSTANCE.getIposPositionEvent_Orientation(); + + /** + * The meta object literal for the '<em><b>Zone Descriptors</b></em>' reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference IPOS_POSITION_EVENT__ZONE_DESCRIPTORS = eINSTANCE.getIposPositionEvent_ZoneDescriptors(); + + /** + * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosRawdataEventImpl <em>IPos Rawdata Event</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosRawdataEventImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosDevKitPackageImpl#getIPosRawdataEvent() + * @generated + */ + EClass IPOS_RAWDATA_EVENT = eINSTANCE.getIPosRawdataEvent(); + + /** + * The meta object literal for the '<em><b>Agent Id</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute IPOS_RAWDATA_EVENT__AGENT_ID = eINSTANCE.getIPosRawdataEvent_AgentId(); + + /** + * The meta object literal for the '<em><b>Sensor Id</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute IPOS_RAWDATA_EVENT__SENSOR_ID = eINSTANCE.getIPosRawdataEvent_SensorId(); + + /** + * The meta object literal for the '<em><b>Agent Type</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute IPOS_RAWDATA_EVENT__AGENT_TYPE = eINSTANCE.getIPosRawdataEvent_AgentType(); + + /** + * The meta object literal for the '<em><b>Sensor Type</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute IPOS_RAWDATA_EVENT__SENSOR_TYPE = eINSTANCE.getIPosRawdataEvent_SensorType(); + + /** + * The meta object literal for the '<em><b>Time Stamp</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute IPOS_RAWDATA_EVENT__TIME_STAMP = eINSTANCE.getIPosRawdataEvent_TimeStamp(); + + /** + * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosBeaconEventImpl <em>IPos Beacon Event</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosBeaconEventImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosDevKitPackageImpl#getIPosBeaconEvent() + * @generated + */ + EClass IPOS_BEACON_EVENT = eINSTANCE.getIPosBeaconEvent(); + + /** + * The meta object literal for the '<em><b>Distances</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute IPOS_BEACON_EVENT__DISTANCES = eINSTANCE.getIPosBeaconEvent_Distances(); + + /** + * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosUWBEventImpl <em>IPos UWB Event</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosUWBEventImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosDevKitPackageImpl#getIPosUWBEvent() + * @generated + */ + EClass IPOS_UWB_EVENT = eINSTANCE.getIPosUWBEvent(); + + /** + * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosBTEventImpl <em>IPos BT Event</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosBTEventImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosDevKitPackageImpl#getIPosBTEvent() + * @generated + */ + EClass IPOS_BT_EVENT = eINSTANCE.getIPosBTEvent(); + + /** + * The meta object literal for the '<em><b>Rss</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute IPOS_BT_EVENT__RSS = eINSTANCE.getIPosBTEvent_Rss(); + + /** + * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosProximityEventImpl <em>IPos Proximity Event</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosProximityEventImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosDevKitPackageImpl#getIPosProximityEvent() + * @generated + */ + EClass IPOS_PROXIMITY_EVENT = eINSTANCE.getIPosProximityEvent(); + + /** + * The meta object literal for the '<em><b>Tag Id</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute IPOS_PROXIMITY_EVENT__TAG_ID = eINSTANCE.getIPosProximityEvent_TagId(); + + /** + * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosNFCEventImpl <em>IPos NFC Event</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosNFCEventImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosDevKitPackageImpl#getIPosNFCEvent() + * @generated + */ + EClass IPOS_NFC_EVENT = eINSTANCE.getIPosNFCEvent(); + + /** + * The meta object literal for the '<em><b>Tag Data</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute IPOS_NFC_EVENT__TAG_DATA = eINSTANCE.getIPosNFCEvent_TagData(); + + /** + * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosBarcodeEventImpl <em>IPos Barcode Event</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosBarcodeEventImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosDevKitPackageImpl#getIPosBarcodeEvent() + * @generated + */ + EClass IPOS_BARCODE_EVENT = eINSTANCE.getIPosBarcodeEvent(); + + /** + * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosRFIDEventImpl <em>IPos RFID Event</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosRFIDEventImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosDevKitPackageImpl#getIPosRFIDEvent() + * @generated + */ + EClass IPOS_RFID_EVENT = eINSTANCE.getIPosRFIDEvent(); + + /** + * The meta object literal for the '<em><b>Location</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute IPOS_RFID_EVENT__LOCATION = eINSTANCE.getIPosRFIDEvent_Location(); + + /** + * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosOtherProxEventImpl <em>IPos Other Prox Event</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosOtherProxEventImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosDevKitPackageImpl#getIPosOtherProxEvent() + * @generated + */ + EClass IPOS_OTHER_PROX_EVENT = eINSTANCE.getIPosOtherProxEvent(); + + /** + * The meta object literal for the '<em><b>Data</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute IPOS_OTHER_PROX_EVENT__DATA = eINSTANCE.getIPosOtherProxEvent_Data(); + + /** + * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosOtherBeaconEventImpl <em>IPos Other Beacon Event</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosOtherBeaconEventImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosDevKitPackageImpl#getIPosOtherBeaconEvent() + * @generated + */ + EClass IPOS_OTHER_BEACON_EVENT = eINSTANCE.getIPosOtherBeaconEvent(); + + /** + * The meta object literal for the '<em><b>Data</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute IPOS_OTHER_BEACON_EVENT__DATA = eINSTANCE.getIPosOtherBeaconEvent_Data(); + + /** + * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IposMsgRcvEventImpl <em>Ipos Msg Rcv Event</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IposMsgRcvEventImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosDevKitPackageImpl#getIposMsgRcvEvent() + * @generated + */ + EClass IPOS_MSG_RCV_EVENT = eINSTANCE.getIposMsgRcvEvent(); + + /** + * The meta object literal for the '<em><b>Protocol Name</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute IPOS_MSG_RCV_EVENT__PROTOCOL_NAME = eINSTANCE.getIposMsgRcvEvent_ProtocolName(); + + /** + * The meta object literal for the '<em><b>Serialized Msg</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute IPOS_MSG_RCV_EVENT__SERIALIZED_MSG = eINSTANCE.getIposMsgRcvEvent_SerializedMsg(); + + /** + * The meta object literal for the '<em><b>Last Pos Update</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute IPOS_MSG_RCV_EVENT__LAST_POS_UPDATE = eINSTANCE.getIposMsgRcvEvent_LastPosUpdate(); + + /** + * The meta object literal for the '<em><b>Last Known Position</b></em>' reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference IPOS_MSG_RCV_EVENT__LAST_KNOWN_POSITION = eINSTANCE.getIposMsgRcvEvent_LastKnownPosition(); + + /** + * The meta object literal for the '<em><b>Last Known Orientation</b></em>' reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference IPOS_MSG_RCV_EVENT__LAST_KNOWN_ORIENTATION = eINSTANCE.getIposMsgRcvEvent_LastKnownOrientation(); + + /** + * The meta object literal for the '<em><b>Last Known Zonedescriptors</b></em>' reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference IPOS_MSG_RCV_EVENT__LAST_KNOWN_ZONEDESCRIPTORS = eINSTANCE + .getIposMsgRcvEvent_LastKnownZonedescriptors(); + + /** + * The meta object literal for the '<em><b>Agent Id</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute IPOS_MSG_RCV_EVENT__AGENT_ID = eINSTANCE.getIposMsgRcvEvent_AgentId(); + + /** + * The meta object literal for the '<em><b>Extracted Attributes</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute IPOS_MSG_RCV_EVENT__EXTRACTED_ATTRIBUTES = eINSTANCE.getIposMsgRcvEvent_ExtractedAttributes(); + + /** + * The meta object literal for the '<em><b>Timestamp</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute IPOS_MSG_RCV_EVENT__TIMESTAMP = eINSTANCE.getIposMsgRcvEvent_Timestamp(); + + } + +} //IPosDevKitPackage diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/IPosNFCEvent.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/IPosNFCEvent.java new file mode 100644 index 0000000000000000000000000000000000000000..1f070add2c6cbcb74642bee10a8760f3b642e532 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/IPosNFCEvent.java @@ -0,0 +1,46 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit; + +import java.util.Map; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>IPos NFC Event</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosNFCEvent#getTagData <em>Tag Data</em>}</li> + * </ul> + * + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getIPosNFCEvent() + * @model + * @generated + */ +public interface IPosNFCEvent extends IPosProximityEvent { + /** + * Returns the value of the '<em><b>Tag Data</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Tag Data</em>' attribute. + * @see #setTagData(Map) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getIPosNFCEvent_TagData() + * @model transient="true" + * @generated + */ + Map<String, Object> getTagData(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosNFCEvent#getTagData <em>Tag Data</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Tag Data</em>' attribute. + * @see #getTagData() + * @generated + */ + void setTagData(Map<String, Object> value); + +} // IPosNFCEvent diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/IPosOtherBeaconEvent.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/IPosOtherBeaconEvent.java new file mode 100644 index 0000000000000000000000000000000000000000..fb7ac1c6d6b830e865513426a6a718cf90654e63 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/IPosOtherBeaconEvent.java @@ -0,0 +1,46 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit; + +import java.util.Map; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>IPos Other Beacon Event</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosOtherBeaconEvent#getData <em>Data</em>}</li> + * </ul> + * + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getIPosOtherBeaconEvent() + * @model + * @generated + */ +public interface IPosOtherBeaconEvent extends IPosBeaconEvent { + /** + * Returns the value of the '<em><b>Data</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Data</em>' attribute. + * @see #setData(Map) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getIPosOtherBeaconEvent_Data() + * @model transient="true" + * @generated + */ + Map<String, Object> getData(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosOtherBeaconEvent#getData <em>Data</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Data</em>' attribute. + * @see #getData() + * @generated + */ + void setData(Map<String, Object> value); + +} // IPosOtherBeaconEvent diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/IPosOtherProxEvent.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/IPosOtherProxEvent.java new file mode 100644 index 0000000000000000000000000000000000000000..056e6dc1584a2afb654303d4a991b7b8c977c096 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/IPosOtherProxEvent.java @@ -0,0 +1,46 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit; + +import java.util.Map; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>IPos Other Prox Event</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosOtherProxEvent#getData <em>Data</em>}</li> + * </ul> + * + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getIPosOtherProxEvent() + * @model + * @generated + */ +public interface IPosOtherProxEvent extends IPosProximityEvent { + /** + * Returns the value of the '<em><b>Data</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Data</em>' attribute. + * @see #setData(Map) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getIPosOtherProxEvent_Data() + * @model transient="true" + * @generated + */ + Map<String, Object> getData(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosOtherProxEvent#getData <em>Data</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Data</em>' attribute. + * @see #getData() + * @generated + */ + void setData(Map<String, Object> value); + +} // IPosOtherProxEvent diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/IPosProximityEvent.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/IPosProximityEvent.java new file mode 100644 index 0000000000000000000000000000000000000000..4852d0e402b79d4b034a26b701a77cf1bc9c7ff6 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/IPosProximityEvent.java @@ -0,0 +1,44 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>IPos Proximity Event</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosProximityEvent#getTagId <em>Tag Id</em>}</li> + * </ul> + * + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getIPosProximityEvent() + * @model + * @generated + */ +public interface IPosProximityEvent extends IPosRawdataEvent { + /** + * Returns the value of the '<em><b>Tag Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Tag Id</em>' attribute. + * @see #setTagId(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getIPosProximityEvent_TagId() + * @model + * @generated + */ + String getTagId(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosProximityEvent#getTagId <em>Tag Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Tag Id</em>' attribute. + * @see #getTagId() + * @generated + */ + void setTagId(String value); + +} // IPosProximityEvent diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/IPosRFIDEvent.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/IPosRFIDEvent.java new file mode 100644 index 0000000000000000000000000000000000000000..cce14b001e5a34618dc55119162a64c117cd51c4 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/IPosRFIDEvent.java @@ -0,0 +1,44 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>IPos RFID Event</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosRFIDEvent#getLocation <em>Location</em>}</li> + * </ul> + * + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getIPosRFIDEvent() + * @model + * @generated + */ +public interface IPosRFIDEvent extends IPosProximityEvent { + /** + * Returns the value of the '<em><b>Location</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Location</em>' attribute. + * @see #setLocation(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getIPosRFIDEvent_Location() + * @model + * @generated + */ + String getLocation(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosRFIDEvent#getLocation <em>Location</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Location</em>' attribute. + * @see #getLocation() + * @generated + */ + void setLocation(String value); + +} // IPosRFIDEvent diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/IPosRawdataEvent.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/IPosRawdataEvent.java new file mode 100644 index 0000000000000000000000000000000000000000..ea7ffb037e544f56ee1f82bd4c515c36b1428ec6 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/IPosRawdataEvent.java @@ -0,0 +1,138 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>IPos Rawdata Event</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosRawdataEvent#getAgentId <em>Agent Id</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosRawdataEvent#getSensorId <em>Sensor Id</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosRawdataEvent#getAgentType <em>Agent Type</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosRawdataEvent#getSensorType <em>Sensor Type</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosRawdataEvent#getTimeStamp <em>Time Stamp</em>}</li> + * </ul> + * + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getIPosRawdataEvent() + * @model + * @generated + */ +public interface IPosRawdataEvent extends EObject { + /** + * Returns the value of the '<em><b>Agent Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Agent Id</em>' attribute. + * @see #setAgentId(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getIPosRawdataEvent_AgentId() + * @model + * @generated + */ + String getAgentId(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosRawdataEvent#getAgentId <em>Agent Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Agent Id</em>' attribute. + * @see #getAgentId() + * @generated + */ + void setAgentId(String value); + + /** + * Returns the value of the '<em><b>Sensor Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Sensor Id</em>' attribute. + * @see #setSensorId(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getIPosRawdataEvent_SensorId() + * @model + * @generated + */ + String getSensorId(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosRawdataEvent#getSensorId <em>Sensor Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Sensor Id</em>' attribute. + * @see #getSensorId() + * @generated + */ + void setSensorId(String value); + + /** + * Returns the value of the '<em><b>Agent Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Agent Type</em>' attribute. + * @see #setAgentType(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getIPosRawdataEvent_AgentType() + * @model + * @generated + */ + String getAgentType(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosRawdataEvent#getAgentType <em>Agent Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Agent Type</em>' attribute. + * @see #getAgentType() + * @generated + */ + void setAgentType(String value); + + /** + * Returns the value of the '<em><b>Sensor Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Sensor Type</em>' attribute. + * @see #setSensorType(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getIPosRawdataEvent_SensorType() + * @model + * @generated + */ + String getSensorType(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosRawdataEvent#getSensorType <em>Sensor Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Sensor Type</em>' attribute. + * @see #getSensorType() + * @generated + */ + void setSensorType(String value); + + /** + * Returns the value of the '<em><b>Time Stamp</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Time Stamp</em>' attribute. + * @see #setTimeStamp(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getIPosRawdataEvent_TimeStamp() + * @model + * @generated + */ + String getTimeStamp(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosRawdataEvent#getTimeStamp <em>Time Stamp</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Time Stamp</em>' attribute. + * @see #getTimeStamp() + * @generated + */ + void setTimeStamp(String value); + +} // IPosRawdataEvent diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/IPosUWBEvent.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/IPosUWBEvent.java new file mode 100644 index 0000000000000000000000000000000000000000..73e8498a9130f39da1e7a72c6f5d468149fbf28d --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/IPosUWBEvent.java @@ -0,0 +1,16 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>IPos UWB Event</b></em>'. + * <!-- end-user-doc --> + * + * + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getIPosUWBEvent() + * @model + * @generated + */ +public interface IPosUWBEvent extends IPosBeaconEvent { +} // IPosUWBEvent diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/IposMsgRcvEvent.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/IposMsgRcvEvent.java new file mode 100644 index 0000000000000000000000000000000000000000..4d674be961ae030ce7b85ef041545d00b3d74b4f --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/IposMsgRcvEvent.java @@ -0,0 +1,229 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit; + +import ipos.project.DataModellntegration.iPos_Datamodel.Orientation; +import ipos.project.DataModellntegration.iPos_Datamodel.Position; +import ipos.project.DataModellntegration.iPos_Datamodel.ZoneDescriptor; + +import java.util.HashMap; +import java.util.LinkedList; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Ipos Msg Rcv Event</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposMsgRcvEvent#getProtocolName <em>Protocol Name</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposMsgRcvEvent#getSerializedMsg <em>Serialized Msg</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposMsgRcvEvent#getLastPosUpdate <em>Last Pos Update</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposMsgRcvEvent#getLastKnownPosition <em>Last Known Position</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposMsgRcvEvent#getLastKnownOrientation <em>Last Known Orientation</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposMsgRcvEvent#getLastKnownZonedescriptors <em>Last Known Zonedescriptors</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposMsgRcvEvent#getAgentId <em>Agent Id</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposMsgRcvEvent#getExtractedAttributes <em>Extracted Attributes</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposMsgRcvEvent#getTimestamp <em>Timestamp</em>}</li> + * </ul> + * + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getIposMsgRcvEvent() + * @model + * @generated + */ +public interface IposMsgRcvEvent extends EObject { + /** + * Returns the value of the '<em><b>Protocol Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Protocol Name</em>' attribute. + * @see #setProtocolName(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getIposMsgRcvEvent_ProtocolName() + * @model required="true" + * @generated + */ + String getProtocolName(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposMsgRcvEvent#getProtocolName <em>Protocol Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Protocol Name</em>' attribute. + * @see #getProtocolName() + * @generated + */ + void setProtocolName(String value); + + /** + * Returns the value of the '<em><b>Serialized Msg</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Serialized Msg</em>' attribute. + * @see #setSerializedMsg(byte[]) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getIposMsgRcvEvent_SerializedMsg() + * @model dataType="ipos.project.DataModellntegration.iPos_Datamodel.ByteArray" + * @generated + */ + byte[] getSerializedMsg(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposMsgRcvEvent#getSerializedMsg <em>Serialized Msg</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Serialized Msg</em>' attribute. + * @see #getSerializedMsg() + * @generated + */ + void setSerializedMsg(byte[] value); + + /** + * Returns the value of the '<em><b>Last Pos Update</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Last Pos Update</em>' attribute. + * @see #setLastPosUpdate(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getIposMsgRcvEvent_LastPosUpdate() + * @model + * @generated + */ + String getLastPosUpdate(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposMsgRcvEvent#getLastPosUpdate <em>Last Pos Update</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Last Pos Update</em>' attribute. + * @see #getLastPosUpdate() + * @generated + */ + void setLastPosUpdate(String value); + + /** + * Returns the value of the '<em><b>Last Known Position</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Last Known Position</em>' reference. + * @see #setLastKnownPosition(Position) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getIposMsgRcvEvent_LastKnownPosition() + * @model + * @generated + */ + Position getLastKnownPosition(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposMsgRcvEvent#getLastKnownPosition <em>Last Known Position</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Last Known Position</em>' reference. + * @see #getLastKnownPosition() + * @generated + */ + void setLastKnownPosition(Position value); + + /** + * Returns the value of the '<em><b>Last Known Orientation</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Last Known Orientation</em>' reference. + * @see #setLastKnownOrientation(Orientation) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getIposMsgRcvEvent_LastKnownOrientation() + * @model + * @generated + */ + Orientation getLastKnownOrientation(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposMsgRcvEvent#getLastKnownOrientation <em>Last Known Orientation</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Last Known Orientation</em>' reference. + * @see #getLastKnownOrientation() + * @generated + */ + void setLastKnownOrientation(Orientation value); + + /** + * Returns the value of the '<em><b>Last Known Zonedescriptors</b></em>' reference list. + * The list contents are of type {@link ipos.project.DataModellntegration.iPos_Datamodel.ZoneDescriptor}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Last Known Zonedescriptors</em>' reference list. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getIposMsgRcvEvent_LastKnownZonedescriptors() + * @model + * @generated + */ + EList<ZoneDescriptor> getLastKnownZonedescriptors(); + + /** + * Returns the value of the '<em><b>Agent Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Agent Id</em>' attribute. + * @see #setAgentId(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getIposMsgRcvEvent_AgentId() + * @model required="true" + * @generated + */ + String getAgentId(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposMsgRcvEvent#getAgentId <em>Agent Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Agent Id</em>' attribute. + * @see #getAgentId() + * @generated + */ + void setAgentId(String value); + + /** + * Returns the value of the '<em><b>Extracted Attributes</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Extracted Attributes</em>' attribute. + * @see #setExtractedAttributes(LinkedList) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getIposMsgRcvEvent_ExtractedAttributes() + * @model dataType="ipos.project.DataModellntegration.iPos_Datamodel.ListOfStringMaps" + * @generated + */ + LinkedList<HashMap<String, String>> getExtractedAttributes(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposMsgRcvEvent#getExtractedAttributes <em>Extracted Attributes</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Extracted Attributes</em>' attribute. + * @see #getExtractedAttributes() + * @generated + */ + void setExtractedAttributes(LinkedList<HashMap<String, String>> value); + + /** + * Returns the value of the '<em><b>Timestamp</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Timestamp</em>' attribute. + * @see #setTimestamp(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getIposMsgRcvEvent_Timestamp() + * @model + * @generated + */ + String getTimestamp(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposMsgRcvEvent#getTimestamp <em>Timestamp</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Timestamp</em>' attribute. + * @see #getTimestamp() + * @generated + */ + void setTimestamp(String value); + +} // IposMsgRcvEvent diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/IposPositionEvent.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/IposPositionEvent.java new file mode 100644 index 0000000000000000000000000000000000000000..a3fa96f11a63bb4b92651c92d2d7f529049ee0bd --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/IposPositionEvent.java @@ -0,0 +1,203 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit; + +import ipos.project.DataModellntegration.iPos_Datamodel.Orientation; +import ipos.project.DataModellntegration.iPos_Datamodel.Position; +import ipos.project.DataModellntegration.iPos_Datamodel.ZoneDescriptor; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Ipos Position Event</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposPositionEvent#getAgentId <em>Agent Id</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposPositionEvent#getSensorId <em>Sensor Id</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposPositionEvent#getType <em>Type</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposPositionEvent#getSensorType <em>Sensor Type</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposPositionEvent#getLastPosUpdate <em>Last Pos Update</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposPositionEvent#getPosition <em>Position</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposPositionEvent#getOrientation <em>Orientation</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposPositionEvent#getZoneDescriptors <em>Zone Descriptors</em>}</li> + * </ul> + * + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getIposPositionEvent() + * @model + * @generated + */ +public interface IposPositionEvent extends EObject { + /** + * Returns the value of the '<em><b>Agent Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Agent Id</em>' attribute. + * @see #setAgentId(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getIposPositionEvent_AgentId() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + String getAgentId(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposPositionEvent#getAgentId <em>Agent Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Agent Id</em>' attribute. + * @see #getAgentId() + * @generated + */ + void setAgentId(String value); + + /** + * Returns the value of the '<em><b>Sensor Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Sensor Id</em>' attribute. + * @see #setSensorId(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getIposPositionEvent_SensorId() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + String getSensorId(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposPositionEvent#getSensorId <em>Sensor Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Sensor Id</em>' attribute. + * @see #getSensorId() + * @generated + */ + void setSensorId(String value); + + /** + * Returns the value of the '<em><b>Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Type</em>' attribute. + * @see #setType(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getIposPositionEvent_Type() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + String getType(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposPositionEvent#getType <em>Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Type</em>' attribute. + * @see #getType() + * @generated + */ + void setType(String value); + + /** + * Returns the value of the '<em><b>Sensor Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Sensor Type</em>' attribute. + * @see #setSensorType(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getIposPositionEvent_SensorType() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + String getSensorType(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposPositionEvent#getSensorType <em>Sensor Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Sensor Type</em>' attribute. + * @see #getSensorType() + * @generated + */ + void setSensorType(String value); + + /** + * Returns the value of the '<em><b>Last Pos Update</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Last Pos Update</em>' attribute. + * @see #setLastPosUpdate(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getIposPositionEvent_LastPosUpdate() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + String getLastPosUpdate(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposPositionEvent#getLastPosUpdate <em>Last Pos Update</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Last Pos Update</em>' attribute. + * @see #getLastPosUpdate() + * @generated + */ + void setLastPosUpdate(String value); + + /** + * Returns the value of the '<em><b>Position</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Position</em>' reference. + * @see #setPosition(Position) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getIposPositionEvent_Position() + * @model required="true" + * @generated + */ + Position getPosition(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposPositionEvent#getPosition <em>Position</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Position</em>' reference. + * @see #getPosition() + * @generated + */ + void setPosition(Position value); + + /** + * Returns the value of the '<em><b>Orientation</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Orientation</em>' reference. + * @see #setOrientation(Orientation) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getIposPositionEvent_Orientation() + * @model required="true" + * @generated + */ + Orientation getOrientation(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposPositionEvent#getOrientation <em>Orientation</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Orientation</em>' reference. + * @see #getOrientation() + * @generated + */ + void setOrientation(Orientation value); + + /** + * Returns the value of the '<em><b>Zone Descriptors</b></em>' reference list. + * The list contents are of type {@link ipos.project.DataModellntegration.iPos_Datamodel.ZoneDescriptor}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Zone Descriptors</em>' reference list. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getIposPositionEvent_ZoneDescriptors() + * @model + * @generated + */ + EList<ZoneDescriptor> getZoneDescriptors(); + +} // IposPositionEvent diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/MonitoringRequest.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/MonitoringRequest.java new file mode 100644 index 0000000000000000000000000000000000000000..5248044e6d183384bd3aaa64c6dd92cb43e4beac --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/MonitoringRequest.java @@ -0,0 +1,301 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit; + +import java.util.List; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Monitoring Request</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest#getFrameIds <em>Frame Ids</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest#getDelta <em>Delta</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest#getUpdateFrequency <em>Update Frequency</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest#getType <em>Type</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest#getId <em>Id</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest#getFusionStrategy <em>Fusion Strategy</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest#isExitNotification <em>Exit Notification</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest#getProperties <em>Properties</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest#getMonitoringTaskId <em>Monitoring Task Id</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest#getRequestorProtocol <em>Requestor Protocol</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest#getSerializationType <em>Serialization Type</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest#getRefSystemId <em>Ref System Id</em>}</li> + * </ul> + * + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getMonitoringRequest() + * @model + * @generated + */ +public interface MonitoringRequest extends EObject { + /** + * Returns the value of the '<em><b>Frame Ids</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Frame Ids</em>' attribute. + * @see #setFrameIds(List) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getMonitoringRequest_FrameIds() + * @model dataType="ipos.project.DataModellntegration.iPos_Datamodel.StringList" + * @generated + */ + List<String> getFrameIds(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest#getFrameIds <em>Frame Ids</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Frame Ids</em>' attribute. + * @see #getFrameIds() + * @generated + */ + void setFrameIds(List<String> value); + + /** + * Returns the value of the '<em><b>Delta</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Delta</em>' attribute. + * @see #setDelta(float) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getMonitoringRequest_Delta() + * @model dataType="org.eclipse.emf.ecore.xml.type.Float" + * @generated + */ + float getDelta(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest#getDelta <em>Delta</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Delta</em>' attribute. + * @see #getDelta() + * @generated + */ + void setDelta(float value); + + /** + * Returns the value of the '<em><b>Update Frequency</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Update Frequency</em>' attribute. + * @see #setUpdateFrequency(float) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getMonitoringRequest_UpdateFrequency() + * @model dataType="org.eclipse.emf.ecore.xml.type.Float" + * @generated + */ + float getUpdateFrequency(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest#getUpdateFrequency <em>Update Frequency</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Update Frequency</em>' attribute. + * @see #getUpdateFrequency() + * @generated + */ + void setUpdateFrequency(float value); + + /** + * Returns the value of the '<em><b>Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Type</em>' attribute. + * @see #setType(List) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getMonitoringRequest_Type() + * @model dataType="ipos.project.DataModellntegration.iPos_Datamodel.StringList" + * @generated + */ + List<String> getType(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest#getType <em>Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Type</em>' attribute. + * @see #getType() + * @generated + */ + void setType(List<String> value); + + /** + * Returns the value of the '<em><b>Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Id</em>' attribute. + * @see #setId(List) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getMonitoringRequest_Id() + * @model dataType="ipos.project.DataModellntegration.iPos_Datamodel.StringList" + * @generated + */ + List<String> getId(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest#getId <em>Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Id</em>' attribute. + * @see #getId() + * @generated + */ + void setId(List<String> value); + + /** + * Returns the value of the '<em><b>Fusion Strategy</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Fusion Strategy</em>' attribute. + * @see #setFusionStrategy(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getMonitoringRequest_FusionStrategy() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + String getFusionStrategy(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest#getFusionStrategy <em>Fusion Strategy</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Fusion Strategy</em>' attribute. + * @see #getFusionStrategy() + * @generated + */ + void setFusionStrategy(String value); + + /** + * Returns the value of the '<em><b>Exit Notification</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Exit Notification</em>' attribute. + * @see #setExitNotification(boolean) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getMonitoringRequest_ExitNotification() + * @model dataType="org.eclipse.emf.ecore.xml.type.Boolean" + * @generated + */ + boolean isExitNotification(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest#isExitNotification <em>Exit Notification</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Exit Notification</em>' attribute. + * @see #isExitNotification() + * @generated + */ + void setExitNotification(boolean value); + + /** + * Returns the value of the '<em><b>Properties</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Properties</em>' attribute. + * @see #setProperties(List) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getMonitoringRequest_Properties() + * @model dataType="ipos.project.DataModellntegration.iPos_Datamodel.StringList" + * @generated + */ + List<String> getProperties(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest#getProperties <em>Properties</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Properties</em>' attribute. + * @see #getProperties() + * @generated + */ + void setProperties(List<String> value); + + /** + * Returns the value of the '<em><b>Monitoring Task Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Monitoring Task Id</em>' attribute. + * @see #setMonitoringTaskId(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getMonitoringRequest_MonitoringTaskId() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + String getMonitoringTaskId(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest#getMonitoringTaskId <em>Monitoring Task Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Monitoring Task Id</em>' attribute. + * @see #getMonitoringTaskId() + * @generated + */ + void setMonitoringTaskId(String value); + + /** + * Returns the value of the '<em><b>Requestor Protocol</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Requestor Protocol</em>' attribute. + * @see #setRequestorProtocol(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getMonitoringRequest_RequestorProtocol() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + String getRequestorProtocol(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest#getRequestorProtocol <em>Requestor Protocol</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Requestor Protocol</em>' attribute. + * @see #getRequestorProtocol() + * @generated + */ + void setRequestorProtocol(String value); + + /** + * Returns the value of the '<em><b>Serialization Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Serialization Type</em>' attribute. + * @see #setSerializationType(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getMonitoringRequest_SerializationType() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + String getSerializationType(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest#getSerializationType <em>Serialization Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Serialization Type</em>' attribute. + * @see #getSerializationType() + * @generated + */ + void setSerializationType(String value); + + /** + * Returns the value of the '<em><b>Ref System Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Ref System Id</em>' attribute. + * @see #setRefSystemId(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getMonitoringRequest_RefSystemId() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + String getRefSystemId(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest#getRefSystemId <em>Ref System Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Ref System Id</em>' attribute. + * @see #getRefSystemId() + * @generated + */ + void setRefSystemId(String value); + +} // MonitoringRequest diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/SensorConfigurationRequest.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/SensorConfigurationRequest.java similarity index 63% rename from src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/SensorConfigurationRequest.java rename to src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/SensorConfigurationRequest.java index cf5138e30ca0ff886f4927f44f4e810eda31f197..c70aba222a5410a80bc0a59e4def8e5dfd97105a 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/SensorConfigurationRequest.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/SensorConfigurationRequest.java @@ -1,6 +1,6 @@ /** */ -package ipos.project.DataModellntegration.iPos_Datamodel; +package ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit; import org.eclipse.emf.ecore.EObject; @@ -10,7 +10,7 @@ import org.eclipse.emf.ecore.EObject; * <!-- end-user-doc --> * * - * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getSensorConfigurationRequest() + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getSensorConfigurationRequest() * @model * @generated */ diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/TrackingRequest.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/TrackingRequest.java similarity index 61% rename from src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/TrackingRequest.java rename to src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/TrackingRequest.java index ccad25d217c8b5581aec8e23d6980485c11cf36d..17e64339013e251df89d98b093bb5603646b2196 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/TrackingRequest.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/TrackingRequest.java @@ -1,6 +1,6 @@ /** */ -package ipos.project.DataModellntegration.iPos_Datamodel; +package ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit; import org.eclipse.emf.ecore.EObject; @@ -10,7 +10,7 @@ import org.eclipse.emf.ecore.EObject; * <!-- end-user-doc --> * * - * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getTrackingRequest() + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getTrackingRequest() * @model * @generated */ diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/WorldModelQueryRequest.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/WorldModelQueryRequest.java similarity index 62% rename from src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/WorldModelQueryRequest.java rename to src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/WorldModelQueryRequest.java index ed30cdffbd34fd2ecaa0530df02909f57d6c09a5..ef3145bc053708f236a6e8e8a7a165b7d7530e8a 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/WorldModelQueryRequest.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/WorldModelQueryRequest.java @@ -1,6 +1,6 @@ /** */ -package ipos.project.DataModellntegration.iPos_Datamodel; +package ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit; import org.eclipse.emf.ecore.EObject; @@ -10,7 +10,7 @@ import org.eclipse.emf.ecore.EObject; * <!-- end-user-doc --> * * - * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getWorldModelQueryRequest() + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getWorldModelQueryRequest() * @model * @generated */ diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/WorldModelUpdateRequest.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/WorldModelUpdateRequest.java similarity index 62% rename from src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/WorldModelUpdateRequest.java rename to src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/WorldModelUpdateRequest.java index af3105797c20ad8e8870d47209f1281e90d67dee..b2deaef8bbdd54607a559491d7121a5f07b41da2 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/WorldModelUpdateRequest.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/WorldModelUpdateRequest.java @@ -1,6 +1,6 @@ /** */ -package ipos.project.DataModellntegration.iPos_Datamodel; +package ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit; import org.eclipse.emf.ecore.EObject; @@ -10,7 +10,7 @@ import org.eclipse.emf.ecore.EObject; * <!-- end-user-doc --> * * - * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getWorldModelUpdateRequest() + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#getWorldModelUpdateRequest() * @model * @generated */ diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/AgentRegistrationRequestImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/AgentRegistrationRequestImpl.java similarity index 68% rename from src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/AgentRegistrationRequestImpl.java rename to src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/AgentRegistrationRequestImpl.java index 6cdd6b82f25de7ca5c31963dcc7d921409e7b3da..d310edb1040ac84c11ae8ba12f25a787b1b5577a 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/AgentRegistrationRequestImpl.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/AgentRegistrationRequestImpl.java @@ -1,9 +1,9 @@ /** */ -package ipos.project.DataModellntegration.iPos_Datamodel.impl; +package ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl; -import ipos.project.DataModellntegration.iPos_Datamodel.AgentRegistrationRequest; -import ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.AgentRegistrationRequest; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage; import org.eclipse.emf.ecore.EClass; @@ -33,7 +33,7 @@ public class AgentRegistrationRequestImpl extends MinimalEObjectImpl.Container i */ @Override protected EClass eStaticClass() { - return IPos_DatamodelPackage.Literals.AGENT_REGISTRATION_REQUEST; + return IPosDevKitPackage.Literals.AGENT_REGISTRATION_REQUEST; } } //AgentRegistrationRequestImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/DataStorageQueryRequestImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/DataStorageQueryRequestImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..caab60af66b197b2ad32a5125bb68080e6c67c2e --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/DataStorageQueryRequestImpl.java @@ -0,0 +1,166 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl; + +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.DataStorageQueryRequest; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Data Storage Query Request</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.DataStorageQueryRequestImpl#getTrackingTaskId <em>Tracking Task Id</em>}</li> + * </ul> + * + * @generated + */ +public class DataStorageQueryRequestImpl extends MinimalEObjectImpl.Container implements DataStorageQueryRequest { + /** + * The default value of the '{@link #getTrackingTaskId() <em>Tracking Task Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTrackingTaskId() + * @generated + * @ordered + */ + protected static final String TRACKING_TASK_ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getTrackingTaskId() <em>Tracking Task Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTrackingTaskId() + * @generated + * @ordered + */ + protected String trackingTaskId = TRACKING_TASK_ID_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected DataStorageQueryRequestImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return IPosDevKitPackage.Literals.DATA_STORAGE_QUERY_REQUEST; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getTrackingTaskId() { + return trackingTaskId; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setTrackingTaskId(String newTrackingTaskId) { + String oldTrackingTaskId = trackingTaskId; + trackingTaskId = newTrackingTaskId; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, + IPosDevKitPackage.DATA_STORAGE_QUERY_REQUEST__TRACKING_TASK_ID, oldTrackingTaskId, trackingTaskId)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case IPosDevKitPackage.DATA_STORAGE_QUERY_REQUEST__TRACKING_TASK_ID: + return getTrackingTaskId(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case IPosDevKitPackage.DATA_STORAGE_QUERY_REQUEST__TRACKING_TASK_ID: + setTrackingTaskId((String) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case IPosDevKitPackage.DATA_STORAGE_QUERY_REQUEST__TRACKING_TASK_ID: + setTrackingTaskId(TRACKING_TASK_ID_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case IPosDevKitPackage.DATA_STORAGE_QUERY_REQUEST__TRACKING_TASK_ID: + return TRACKING_TASK_ID_EDEFAULT == null ? trackingTaskId != null + : !TRACKING_TASK_ID_EDEFAULT.equals(trackingTaskId); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (trackingTaskId: "); + result.append(trackingTaskId); + result.append(')'); + return result.toString(); + } + +} //DataStorageQueryRequestImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/DataStorageRequestImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/DataStorageRequestImpl.java similarity index 68% rename from src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/DataStorageRequestImpl.java rename to src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/DataStorageRequestImpl.java index 44f57587b40cc8d70e6682f8f0420f1522a29050..b121dee32f816fb5a94da391e8a1b15cca3dc063 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/DataStorageRequestImpl.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/DataStorageRequestImpl.java @@ -1,9 +1,9 @@ /** */ -package ipos.project.DataModellntegration.iPos_Datamodel.impl; +package ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl; -import ipos.project.DataModellntegration.iPos_Datamodel.DataStorageRequest; -import ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.DataStorageRequest; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage; import org.eclipse.emf.ecore.EClass; @@ -33,7 +33,7 @@ public class DataStorageRequestImpl extends MinimalEObjectImpl.Container impleme */ @Override protected EClass eStaticClass() { - return IPos_DatamodelPackage.Literals.DATA_STORAGE_REQUEST; + return IPosDevKitPackage.Literals.DATA_STORAGE_REQUEST; } } //DataStorageRequestImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/IPosBTEventImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/IPosBTEventImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..3b6fb7506d79cd34f73c29218d6cb64409041e8a --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/IPosBTEventImpl.java @@ -0,0 +1,156 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl; + +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosBTEvent; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage; + +import java.util.Map; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>IPos BT Event</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosBTEventImpl#getRss <em>Rss</em>}</li> + * </ul> + * + * @generated + */ +public class IPosBTEventImpl extends IPosBeaconEventImpl implements IPosBTEvent { + /** + * The cached value of the '{@link #getRss() <em>Rss</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRss() + * @generated + * @ordered + */ + protected Map<String, Double> rss; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected IPosBTEventImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return IPosDevKitPackage.Literals.IPOS_BT_EVENT; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Map<String, Double> getRss() { + return rss; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setRss(Map<String, Double> newRss) { + Map<String, Double> oldRss = rss; + rss = newRss; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, IPosDevKitPackage.IPOS_BT_EVENT__RSS, oldRss, rss)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case IPosDevKitPackage.IPOS_BT_EVENT__RSS: + return getRss(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case IPosDevKitPackage.IPOS_BT_EVENT__RSS: + setRss((Map<String, Double>) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case IPosDevKitPackage.IPOS_BT_EVENT__RSS: + setRss((Map<String, Double>) null); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case IPosDevKitPackage.IPOS_BT_EVENT__RSS: + return rss != null; + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (rss: "); + result.append(rss); + result.append(')'); + return result.toString(); + } + +} //IPosBTEventImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/IPosBarcodeEventImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/IPosBarcodeEventImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..2f47046573f7cf7872d1d57520a4a6d77053c8f2 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/IPosBarcodeEventImpl.java @@ -0,0 +1,37 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl; + +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosBarcodeEvent; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>IPos Barcode Event</b></em>'. + * <!-- end-user-doc --> + * + * @generated + */ +public class IPosBarcodeEventImpl extends IPosProximityEventImpl implements IPosBarcodeEvent { + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected IPosBarcodeEventImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return IPosDevKitPackage.Literals.IPOS_BARCODE_EVENT; + } + +} //IPosBarcodeEventImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/IPosBeaconEventImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/IPosBeaconEventImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..eee7a3619587e8f6aa5c8f3ed4f367cc8f9274d9 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/IPosBeaconEventImpl.java @@ -0,0 +1,157 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl; + +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosBeaconEvent; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage; + +import java.util.Map; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>IPos Beacon Event</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosBeaconEventImpl#getDistances <em>Distances</em>}</li> + * </ul> + * + * @generated + */ +public class IPosBeaconEventImpl extends IPosRawdataEventImpl implements IPosBeaconEvent { + /** + * The cached value of the '{@link #getDistances() <em>Distances</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDistances() + * @generated + * @ordered + */ + protected Map<String, Double> distances; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected IPosBeaconEventImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return IPosDevKitPackage.Literals.IPOS_BEACON_EVENT; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Map<String, Double> getDistances() { + return distances; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setDistances(Map<String, Double> newDistances) { + Map<String, Double> oldDistances = distances; + distances = newDistances; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, IPosDevKitPackage.IPOS_BEACON_EVENT__DISTANCES, + oldDistances, distances)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case IPosDevKitPackage.IPOS_BEACON_EVENT__DISTANCES: + return getDistances(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case IPosDevKitPackage.IPOS_BEACON_EVENT__DISTANCES: + setDistances((Map<String, Double>) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case IPosDevKitPackage.IPOS_BEACON_EVENT__DISTANCES: + setDistances((Map<String, Double>) null); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case IPosDevKitPackage.IPOS_BEACON_EVENT__DISTANCES: + return distances != null; + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (distances: "); + result.append(distances); + result.append(')'); + return result.toString(); + } + +} //IPosBeaconEventImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/IPosDevKitFactoryImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/IPosDevKitFactoryImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..1690ad753a932276355c13a5bd409008641b1ede --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/IPosDevKitFactoryImpl.java @@ -0,0 +1,324 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl; + +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.*; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EPackage; + +import org.eclipse.emf.ecore.impl.EFactoryImpl; + +import org.eclipse.emf.ecore.plugin.EcorePlugin; + +/** + * <!-- begin-user-doc --> + * An implementation of the model <b>Factory</b>. + * <!-- end-user-doc --> + * @generated + */ +public class IPosDevKitFactoryImpl extends EFactoryImpl implements IPosDevKitFactory { + /** + * Creates the default factory implementation. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static IPosDevKitFactory init() { + try { + IPosDevKitFactory theIPosDevKitFactory = (IPosDevKitFactory) EPackage.Registry.INSTANCE + .getEFactory(IPosDevKitPackage.eNS_URI); + if (theIPosDevKitFactory != null) { + return theIPosDevKitFactory; + } + } catch (Exception exception) { + EcorePlugin.INSTANCE.log(exception); + } + return new IPosDevKitFactoryImpl(); + } + + /** + * Creates an instance of the factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public IPosDevKitFactoryImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EObject create(EClass eClass) { + switch (eClass.getClassifierID()) { + case IPosDevKitPackage.TRACKING_REQUEST: + return createTrackingRequest(); + case IPosDevKitPackage.MONITORING_REQUEST: + return createMonitoringRequest(); + case IPosDevKitPackage.WORLD_MODEL_UPDATE_REQUEST: + return createWorldModelUpdateRequest(); + case IPosDevKitPackage.DATA_STORAGE_REQUEST: + return createDataStorageRequest(); + case IPosDevKitPackage.WORLD_MODEL_QUERY_REQUEST: + return createWorldModelQueryRequest(); + case IPosDevKitPackage.DATA_STORAGE_QUERY_REQUEST: + return createDataStorageQueryRequest(); + case IPosDevKitPackage.AGENT_REGISTRATION_REQUEST: + return createAgentRegistrationRequest(); + case IPosDevKitPackage.SENSOR_CONFIGURATION_REQUEST: + return createSensorConfigurationRequest(); + case IPosDevKitPackage.IPOS_POSITION_EVENT: + return createIposPositionEvent(); + case IPosDevKitPackage.IPOS_RAWDATA_EVENT: + return createIPosRawdataEvent(); + case IPosDevKitPackage.IPOS_BEACON_EVENT: + return createIPosBeaconEvent(); + case IPosDevKitPackage.IPOS_UWB_EVENT: + return createIPosUWBEvent(); + case IPosDevKitPackage.IPOS_BT_EVENT: + return createIPosBTEvent(); + case IPosDevKitPackage.IPOS_PROXIMITY_EVENT: + return createIPosProximityEvent(); + case IPosDevKitPackage.IPOS_NFC_EVENT: + return createIPosNFCEvent(); + case IPosDevKitPackage.IPOS_BARCODE_EVENT: + return createIPosBarcodeEvent(); + case IPosDevKitPackage.IPOS_RFID_EVENT: + return createIPosRFIDEvent(); + case IPosDevKitPackage.IPOS_OTHER_PROX_EVENT: + return createIPosOtherProxEvent(); + case IPosDevKitPackage.IPOS_OTHER_BEACON_EVENT: + return createIPosOtherBeaconEvent(); + case IPosDevKitPackage.IPOS_MSG_RCV_EVENT: + return createIposMsgRcvEvent(); + default: + throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); + } + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public TrackingRequest createTrackingRequest() { + TrackingRequestImpl trackingRequest = new TrackingRequestImpl(); + return trackingRequest; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public MonitoringRequest createMonitoringRequest() { + MonitoringRequestImpl monitoringRequest = new MonitoringRequestImpl(); + return monitoringRequest; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public WorldModelUpdateRequest createWorldModelUpdateRequest() { + WorldModelUpdateRequestImpl worldModelUpdateRequest = new WorldModelUpdateRequestImpl(); + return worldModelUpdateRequest; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public DataStorageRequest createDataStorageRequest() { + DataStorageRequestImpl dataStorageRequest = new DataStorageRequestImpl(); + return dataStorageRequest; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public WorldModelQueryRequest createWorldModelQueryRequest() { + WorldModelQueryRequestImpl worldModelQueryRequest = new WorldModelQueryRequestImpl(); + return worldModelQueryRequest; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public DataStorageQueryRequest createDataStorageQueryRequest() { + DataStorageQueryRequestImpl dataStorageQueryRequest = new DataStorageQueryRequestImpl(); + return dataStorageQueryRequest; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public AgentRegistrationRequest createAgentRegistrationRequest() { + AgentRegistrationRequestImpl agentRegistrationRequest = new AgentRegistrationRequestImpl(); + return agentRegistrationRequest; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public SensorConfigurationRequest createSensorConfigurationRequest() { + SensorConfigurationRequestImpl sensorConfigurationRequest = new SensorConfigurationRequestImpl(); + return sensorConfigurationRequest; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public IposPositionEvent createIposPositionEvent() { + IposPositionEventImpl iposPositionEvent = new IposPositionEventImpl(); + return iposPositionEvent; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public IPosRawdataEvent createIPosRawdataEvent() { + IPosRawdataEventImpl iPosRawdataEvent = new IPosRawdataEventImpl(); + return iPosRawdataEvent; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public IPosBeaconEvent createIPosBeaconEvent() { + IPosBeaconEventImpl iPosBeaconEvent = new IPosBeaconEventImpl(); + return iPosBeaconEvent; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public IPosUWBEvent createIPosUWBEvent() { + IPosUWBEventImpl iPosUWBEvent = new IPosUWBEventImpl(); + return iPosUWBEvent; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public IPosBTEvent createIPosBTEvent() { + IPosBTEventImpl iPosBTEvent = new IPosBTEventImpl(); + return iPosBTEvent; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public IPosProximityEvent createIPosProximityEvent() { + IPosProximityEventImpl iPosProximityEvent = new IPosProximityEventImpl(); + return iPosProximityEvent; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public IPosNFCEvent createIPosNFCEvent() { + IPosNFCEventImpl iPosNFCEvent = new IPosNFCEventImpl(); + return iPosNFCEvent; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public IPosBarcodeEvent createIPosBarcodeEvent() { + IPosBarcodeEventImpl iPosBarcodeEvent = new IPosBarcodeEventImpl(); + return iPosBarcodeEvent; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public IPosRFIDEvent createIPosRFIDEvent() { + IPosRFIDEventImpl iPosRFIDEvent = new IPosRFIDEventImpl(); + return iPosRFIDEvent; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public IPosOtherProxEvent createIPosOtherProxEvent() { + IPosOtherProxEventImpl iPosOtherProxEvent = new IPosOtherProxEventImpl(); + return iPosOtherProxEvent; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public IPosOtherBeaconEvent createIPosOtherBeaconEvent() { + IPosOtherBeaconEventImpl iPosOtherBeaconEvent = new IPosOtherBeaconEventImpl(); + return iPosOtherBeaconEvent; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public IposMsgRcvEvent createIposMsgRcvEvent() { + IposMsgRcvEventImpl iposMsgRcvEvent = new IposMsgRcvEventImpl(); + return iposMsgRcvEvent; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public IPosDevKitPackage getIPosDevKitPackage() { + return (IPosDevKitPackage) getEPackage(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @deprecated + * @generated + */ + @Deprecated + public static IPosDevKitPackage getPackage() { + return IPosDevKitPackage.eINSTANCE; + } + +} //IPosDevKitFactoryImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/IPosDevKitPackageImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/IPosDevKitPackageImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..df27f615cca95648ae5c9ea7e51a49d98cea41a3 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/IPosDevKitPackageImpl.java @@ -0,0 +1,1220 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl; + +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.AgentRegistrationRequest; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.DataStorageQueryRequest; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.DataStorageRequest; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosBTEvent; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosBarcodeEvent; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosBeaconEvent; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitFactory; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosNFCEvent; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosOtherBeaconEvent; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosOtherProxEvent; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosProximityEvent; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosRFIDEvent; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosRawdataEvent; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosUWBEvent; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposMsgRcvEvent; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposPositionEvent; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.SensorConfigurationRequest; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.TrackingRequest; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.WorldModelQueryRequest; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.WorldModelUpdateRequest; + +import ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage; + +import ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.OFBizPackage; + +import ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl.OFBizPackageImpl; + +import ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPackage; +import ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMPackageImpl; +import ipos.project.DataModellntegration.iPos_Datamodel.Tooz.ToozPackage; +import ipos.project.DataModellntegration.iPos_Datamodel.Tooz.impl.ToozPackageImpl; +import ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.VDA5050Package; +import ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl.VDA5050PackageImpl; +import ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl; + +import org.eclipse.emf.ecore.EAttribute; +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EGenericType; +import org.eclipse.emf.ecore.EPackage; + +import org.eclipse.emf.ecore.EReference; +import org.eclipse.emf.ecore.impl.EPackageImpl; + +import org.eclipse.emf.ecore.xml.type.XMLTypePackage; + +/** + * <!-- begin-user-doc --> + * An implementation of the model <b>Package</b>. + * <!-- end-user-doc --> + * @generated + */ +public class IPosDevKitPackageImpl extends EPackageImpl implements IPosDevKitPackage { + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass trackingRequestEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass monitoringRequestEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass worldModelUpdateRequestEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass dataStorageRequestEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass worldModelQueryRequestEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass dataStorageQueryRequestEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass agentRegistrationRequestEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass sensorConfigurationRequestEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass iposPositionEventEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass iPosRawdataEventEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass iPosBeaconEventEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass iPosUWBEventEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass iPosBTEventEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass iPosProximityEventEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass iPosNFCEventEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass iPosBarcodeEventEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass iPosRFIDEventEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass iPosOtherProxEventEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass iPosOtherBeaconEventEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass iposMsgRcvEventEClass = 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 ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage#eNS_URI + * @see #init() + * @generated + */ + private IPosDevKitPackageImpl() { + super(eNS_URI, IPosDevKitFactory.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 IPosDevKitPackage#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 IPosDevKitPackage init() { + if (isInited) + return (IPosDevKitPackage) EPackage.Registry.INSTANCE.getEPackage(IPosDevKitPackage.eNS_URI); + + // Obtain or create and register package + Object registeredIPosDevKitPackage = EPackage.Registry.INSTANCE.get(eNS_URI); + IPosDevKitPackageImpl theIPosDevKitPackage = registeredIPosDevKitPackage instanceof IPosDevKitPackageImpl + ? (IPosDevKitPackageImpl) registeredIPosDevKitPackage + : new IPosDevKitPackageImpl(); + + isInited = true; + + // Initialize simple dependencies + XMLTypePackage.eINSTANCE.eClass(); + + // Obtain or create and register interdependencies + Object registeredPackage = EPackage.Registry.INSTANCE.getEPackage(IPos_DatamodelPackage.eNS_URI); + IPos_DatamodelPackageImpl theIPos_DatamodelPackage = (IPos_DatamodelPackageImpl) (registeredPackage instanceof IPos_DatamodelPackageImpl + ? registeredPackage + : IPos_DatamodelPackage.eINSTANCE); + registeredPackage = EPackage.Registry.INSTANCE.getEPackage(OFBizPackage.eNS_URI); + OFBizPackageImpl theOFBizPackage = (OFBizPackageImpl) (registeredPackage instanceof OFBizPackageImpl + ? registeredPackage + : OFBizPackage.eINSTANCE); + registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ToozPackage.eNS_URI); + ToozPackageImpl theToozPackage = (ToozPackageImpl) (registeredPackage instanceof ToozPackageImpl + ? registeredPackage + : ToozPackage.eINSTANCE); + registeredPackage = EPackage.Registry.INSTANCE.getEPackage(VDA5050Package.eNS_URI); + VDA5050PackageImpl theVDA5050Package = (VDA5050PackageImpl) (registeredPackage instanceof VDA5050PackageImpl + ? registeredPackage + : VDA5050Package.eINSTANCE); + registeredPackage = EPackage.Registry.INSTANCE.getEPackage(OSMPackage.eNS_URI); + OSMPackageImpl theOSMPackage = (OSMPackageImpl) (registeredPackage instanceof OSMPackageImpl ? registeredPackage + : OSMPackage.eINSTANCE); + + // Create package meta-data objects + theIPosDevKitPackage.createPackageContents(); + theIPos_DatamodelPackage.createPackageContents(); + theOFBizPackage.createPackageContents(); + theToozPackage.createPackageContents(); + theVDA5050Package.createPackageContents(); + theOSMPackage.createPackageContents(); + + // Initialize created meta-data + theIPosDevKitPackage.initializePackageContents(); + theIPos_DatamodelPackage.initializePackageContents(); + theOFBizPackage.initializePackageContents(); + theToozPackage.initializePackageContents(); + theVDA5050Package.initializePackageContents(); + theOSMPackage.initializePackageContents(); + + // Mark meta-data to indicate it can't be changed + theIPosDevKitPackage.freeze(); + + // Update the registry and return the package + EPackage.Registry.INSTANCE.put(IPosDevKitPackage.eNS_URI, theIPosDevKitPackage); + return theIPosDevKitPackage; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getTrackingRequest() { + return trackingRequestEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getMonitoringRequest() { + return monitoringRequestEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getMonitoringRequest_FrameIds() { + return (EAttribute) monitoringRequestEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getMonitoringRequest_Delta() { + return (EAttribute) monitoringRequestEClass.getEStructuralFeatures().get(1); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getMonitoringRequest_UpdateFrequency() { + return (EAttribute) monitoringRequestEClass.getEStructuralFeatures().get(2); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getMonitoringRequest_Type() { + return (EAttribute) monitoringRequestEClass.getEStructuralFeatures().get(3); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getMonitoringRequest_Id() { + return (EAttribute) monitoringRequestEClass.getEStructuralFeatures().get(4); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getMonitoringRequest_FusionStrategy() { + return (EAttribute) monitoringRequestEClass.getEStructuralFeatures().get(5); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getMonitoringRequest_ExitNotification() { + return (EAttribute) monitoringRequestEClass.getEStructuralFeatures().get(6); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getMonitoringRequest_Properties() { + return (EAttribute) monitoringRequestEClass.getEStructuralFeatures().get(7); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getMonitoringRequest_MonitoringTaskId() { + return (EAttribute) monitoringRequestEClass.getEStructuralFeatures().get(8); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getMonitoringRequest_RequestorProtocol() { + return (EAttribute) monitoringRequestEClass.getEStructuralFeatures().get(9); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getMonitoringRequest_SerializationType() { + return (EAttribute) monitoringRequestEClass.getEStructuralFeatures().get(10); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getMonitoringRequest_RefSystemId() { + return (EAttribute) monitoringRequestEClass.getEStructuralFeatures().get(11); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getWorldModelUpdateRequest() { + return worldModelUpdateRequestEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getDataStorageRequest() { + return dataStorageRequestEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getWorldModelQueryRequest() { + return worldModelQueryRequestEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getDataStorageQueryRequest() { + return dataStorageQueryRequestEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getDataStorageQueryRequest_TrackingTaskId() { + return (EAttribute) dataStorageQueryRequestEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getAgentRegistrationRequest() { + return agentRegistrationRequestEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getSensorConfigurationRequest() { + return sensorConfigurationRequestEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getIposPositionEvent() { + return iposPositionEventEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getIposPositionEvent_AgentId() { + return (EAttribute) iposPositionEventEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getIposPositionEvent_SensorId() { + return (EAttribute) iposPositionEventEClass.getEStructuralFeatures().get(1); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getIposPositionEvent_Type() { + return (EAttribute) iposPositionEventEClass.getEStructuralFeatures().get(2); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getIposPositionEvent_SensorType() { + return (EAttribute) iposPositionEventEClass.getEStructuralFeatures().get(3); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getIposPositionEvent_LastPosUpdate() { + return (EAttribute) iposPositionEventEClass.getEStructuralFeatures().get(4); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EReference getIposPositionEvent_Position() { + return (EReference) iposPositionEventEClass.getEStructuralFeatures().get(5); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EReference getIposPositionEvent_Orientation() { + return (EReference) iposPositionEventEClass.getEStructuralFeatures().get(6); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EReference getIposPositionEvent_ZoneDescriptors() { + return (EReference) iposPositionEventEClass.getEStructuralFeatures().get(7); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getIPosRawdataEvent() { + return iPosRawdataEventEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getIPosRawdataEvent_AgentId() { + return (EAttribute) iPosRawdataEventEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getIPosRawdataEvent_SensorId() { + return (EAttribute) iPosRawdataEventEClass.getEStructuralFeatures().get(1); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getIPosRawdataEvent_AgentType() { + return (EAttribute) iPosRawdataEventEClass.getEStructuralFeatures().get(2); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getIPosRawdataEvent_SensorType() { + return (EAttribute) iPosRawdataEventEClass.getEStructuralFeatures().get(3); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getIPosRawdataEvent_TimeStamp() { + return (EAttribute) iPosRawdataEventEClass.getEStructuralFeatures().get(4); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getIPosBeaconEvent() { + return iPosBeaconEventEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getIPosBeaconEvent_Distances() { + return (EAttribute) iPosBeaconEventEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getIPosUWBEvent() { + return iPosUWBEventEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getIPosBTEvent() { + return iPosBTEventEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getIPosBTEvent_Rss() { + return (EAttribute) iPosBTEventEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getIPosProximityEvent() { + return iPosProximityEventEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getIPosProximityEvent_TagId() { + return (EAttribute) iPosProximityEventEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getIPosNFCEvent() { + return iPosNFCEventEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getIPosNFCEvent_TagData() { + return (EAttribute) iPosNFCEventEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getIPosBarcodeEvent() { + return iPosBarcodeEventEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getIPosRFIDEvent() { + return iPosRFIDEventEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getIPosRFIDEvent_Location() { + return (EAttribute) iPosRFIDEventEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getIPosOtherProxEvent() { + return iPosOtherProxEventEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getIPosOtherProxEvent_Data() { + return (EAttribute) iPosOtherProxEventEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getIPosOtherBeaconEvent() { + return iPosOtherBeaconEventEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getIPosOtherBeaconEvent_Data() { + return (EAttribute) iPosOtherBeaconEventEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getIposMsgRcvEvent() { + return iposMsgRcvEventEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getIposMsgRcvEvent_ProtocolName() { + return (EAttribute) iposMsgRcvEventEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getIposMsgRcvEvent_SerializedMsg() { + return (EAttribute) iposMsgRcvEventEClass.getEStructuralFeatures().get(1); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getIposMsgRcvEvent_LastPosUpdate() { + return (EAttribute) iposMsgRcvEventEClass.getEStructuralFeatures().get(2); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EReference getIposMsgRcvEvent_LastKnownPosition() { + return (EReference) iposMsgRcvEventEClass.getEStructuralFeatures().get(3); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EReference getIposMsgRcvEvent_LastKnownOrientation() { + return (EReference) iposMsgRcvEventEClass.getEStructuralFeatures().get(4); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EReference getIposMsgRcvEvent_LastKnownZonedescriptors() { + return (EReference) iposMsgRcvEventEClass.getEStructuralFeatures().get(5); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getIposMsgRcvEvent_AgentId() { + return (EAttribute) iposMsgRcvEventEClass.getEStructuralFeatures().get(6); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getIposMsgRcvEvent_ExtractedAttributes() { + return (EAttribute) iposMsgRcvEventEClass.getEStructuralFeatures().get(7); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getIposMsgRcvEvent_Timestamp() { + return (EAttribute) iposMsgRcvEventEClass.getEStructuralFeatures().get(8); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public IPosDevKitFactory getIPosDevKitFactory() { + return (IPosDevKitFactory) 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 + trackingRequestEClass = createEClass(TRACKING_REQUEST); + + monitoringRequestEClass = createEClass(MONITORING_REQUEST); + createEAttribute(monitoringRequestEClass, MONITORING_REQUEST__FRAME_IDS); + createEAttribute(monitoringRequestEClass, MONITORING_REQUEST__DELTA); + createEAttribute(monitoringRequestEClass, MONITORING_REQUEST__UPDATE_FREQUENCY); + createEAttribute(monitoringRequestEClass, MONITORING_REQUEST__TYPE); + createEAttribute(monitoringRequestEClass, MONITORING_REQUEST__ID); + createEAttribute(monitoringRequestEClass, MONITORING_REQUEST__FUSION_STRATEGY); + createEAttribute(monitoringRequestEClass, MONITORING_REQUEST__EXIT_NOTIFICATION); + createEAttribute(monitoringRequestEClass, MONITORING_REQUEST__PROPERTIES); + createEAttribute(monitoringRequestEClass, MONITORING_REQUEST__MONITORING_TASK_ID); + createEAttribute(monitoringRequestEClass, MONITORING_REQUEST__REQUESTOR_PROTOCOL); + createEAttribute(monitoringRequestEClass, MONITORING_REQUEST__SERIALIZATION_TYPE); + createEAttribute(monitoringRequestEClass, MONITORING_REQUEST__REF_SYSTEM_ID); + + worldModelUpdateRequestEClass = createEClass(WORLD_MODEL_UPDATE_REQUEST); + + dataStorageRequestEClass = createEClass(DATA_STORAGE_REQUEST); + + worldModelQueryRequestEClass = createEClass(WORLD_MODEL_QUERY_REQUEST); + + dataStorageQueryRequestEClass = createEClass(DATA_STORAGE_QUERY_REQUEST); + createEAttribute(dataStorageQueryRequestEClass, DATA_STORAGE_QUERY_REQUEST__TRACKING_TASK_ID); + + agentRegistrationRequestEClass = createEClass(AGENT_REGISTRATION_REQUEST); + + sensorConfigurationRequestEClass = createEClass(SENSOR_CONFIGURATION_REQUEST); + + iposPositionEventEClass = createEClass(IPOS_POSITION_EVENT); + createEAttribute(iposPositionEventEClass, IPOS_POSITION_EVENT__AGENT_ID); + createEAttribute(iposPositionEventEClass, IPOS_POSITION_EVENT__SENSOR_ID); + createEAttribute(iposPositionEventEClass, IPOS_POSITION_EVENT__TYPE); + createEAttribute(iposPositionEventEClass, IPOS_POSITION_EVENT__SENSOR_TYPE); + createEAttribute(iposPositionEventEClass, IPOS_POSITION_EVENT__LAST_POS_UPDATE); + createEReference(iposPositionEventEClass, IPOS_POSITION_EVENT__POSITION); + createEReference(iposPositionEventEClass, IPOS_POSITION_EVENT__ORIENTATION); + createEReference(iposPositionEventEClass, IPOS_POSITION_EVENT__ZONE_DESCRIPTORS); + + iPosRawdataEventEClass = createEClass(IPOS_RAWDATA_EVENT); + createEAttribute(iPosRawdataEventEClass, IPOS_RAWDATA_EVENT__AGENT_ID); + createEAttribute(iPosRawdataEventEClass, IPOS_RAWDATA_EVENT__SENSOR_ID); + createEAttribute(iPosRawdataEventEClass, IPOS_RAWDATA_EVENT__AGENT_TYPE); + createEAttribute(iPosRawdataEventEClass, IPOS_RAWDATA_EVENT__SENSOR_TYPE); + createEAttribute(iPosRawdataEventEClass, IPOS_RAWDATA_EVENT__TIME_STAMP); + + iPosBeaconEventEClass = createEClass(IPOS_BEACON_EVENT); + createEAttribute(iPosBeaconEventEClass, IPOS_BEACON_EVENT__DISTANCES); + + iPosUWBEventEClass = createEClass(IPOS_UWB_EVENT); + + iPosBTEventEClass = createEClass(IPOS_BT_EVENT); + createEAttribute(iPosBTEventEClass, IPOS_BT_EVENT__RSS); + + iPosProximityEventEClass = createEClass(IPOS_PROXIMITY_EVENT); + createEAttribute(iPosProximityEventEClass, IPOS_PROXIMITY_EVENT__TAG_ID); + + iPosNFCEventEClass = createEClass(IPOS_NFC_EVENT); + createEAttribute(iPosNFCEventEClass, IPOS_NFC_EVENT__TAG_DATA); + + iPosBarcodeEventEClass = createEClass(IPOS_BARCODE_EVENT); + + iPosRFIDEventEClass = createEClass(IPOS_RFID_EVENT); + createEAttribute(iPosRFIDEventEClass, IPOS_RFID_EVENT__LOCATION); + + iPosOtherProxEventEClass = createEClass(IPOS_OTHER_PROX_EVENT); + createEAttribute(iPosOtherProxEventEClass, IPOS_OTHER_PROX_EVENT__DATA); + + iPosOtherBeaconEventEClass = createEClass(IPOS_OTHER_BEACON_EVENT); + createEAttribute(iPosOtherBeaconEventEClass, IPOS_OTHER_BEACON_EVENT__DATA); + + iposMsgRcvEventEClass = createEClass(IPOS_MSG_RCV_EVENT); + createEAttribute(iposMsgRcvEventEClass, IPOS_MSG_RCV_EVENT__PROTOCOL_NAME); + createEAttribute(iposMsgRcvEventEClass, IPOS_MSG_RCV_EVENT__SERIALIZED_MSG); + createEAttribute(iposMsgRcvEventEClass, IPOS_MSG_RCV_EVENT__LAST_POS_UPDATE); + createEReference(iposMsgRcvEventEClass, IPOS_MSG_RCV_EVENT__LAST_KNOWN_POSITION); + createEReference(iposMsgRcvEventEClass, IPOS_MSG_RCV_EVENT__LAST_KNOWN_ORIENTATION); + createEReference(iposMsgRcvEventEClass, IPOS_MSG_RCV_EVENT__LAST_KNOWN_ZONEDESCRIPTORS); + createEAttribute(iposMsgRcvEventEClass, IPOS_MSG_RCV_EVENT__AGENT_ID); + createEAttribute(iposMsgRcvEventEClass, IPOS_MSG_RCV_EVENT__EXTRACTED_ATTRIBUTES); + createEAttribute(iposMsgRcvEventEClass, IPOS_MSG_RCV_EVENT__TIMESTAMP); + } + + /** + * <!-- 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); + + // Obtain other dependent packages + IPos_DatamodelPackage theIPos_DatamodelPackage = (IPos_DatamodelPackage) EPackage.Registry.INSTANCE + .getEPackage(IPos_DatamodelPackage.eNS_URI); + XMLTypePackage theXMLTypePackage = (XMLTypePackage) EPackage.Registry.INSTANCE + .getEPackage(XMLTypePackage.eNS_URI); + + // Create type parameters + + // Set bounds for type parameters + + // Add supertypes to classes + iPosBeaconEventEClass.getESuperTypes().add(this.getIPosRawdataEvent()); + iPosUWBEventEClass.getESuperTypes().add(this.getIPosBeaconEvent()); + iPosBTEventEClass.getESuperTypes().add(this.getIPosBeaconEvent()); + iPosProximityEventEClass.getESuperTypes().add(this.getIPosRawdataEvent()); + iPosNFCEventEClass.getESuperTypes().add(this.getIPosProximityEvent()); + iPosBarcodeEventEClass.getESuperTypes().add(this.getIPosProximityEvent()); + iPosRFIDEventEClass.getESuperTypes().add(this.getIPosProximityEvent()); + iPosOtherProxEventEClass.getESuperTypes().add(this.getIPosProximityEvent()); + iPosOtherBeaconEventEClass.getESuperTypes().add(this.getIPosBeaconEvent()); + + // Initialize classes, features, and operations; add parameters + initEClass(trackingRequestEClass, TrackingRequest.class, "TrackingRequest", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + + initEClass(monitoringRequestEClass, MonitoringRequest.class, "MonitoringRequest", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getMonitoringRequest_FrameIds(), theIPos_DatamodelPackage.getStringList(), "frameIds", null, 0, + 1, MonitoringRequest.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getMonitoringRequest_Delta(), theXMLTypePackage.getFloat(), "delta", null, 0, 1, + MonitoringRequest.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + initEAttribute(getMonitoringRequest_UpdateFrequency(), theXMLTypePackage.getFloat(), "updateFrequency", null, 0, + 1, MonitoringRequest.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getMonitoringRequest_Type(), theIPos_DatamodelPackage.getStringList(), "type", null, 0, 1, + MonitoringRequest.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + initEAttribute(getMonitoringRequest_Id(), theIPos_DatamodelPackage.getStringList(), "id", null, 0, 1, + MonitoringRequest.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + initEAttribute(getMonitoringRequest_FusionStrategy(), theXMLTypePackage.getString(), "fusionStrategy", null, 0, + 1, MonitoringRequest.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getMonitoringRequest_ExitNotification(), theXMLTypePackage.getBoolean(), "exitNotification", + null, 0, 1, MonitoringRequest.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getMonitoringRequest_Properties(), theIPos_DatamodelPackage.getStringList(), "properties", null, + 0, 1, MonitoringRequest.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getMonitoringRequest_MonitoringTaskId(), theXMLTypePackage.getString(), "monitoringTaskId", null, + 0, 1, MonitoringRequest.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getMonitoringRequest_RequestorProtocol(), theXMLTypePackage.getString(), "requestorProtocol", + null, 0, 1, MonitoringRequest.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getMonitoringRequest_SerializationType(), theXMLTypePackage.getString(), "serializationType", + null, 0, 1, MonitoringRequest.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getMonitoringRequest_RefSystemId(), theXMLTypePackage.getString(), "refSystemId", null, 0, 1, + MonitoringRequest.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + + initEClass(worldModelUpdateRequestEClass, WorldModelUpdateRequest.class, "WorldModelUpdateRequest", + !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(dataStorageRequestEClass, DataStorageRequest.class, "DataStorageRequest", !IS_ABSTRACT, + !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(worldModelQueryRequestEClass, WorldModelQueryRequest.class, "WorldModelQueryRequest", !IS_ABSTRACT, + !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(dataStorageQueryRequestEClass, DataStorageQueryRequest.class, "DataStorageQueryRequest", + !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getDataStorageQueryRequest_TrackingTaskId(), theXMLTypePackage.getString(), "trackingTaskId", + null, 0, 1, DataStorageQueryRequest.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, + !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(agentRegistrationRequestEClass, AgentRegistrationRequest.class, "AgentRegistrationRequest", + !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(sensorConfigurationRequestEClass, SensorConfigurationRequest.class, "SensorConfigurationRequest", + !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(iposPositionEventEClass, IposPositionEvent.class, "IposPositionEvent", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getIposPositionEvent_AgentId(), theXMLTypePackage.getString(), "agentId", null, 0, 1, + IposPositionEvent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + initEAttribute(getIposPositionEvent_SensorId(), theXMLTypePackage.getString(), "sensorId", null, 0, 1, + IposPositionEvent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + initEAttribute(getIposPositionEvent_Type(), theXMLTypePackage.getString(), "type", null, 0, 1, + IposPositionEvent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + initEAttribute(getIposPositionEvent_SensorType(), theXMLTypePackage.getString(), "sensorType", null, 0, 1, + IposPositionEvent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + initEAttribute(getIposPositionEvent_LastPosUpdate(), theXMLTypePackage.getString(), "lastPosUpdate", null, 0, 1, + IposPositionEvent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + initEReference(getIposPositionEvent_Position(), theIPos_DatamodelPackage.getPosition(), null, "position", null, + 1, 1, IposPositionEvent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, + IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getIposPositionEvent_Orientation(), theIPos_DatamodelPackage.getOrientation(), null, + "orientation", null, 1, 1, IposPositionEvent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, + !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getIposPositionEvent_ZoneDescriptors(), theIPos_DatamodelPackage.getZoneDescriptor(), null, + "zoneDescriptors", null, 0, -1, IposPositionEvent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, + !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(iPosRawdataEventEClass, IPosRawdataEvent.class, "IPosRawdataEvent", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getIPosRawdataEvent_AgentId(), ecorePackage.getEString(), "agentId", null, 0, 1, + IPosRawdataEvent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + initEAttribute(getIPosRawdataEvent_SensorId(), ecorePackage.getEString(), "sensorId", null, 0, 1, + IPosRawdataEvent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + initEAttribute(getIPosRawdataEvent_AgentType(), ecorePackage.getEString(), "agentType", null, 0, 1, + IPosRawdataEvent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + initEAttribute(getIPosRawdataEvent_SensorType(), ecorePackage.getEString(), "sensorType", null, 0, 1, + IPosRawdataEvent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + initEAttribute(getIPosRawdataEvent_TimeStamp(), ecorePackage.getEString(), "timeStamp", null, 0, 1, + IPosRawdataEvent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + + initEClass(iPosBeaconEventEClass, IPosBeaconEvent.class, "IPosBeaconEvent", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + EGenericType g1 = createEGenericType(ecorePackage.getEMap()); + EGenericType g2 = createEGenericType(theXMLTypePackage.getString()); + g1.getETypeArguments().add(g2); + g2 = createEGenericType(theXMLTypePackage.getDoubleObject()); + g1.getETypeArguments().add(g2); + initEAttribute(getIPosBeaconEvent_Distances(), g1, "distances", null, 0, 1, IPosBeaconEvent.class, IS_TRANSIENT, + !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(iPosUWBEventEClass, IPosUWBEvent.class, "IPosUWBEvent", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + + initEClass(iPosBTEventEClass, IPosBTEvent.class, "IPosBTEvent", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + g1 = createEGenericType(ecorePackage.getEMap()); + g2 = createEGenericType(ecorePackage.getEString()); + g1.getETypeArguments().add(g2); + g2 = createEGenericType(theXMLTypePackage.getDoubleObject()); + g1.getETypeArguments().add(g2); + initEAttribute(getIPosBTEvent_Rss(), g1, "rss", null, 0, 1, IPosBTEvent.class, IS_TRANSIENT, !IS_VOLATILE, + IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(iPosProximityEventEClass, IPosProximityEvent.class, "IPosProximityEvent", !IS_ABSTRACT, + !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getIPosProximityEvent_TagId(), ecorePackage.getEString(), "tagId", null, 0, 1, + IPosProximityEvent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + + initEClass(iPosNFCEventEClass, IPosNFCEvent.class, "IPosNFCEvent", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + g1 = createEGenericType(ecorePackage.getEMap()); + g2 = createEGenericType(ecorePackage.getEString()); + g1.getETypeArguments().add(g2); + g2 = createEGenericType(ecorePackage.getEJavaObject()); + g1.getETypeArguments().add(g2); + initEAttribute(getIPosNFCEvent_TagData(), g1, "tagData", null, 0, 1, IPosNFCEvent.class, IS_TRANSIENT, + !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(iPosBarcodeEventEClass, IPosBarcodeEvent.class, "IPosBarcodeEvent", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + + initEClass(iPosRFIDEventEClass, IPosRFIDEvent.class, "IPosRFIDEvent", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getIPosRFIDEvent_Location(), ecorePackage.getEString(), "location", null, 0, 1, + IPosRFIDEvent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + + initEClass(iPosOtherProxEventEClass, IPosOtherProxEvent.class, "IPosOtherProxEvent", !IS_ABSTRACT, + !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + g1 = createEGenericType(ecorePackage.getEMap()); + g2 = createEGenericType(ecorePackage.getEString()); + g1.getETypeArguments().add(g2); + g2 = createEGenericType(ecorePackage.getEJavaObject()); + g1.getETypeArguments().add(g2); + initEAttribute(getIPosOtherProxEvent_Data(), g1, "data", null, 0, 1, IPosOtherProxEvent.class, IS_TRANSIENT, + !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(iPosOtherBeaconEventEClass, IPosOtherBeaconEvent.class, "IPosOtherBeaconEvent", !IS_ABSTRACT, + !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + g1 = createEGenericType(ecorePackage.getEMap()); + g2 = createEGenericType(ecorePackage.getEString()); + g1.getETypeArguments().add(g2); + g2 = createEGenericType(ecorePackage.getEJavaObject()); + g1.getETypeArguments().add(g2); + initEAttribute(getIPosOtherBeaconEvent_Data(), g1, "data", null, 0, 1, IPosOtherBeaconEvent.class, IS_TRANSIENT, + !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(iposMsgRcvEventEClass, IposMsgRcvEvent.class, "IposMsgRcvEvent", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getIposMsgRcvEvent_ProtocolName(), ecorePackage.getEString(), "protocolName", null, 1, 1, + IposMsgRcvEvent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + initEAttribute(getIposMsgRcvEvent_SerializedMsg(), theIPos_DatamodelPackage.getByteArray(), "serializedMsg", + null, 0, 1, IposMsgRcvEvent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getIposMsgRcvEvent_LastPosUpdate(), ecorePackage.getEString(), "lastPosUpdate", null, 0, 1, + IposMsgRcvEvent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + initEReference(getIposMsgRcvEvent_LastKnownPosition(), theIPos_DatamodelPackage.getPosition(), null, + "lastKnownPosition", null, 0, 1, IposMsgRcvEvent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, + !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getIposMsgRcvEvent_LastKnownOrientation(), theIPos_DatamodelPackage.getOrientation(), null, + "lastKnownOrientation", null, 0, 1, IposMsgRcvEvent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, + !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getIposMsgRcvEvent_LastKnownZonedescriptors(), theIPos_DatamodelPackage.getZoneDescriptor(), + null, "lastKnownZonedescriptors", null, 0, -1, IposMsgRcvEvent.class, !IS_TRANSIENT, !IS_VOLATILE, + IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getIposMsgRcvEvent_AgentId(), ecorePackage.getEString(), "agentId", null, 1, 1, + IposMsgRcvEvent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + initEAttribute(getIposMsgRcvEvent_ExtractedAttributes(), theIPos_DatamodelPackage.getListOfStringMaps(), + "extractedAttributes", null, 0, 1, IposMsgRcvEvent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, + !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getIposMsgRcvEvent_Timestamp(), ecorePackage.getEString(), "timestamp", null, 0, 1, + IposMsgRcvEvent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + } + +} //IPosDevKitPackageImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/IPosNFCEventImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/IPosNFCEventImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..894229eebc4453f06007f96651cb11866b0f1601 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/IPosNFCEventImpl.java @@ -0,0 +1,157 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl; + +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosNFCEvent; + +import java.util.Map; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>IPos NFC Event</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosNFCEventImpl#getTagData <em>Tag Data</em>}</li> + * </ul> + * + * @generated + */ +public class IPosNFCEventImpl extends IPosProximityEventImpl implements IPosNFCEvent { + /** + * The cached value of the '{@link #getTagData() <em>Tag Data</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTagData() + * @generated + * @ordered + */ + protected Map<String, Object> tagData; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected IPosNFCEventImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return IPosDevKitPackage.Literals.IPOS_NFC_EVENT; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Map<String, Object> getTagData() { + return tagData; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setTagData(Map<String, Object> newTagData) { + Map<String, Object> oldTagData = tagData; + tagData = newTagData; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, IPosDevKitPackage.IPOS_NFC_EVENT__TAG_DATA, + oldTagData, tagData)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case IPosDevKitPackage.IPOS_NFC_EVENT__TAG_DATA: + return getTagData(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case IPosDevKitPackage.IPOS_NFC_EVENT__TAG_DATA: + setTagData((Map<String, Object>) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case IPosDevKitPackage.IPOS_NFC_EVENT__TAG_DATA: + setTagData((Map<String, Object>) null); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case IPosDevKitPackage.IPOS_NFC_EVENT__TAG_DATA: + return tagData != null; + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (tagData: "); + result.append(tagData); + result.append(')'); + return result.toString(); + } + +} //IPosNFCEventImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/IPosOtherBeaconEventImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/IPosOtherBeaconEventImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..6876c379a9d753e904fc94e8d7479b3f3747f7a7 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/IPosOtherBeaconEventImpl.java @@ -0,0 +1,157 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl; + +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosOtherBeaconEvent; + +import java.util.Map; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>IPos Other Beacon Event</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosOtherBeaconEventImpl#getData <em>Data</em>}</li> + * </ul> + * + * @generated + */ +public class IPosOtherBeaconEventImpl extends IPosBeaconEventImpl implements IPosOtherBeaconEvent { + /** + * The cached value of the '{@link #getData() <em>Data</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getData() + * @generated + * @ordered + */ + protected Map<String, Object> data; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected IPosOtherBeaconEventImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return IPosDevKitPackage.Literals.IPOS_OTHER_BEACON_EVENT; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Map<String, Object> getData() { + return data; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setData(Map<String, Object> newData) { + Map<String, Object> oldData = data; + data = newData; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, IPosDevKitPackage.IPOS_OTHER_BEACON_EVENT__DATA, + oldData, data)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case IPosDevKitPackage.IPOS_OTHER_BEACON_EVENT__DATA: + return getData(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case IPosDevKitPackage.IPOS_OTHER_BEACON_EVENT__DATA: + setData((Map<String, Object>) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case IPosDevKitPackage.IPOS_OTHER_BEACON_EVENT__DATA: + setData((Map<String, Object>) null); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case IPosDevKitPackage.IPOS_OTHER_BEACON_EVENT__DATA: + return data != null; + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (data: "); + result.append(data); + result.append(')'); + return result.toString(); + } + +} //IPosOtherBeaconEventImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/IPosOtherProxEventImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/IPosOtherProxEventImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..9fb9b1f46980ad3ee80c35b79a1c2eb5a2f0f22c --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/IPosOtherProxEventImpl.java @@ -0,0 +1,157 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl; + +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosOtherProxEvent; + +import java.util.Map; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>IPos Other Prox Event</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosOtherProxEventImpl#getData <em>Data</em>}</li> + * </ul> + * + * @generated + */ +public class IPosOtherProxEventImpl extends IPosProximityEventImpl implements IPosOtherProxEvent { + /** + * The cached value of the '{@link #getData() <em>Data</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getData() + * @generated + * @ordered + */ + protected Map<String, Object> data; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected IPosOtherProxEventImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return IPosDevKitPackage.Literals.IPOS_OTHER_PROX_EVENT; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Map<String, Object> getData() { + return data; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setData(Map<String, Object> newData) { + Map<String, Object> oldData = data; + data = newData; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, IPosDevKitPackage.IPOS_OTHER_PROX_EVENT__DATA, + oldData, data)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case IPosDevKitPackage.IPOS_OTHER_PROX_EVENT__DATA: + return getData(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case IPosDevKitPackage.IPOS_OTHER_PROX_EVENT__DATA: + setData((Map<String, Object>) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case IPosDevKitPackage.IPOS_OTHER_PROX_EVENT__DATA: + setData((Map<String, Object>) null); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case IPosDevKitPackage.IPOS_OTHER_PROX_EVENT__DATA: + return data != null; + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (data: "); + result.append(data); + result.append(')'); + return result.toString(); + } + +} //IPosOtherProxEventImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/IPosProximityEventImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/IPosProximityEventImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..12183b29b0f9bb38be7b64864f95a648646f607a --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/IPosProximityEventImpl.java @@ -0,0 +1,164 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl; + +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosProximityEvent; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>IPos Proximity Event</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosProximityEventImpl#getTagId <em>Tag Id</em>}</li> + * </ul> + * + * @generated + */ +public class IPosProximityEventImpl extends IPosRawdataEventImpl implements IPosProximityEvent { + /** + * The default value of the '{@link #getTagId() <em>Tag Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTagId() + * @generated + * @ordered + */ + protected static final String TAG_ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getTagId() <em>Tag Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTagId() + * @generated + * @ordered + */ + protected String tagId = TAG_ID_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected IPosProximityEventImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return IPosDevKitPackage.Literals.IPOS_PROXIMITY_EVENT; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getTagId() { + return tagId; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setTagId(String newTagId) { + String oldTagId = tagId; + tagId = newTagId; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, IPosDevKitPackage.IPOS_PROXIMITY_EVENT__TAG_ID, + oldTagId, tagId)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case IPosDevKitPackage.IPOS_PROXIMITY_EVENT__TAG_ID: + return getTagId(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case IPosDevKitPackage.IPOS_PROXIMITY_EVENT__TAG_ID: + setTagId((String) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case IPosDevKitPackage.IPOS_PROXIMITY_EVENT__TAG_ID: + setTagId(TAG_ID_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case IPosDevKitPackage.IPOS_PROXIMITY_EVENT__TAG_ID: + return TAG_ID_EDEFAULT == null ? tagId != null : !TAG_ID_EDEFAULT.equals(tagId); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (tagId: "); + result.append(tagId); + result.append(')'); + return result.toString(); + } + +} //IPosProximityEventImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/IPosRFIDEventImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/IPosRFIDEventImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..24f0dffcf57580bba53093c0290736ab4a2d48a8 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/IPosRFIDEventImpl.java @@ -0,0 +1,164 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl; + +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosRFIDEvent; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>IPos RFID Event</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosRFIDEventImpl#getLocation <em>Location</em>}</li> + * </ul> + * + * @generated + */ +public class IPosRFIDEventImpl extends IPosProximityEventImpl implements IPosRFIDEvent { + /** + * The default value of the '{@link #getLocation() <em>Location</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getLocation() + * @generated + * @ordered + */ + protected static final String LOCATION_EDEFAULT = null; + + /** + * The cached value of the '{@link #getLocation() <em>Location</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getLocation() + * @generated + * @ordered + */ + protected String location = LOCATION_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected IPosRFIDEventImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return IPosDevKitPackage.Literals.IPOS_RFID_EVENT; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getLocation() { + return location; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setLocation(String newLocation) { + String oldLocation = location; + location = newLocation; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, IPosDevKitPackage.IPOS_RFID_EVENT__LOCATION, + oldLocation, location)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case IPosDevKitPackage.IPOS_RFID_EVENT__LOCATION: + return getLocation(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case IPosDevKitPackage.IPOS_RFID_EVENT__LOCATION: + setLocation((String) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case IPosDevKitPackage.IPOS_RFID_EVENT__LOCATION: + setLocation(LOCATION_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case IPosDevKitPackage.IPOS_RFID_EVENT__LOCATION: + return LOCATION_EDEFAULT == null ? location != null : !LOCATION_EDEFAULT.equals(location); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (location: "); + result.append(location); + result.append(')'); + return result.toString(); + } + +} //IPosRFIDEventImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/IPosRawdataEventImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/IPosRawdataEventImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..b16ba073edebfde15834ebe04e55e223c3b17b03 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/IPosRawdataEventImpl.java @@ -0,0 +1,385 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl; + +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosRawdataEvent; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>IPos Rawdata Event</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosRawdataEventImpl#getAgentId <em>Agent Id</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosRawdataEventImpl#getSensorId <em>Sensor Id</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosRawdataEventImpl#getAgentType <em>Agent Type</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosRawdataEventImpl#getSensorType <em>Sensor Type</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosRawdataEventImpl#getTimeStamp <em>Time Stamp</em>}</li> + * </ul> + * + * @generated + */ +public class IPosRawdataEventImpl extends MinimalEObjectImpl.Container implements IPosRawdataEvent { + /** + * The default value of the '{@link #getAgentId() <em>Agent Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getAgentId() + * @generated + * @ordered + */ + protected static final String AGENT_ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getAgentId() <em>Agent Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getAgentId() + * @generated + * @ordered + */ + protected String agentId = AGENT_ID_EDEFAULT; + + /** + * The default value of the '{@link #getSensorId() <em>Sensor Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSensorId() + * @generated + * @ordered + */ + protected static final String SENSOR_ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getSensorId() <em>Sensor Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSensorId() + * @generated + * @ordered + */ + protected String sensorId = SENSOR_ID_EDEFAULT; + + /** + * The default value of the '{@link #getAgentType() <em>Agent Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getAgentType() + * @generated + * @ordered + */ + protected static final String AGENT_TYPE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getAgentType() <em>Agent Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getAgentType() + * @generated + * @ordered + */ + protected String agentType = AGENT_TYPE_EDEFAULT; + + /** + * The default value of the '{@link #getSensorType() <em>Sensor Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSensorType() + * @generated + * @ordered + */ + protected static final String SENSOR_TYPE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getSensorType() <em>Sensor Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSensorType() + * @generated + * @ordered + */ + protected String sensorType = SENSOR_TYPE_EDEFAULT; + + /** + * The default value of the '{@link #getTimeStamp() <em>Time Stamp</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTimeStamp() + * @generated + * @ordered + */ + protected static final String TIME_STAMP_EDEFAULT = null; + + /** + * The cached value of the '{@link #getTimeStamp() <em>Time Stamp</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTimeStamp() + * @generated + * @ordered + */ + protected String timeStamp = TIME_STAMP_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected IPosRawdataEventImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return IPosDevKitPackage.Literals.IPOS_RAWDATA_EVENT; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getAgentId() { + return agentId; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setAgentId(String newAgentId) { + String oldAgentId = agentId; + agentId = newAgentId; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, IPosDevKitPackage.IPOS_RAWDATA_EVENT__AGENT_ID, + oldAgentId, agentId)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getSensorId() { + return sensorId; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setSensorId(String newSensorId) { + String oldSensorId = sensorId; + sensorId = newSensorId; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, IPosDevKitPackage.IPOS_RAWDATA_EVENT__SENSOR_ID, + oldSensorId, sensorId)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getAgentType() { + return agentType; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setAgentType(String newAgentType) { + String oldAgentType = agentType; + agentType = newAgentType; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, IPosDevKitPackage.IPOS_RAWDATA_EVENT__AGENT_TYPE, + oldAgentType, agentType)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getSensorType() { + return sensorType; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setSensorType(String newSensorType) { + String oldSensorType = sensorType; + sensorType = newSensorType; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, IPosDevKitPackage.IPOS_RAWDATA_EVENT__SENSOR_TYPE, + oldSensorType, sensorType)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getTimeStamp() { + return timeStamp; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setTimeStamp(String newTimeStamp) { + String oldTimeStamp = timeStamp; + timeStamp = newTimeStamp; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, IPosDevKitPackage.IPOS_RAWDATA_EVENT__TIME_STAMP, + oldTimeStamp, timeStamp)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case IPosDevKitPackage.IPOS_RAWDATA_EVENT__AGENT_ID: + return getAgentId(); + case IPosDevKitPackage.IPOS_RAWDATA_EVENT__SENSOR_ID: + return getSensorId(); + case IPosDevKitPackage.IPOS_RAWDATA_EVENT__AGENT_TYPE: + return getAgentType(); + case IPosDevKitPackage.IPOS_RAWDATA_EVENT__SENSOR_TYPE: + return getSensorType(); + case IPosDevKitPackage.IPOS_RAWDATA_EVENT__TIME_STAMP: + return getTimeStamp(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case IPosDevKitPackage.IPOS_RAWDATA_EVENT__AGENT_ID: + setAgentId((String) newValue); + return; + case IPosDevKitPackage.IPOS_RAWDATA_EVENT__SENSOR_ID: + setSensorId((String) newValue); + return; + case IPosDevKitPackage.IPOS_RAWDATA_EVENT__AGENT_TYPE: + setAgentType((String) newValue); + return; + case IPosDevKitPackage.IPOS_RAWDATA_EVENT__SENSOR_TYPE: + setSensorType((String) newValue); + return; + case IPosDevKitPackage.IPOS_RAWDATA_EVENT__TIME_STAMP: + setTimeStamp((String) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case IPosDevKitPackage.IPOS_RAWDATA_EVENT__AGENT_ID: + setAgentId(AGENT_ID_EDEFAULT); + return; + case IPosDevKitPackage.IPOS_RAWDATA_EVENT__SENSOR_ID: + setSensorId(SENSOR_ID_EDEFAULT); + return; + case IPosDevKitPackage.IPOS_RAWDATA_EVENT__AGENT_TYPE: + setAgentType(AGENT_TYPE_EDEFAULT); + return; + case IPosDevKitPackage.IPOS_RAWDATA_EVENT__SENSOR_TYPE: + setSensorType(SENSOR_TYPE_EDEFAULT); + return; + case IPosDevKitPackage.IPOS_RAWDATA_EVENT__TIME_STAMP: + setTimeStamp(TIME_STAMP_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case IPosDevKitPackage.IPOS_RAWDATA_EVENT__AGENT_ID: + return AGENT_ID_EDEFAULT == null ? agentId != null : !AGENT_ID_EDEFAULT.equals(agentId); + case IPosDevKitPackage.IPOS_RAWDATA_EVENT__SENSOR_ID: + return SENSOR_ID_EDEFAULT == null ? sensorId != null : !SENSOR_ID_EDEFAULT.equals(sensorId); + case IPosDevKitPackage.IPOS_RAWDATA_EVENT__AGENT_TYPE: + return AGENT_TYPE_EDEFAULT == null ? agentType != null : !AGENT_TYPE_EDEFAULT.equals(agentType); + case IPosDevKitPackage.IPOS_RAWDATA_EVENT__SENSOR_TYPE: + return SENSOR_TYPE_EDEFAULT == null ? sensorType != null : !SENSOR_TYPE_EDEFAULT.equals(sensorType); + case IPosDevKitPackage.IPOS_RAWDATA_EVENT__TIME_STAMP: + return TIME_STAMP_EDEFAULT == null ? timeStamp != null : !TIME_STAMP_EDEFAULT.equals(timeStamp); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (agentId: "); + result.append(agentId); + result.append(", sensorId: "); + result.append(sensorId); + result.append(", agentType: "); + result.append(agentType); + result.append(", sensorType: "); + result.append(sensorType); + result.append(", timeStamp: "); + result.append(timeStamp); + result.append(')'); + return result.toString(); + } + +} //IPosRawdataEventImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/IPosUWBEventImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/IPosUWBEventImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..a55e3ae9e44e4ab7b15f5ccda1f689680ddad4ac --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/IPosUWBEventImpl.java @@ -0,0 +1,37 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl; + +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosUWBEvent; + +import org.eclipse.emf.ecore.EClass; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>IPos UWB Event</b></em>'. + * <!-- end-user-doc --> + * + * @generated + */ +public class IPosUWBEventImpl extends IPosBeaconEventImpl implements IPosUWBEvent { + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected IPosUWBEventImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return IPosDevKitPackage.Literals.IPOS_UWB_EVENT; + } + +} //IPosUWBEventImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/IposMsgRcvEventImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/IposMsgRcvEventImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..b5a9fd00f5eba0a1e7d62ba4a3c0c35b74b339dc --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/IposMsgRcvEventImpl.java @@ -0,0 +1,623 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl; + +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposMsgRcvEvent; + +import ipos.project.DataModellntegration.iPos_Datamodel.Orientation; +import ipos.project.DataModellntegration.iPos_Datamodel.Position; +import ipos.project.DataModellntegration.iPos_Datamodel.ZoneDescriptor; + +import java.util.Collection; +import java.util.HashMap; +import java.util.LinkedList; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EObjectResolvingEList; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Ipos Msg Rcv Event</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IposMsgRcvEventImpl#getProtocolName <em>Protocol Name</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IposMsgRcvEventImpl#getSerializedMsg <em>Serialized Msg</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IposMsgRcvEventImpl#getLastPosUpdate <em>Last Pos Update</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IposMsgRcvEventImpl#getLastKnownPosition <em>Last Known Position</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IposMsgRcvEventImpl#getLastKnownOrientation <em>Last Known Orientation</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IposMsgRcvEventImpl#getLastKnownZonedescriptors <em>Last Known Zonedescriptors</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IposMsgRcvEventImpl#getAgentId <em>Agent Id</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IposMsgRcvEventImpl#getExtractedAttributes <em>Extracted Attributes</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IposMsgRcvEventImpl#getTimestamp <em>Timestamp</em>}</li> + * </ul> + * + * @generated + */ +public class IposMsgRcvEventImpl extends MinimalEObjectImpl.Container implements IposMsgRcvEvent { + /** + * The default value of the '{@link #getProtocolName() <em>Protocol Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getProtocolName() + * @generated + * @ordered + */ + protected static final String PROTOCOL_NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getProtocolName() <em>Protocol Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getProtocolName() + * @generated + * @ordered + */ + protected String protocolName = PROTOCOL_NAME_EDEFAULT; + + /** + * The default value of the '{@link #getSerializedMsg() <em>Serialized Msg</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSerializedMsg() + * @generated + * @ordered + */ + protected static final byte[] SERIALIZED_MSG_EDEFAULT = null; + + /** + * The cached value of the '{@link #getSerializedMsg() <em>Serialized Msg</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSerializedMsg() + * @generated + * @ordered + */ + protected byte[] serializedMsg = SERIALIZED_MSG_EDEFAULT; + + /** + * The default value of the '{@link #getLastPosUpdate() <em>Last Pos Update</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getLastPosUpdate() + * @generated + * @ordered + */ + protected static final String LAST_POS_UPDATE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getLastPosUpdate() <em>Last Pos Update</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getLastPosUpdate() + * @generated + * @ordered + */ + protected String lastPosUpdate = LAST_POS_UPDATE_EDEFAULT; + + /** + * The cached value of the '{@link #getLastKnownPosition() <em>Last Known Position</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getLastKnownPosition() + * @generated + * @ordered + */ + protected Position lastKnownPosition; + + /** + * The cached value of the '{@link #getLastKnownOrientation() <em>Last Known Orientation</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getLastKnownOrientation() + * @generated + * @ordered + */ + protected Orientation lastKnownOrientation; + + /** + * The cached value of the '{@link #getLastKnownZonedescriptors() <em>Last Known Zonedescriptors</em>}' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getLastKnownZonedescriptors() + * @generated + * @ordered + */ + protected EList<ZoneDescriptor> lastKnownZonedescriptors; + + /** + * The default value of the '{@link #getAgentId() <em>Agent Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getAgentId() + * @generated + * @ordered + */ + protected static final String AGENT_ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getAgentId() <em>Agent Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getAgentId() + * @generated + * @ordered + */ + protected String agentId = AGENT_ID_EDEFAULT; + + /** + * The default value of the '{@link #getExtractedAttributes() <em>Extracted Attributes</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getExtractedAttributes() + * @generated + * @ordered + */ + protected static final LinkedList<HashMap<String, String>> EXTRACTED_ATTRIBUTES_EDEFAULT = null; + + /** + * The cached value of the '{@link #getExtractedAttributes() <em>Extracted Attributes</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getExtractedAttributes() + * @generated + * @ordered + */ + protected LinkedList<HashMap<String, String>> extractedAttributes = EXTRACTED_ATTRIBUTES_EDEFAULT; + + /** + * The default value of the '{@link #getTimestamp() <em>Timestamp</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTimestamp() + * @generated + * @ordered + */ + protected static final String TIMESTAMP_EDEFAULT = null; + + /** + * The cached value of the '{@link #getTimestamp() <em>Timestamp</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTimestamp() + * @generated + * @ordered + */ + protected String timestamp = TIMESTAMP_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected IposMsgRcvEventImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return IPosDevKitPackage.Literals.IPOS_MSG_RCV_EVENT; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getProtocolName() { + return protocolName; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setProtocolName(String newProtocolName) { + String oldProtocolName = protocolName; + protocolName = newProtocolName; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, IPosDevKitPackage.IPOS_MSG_RCV_EVENT__PROTOCOL_NAME, + oldProtocolName, protocolName)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public byte[] getSerializedMsg() { + return serializedMsg; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setSerializedMsg(byte[] newSerializedMsg) { + byte[] oldSerializedMsg = serializedMsg; + serializedMsg = newSerializedMsg; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, IPosDevKitPackage.IPOS_MSG_RCV_EVENT__SERIALIZED_MSG, + oldSerializedMsg, serializedMsg)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getLastPosUpdate() { + return lastPosUpdate; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setLastPosUpdate(String newLastPosUpdate) { + String oldLastPosUpdate = lastPosUpdate; + lastPosUpdate = newLastPosUpdate; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, IPosDevKitPackage.IPOS_MSG_RCV_EVENT__LAST_POS_UPDATE, + oldLastPosUpdate, lastPosUpdate)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Position getLastKnownPosition() { + if (lastKnownPosition != null && lastKnownPosition.eIsProxy()) { + InternalEObject oldLastKnownPosition = (InternalEObject) lastKnownPosition; + lastKnownPosition = (Position) eResolveProxy(oldLastKnownPosition); + if (lastKnownPosition != oldLastKnownPosition) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, + IPosDevKitPackage.IPOS_MSG_RCV_EVENT__LAST_KNOWN_POSITION, oldLastKnownPosition, + lastKnownPosition)); + } + } + return lastKnownPosition; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Position basicGetLastKnownPosition() { + return lastKnownPosition; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setLastKnownPosition(Position newLastKnownPosition) { + Position oldLastKnownPosition = lastKnownPosition; + lastKnownPosition = newLastKnownPosition; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, + IPosDevKitPackage.IPOS_MSG_RCV_EVENT__LAST_KNOWN_POSITION, oldLastKnownPosition, + lastKnownPosition)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Orientation getLastKnownOrientation() { + if (lastKnownOrientation != null && lastKnownOrientation.eIsProxy()) { + InternalEObject oldLastKnownOrientation = (InternalEObject) lastKnownOrientation; + lastKnownOrientation = (Orientation) eResolveProxy(oldLastKnownOrientation); + if (lastKnownOrientation != oldLastKnownOrientation) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, + IPosDevKitPackage.IPOS_MSG_RCV_EVENT__LAST_KNOWN_ORIENTATION, oldLastKnownOrientation, + lastKnownOrientation)); + } + } + return lastKnownOrientation; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Orientation basicGetLastKnownOrientation() { + return lastKnownOrientation; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setLastKnownOrientation(Orientation newLastKnownOrientation) { + Orientation oldLastKnownOrientation = lastKnownOrientation; + lastKnownOrientation = newLastKnownOrientation; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, + IPosDevKitPackage.IPOS_MSG_RCV_EVENT__LAST_KNOWN_ORIENTATION, oldLastKnownOrientation, + lastKnownOrientation)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EList<ZoneDescriptor> getLastKnownZonedescriptors() { + if (lastKnownZonedescriptors == null) { + lastKnownZonedescriptors = new EObjectResolvingEList<ZoneDescriptor>(ZoneDescriptor.class, this, + IPosDevKitPackage.IPOS_MSG_RCV_EVENT__LAST_KNOWN_ZONEDESCRIPTORS); + } + return lastKnownZonedescriptors; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getAgentId() { + return agentId; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setAgentId(String newAgentId) { + String oldAgentId = agentId; + agentId = newAgentId; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, IPosDevKitPackage.IPOS_MSG_RCV_EVENT__AGENT_ID, + oldAgentId, agentId)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public LinkedList<HashMap<String, String>> getExtractedAttributes() { + return extractedAttributes; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setExtractedAttributes(LinkedList<HashMap<String, String>> newExtractedAttributes) { + LinkedList<HashMap<String, String>> oldExtractedAttributes = extractedAttributes; + extractedAttributes = newExtractedAttributes; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, + IPosDevKitPackage.IPOS_MSG_RCV_EVENT__EXTRACTED_ATTRIBUTES, oldExtractedAttributes, + extractedAttributes)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getTimestamp() { + return timestamp; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setTimestamp(String newTimestamp) { + String oldTimestamp = timestamp; + timestamp = newTimestamp; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, IPosDevKitPackage.IPOS_MSG_RCV_EVENT__TIMESTAMP, + oldTimestamp, timestamp)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case IPosDevKitPackage.IPOS_MSG_RCV_EVENT__PROTOCOL_NAME: + return getProtocolName(); + case IPosDevKitPackage.IPOS_MSG_RCV_EVENT__SERIALIZED_MSG: + return getSerializedMsg(); + case IPosDevKitPackage.IPOS_MSG_RCV_EVENT__LAST_POS_UPDATE: + return getLastPosUpdate(); + case IPosDevKitPackage.IPOS_MSG_RCV_EVENT__LAST_KNOWN_POSITION: + if (resolve) + return getLastKnownPosition(); + return basicGetLastKnownPosition(); + case IPosDevKitPackage.IPOS_MSG_RCV_EVENT__LAST_KNOWN_ORIENTATION: + if (resolve) + return getLastKnownOrientation(); + return basicGetLastKnownOrientation(); + case IPosDevKitPackage.IPOS_MSG_RCV_EVENT__LAST_KNOWN_ZONEDESCRIPTORS: + return getLastKnownZonedescriptors(); + case IPosDevKitPackage.IPOS_MSG_RCV_EVENT__AGENT_ID: + return getAgentId(); + case IPosDevKitPackage.IPOS_MSG_RCV_EVENT__EXTRACTED_ATTRIBUTES: + return getExtractedAttributes(); + case IPosDevKitPackage.IPOS_MSG_RCV_EVENT__TIMESTAMP: + return getTimestamp(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case IPosDevKitPackage.IPOS_MSG_RCV_EVENT__PROTOCOL_NAME: + setProtocolName((String) newValue); + return; + case IPosDevKitPackage.IPOS_MSG_RCV_EVENT__SERIALIZED_MSG: + setSerializedMsg((byte[]) newValue); + return; + case IPosDevKitPackage.IPOS_MSG_RCV_EVENT__LAST_POS_UPDATE: + setLastPosUpdate((String) newValue); + return; + case IPosDevKitPackage.IPOS_MSG_RCV_EVENT__LAST_KNOWN_POSITION: + setLastKnownPosition((Position) newValue); + return; + case IPosDevKitPackage.IPOS_MSG_RCV_EVENT__LAST_KNOWN_ORIENTATION: + setLastKnownOrientation((Orientation) newValue); + return; + case IPosDevKitPackage.IPOS_MSG_RCV_EVENT__LAST_KNOWN_ZONEDESCRIPTORS: + getLastKnownZonedescriptors().clear(); + getLastKnownZonedescriptors().addAll((Collection<? extends ZoneDescriptor>) newValue); + return; + case IPosDevKitPackage.IPOS_MSG_RCV_EVENT__AGENT_ID: + setAgentId((String) newValue); + return; + case IPosDevKitPackage.IPOS_MSG_RCV_EVENT__EXTRACTED_ATTRIBUTES: + setExtractedAttributes((LinkedList<HashMap<String, String>>) newValue); + return; + case IPosDevKitPackage.IPOS_MSG_RCV_EVENT__TIMESTAMP: + setTimestamp((String) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case IPosDevKitPackage.IPOS_MSG_RCV_EVENT__PROTOCOL_NAME: + setProtocolName(PROTOCOL_NAME_EDEFAULT); + return; + case IPosDevKitPackage.IPOS_MSG_RCV_EVENT__SERIALIZED_MSG: + setSerializedMsg(SERIALIZED_MSG_EDEFAULT); + return; + case IPosDevKitPackage.IPOS_MSG_RCV_EVENT__LAST_POS_UPDATE: + setLastPosUpdate(LAST_POS_UPDATE_EDEFAULT); + return; + case IPosDevKitPackage.IPOS_MSG_RCV_EVENT__LAST_KNOWN_POSITION: + setLastKnownPosition((Position) null); + return; + case IPosDevKitPackage.IPOS_MSG_RCV_EVENT__LAST_KNOWN_ORIENTATION: + setLastKnownOrientation((Orientation) null); + return; + case IPosDevKitPackage.IPOS_MSG_RCV_EVENT__LAST_KNOWN_ZONEDESCRIPTORS: + getLastKnownZonedescriptors().clear(); + return; + case IPosDevKitPackage.IPOS_MSG_RCV_EVENT__AGENT_ID: + setAgentId(AGENT_ID_EDEFAULT); + return; + case IPosDevKitPackage.IPOS_MSG_RCV_EVENT__EXTRACTED_ATTRIBUTES: + setExtractedAttributes(EXTRACTED_ATTRIBUTES_EDEFAULT); + return; + case IPosDevKitPackage.IPOS_MSG_RCV_EVENT__TIMESTAMP: + setTimestamp(TIMESTAMP_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case IPosDevKitPackage.IPOS_MSG_RCV_EVENT__PROTOCOL_NAME: + return PROTOCOL_NAME_EDEFAULT == null ? protocolName != null : !PROTOCOL_NAME_EDEFAULT.equals(protocolName); + case IPosDevKitPackage.IPOS_MSG_RCV_EVENT__SERIALIZED_MSG: + return SERIALIZED_MSG_EDEFAULT == null ? serializedMsg != null + : !SERIALIZED_MSG_EDEFAULT.equals(serializedMsg); + case IPosDevKitPackage.IPOS_MSG_RCV_EVENT__LAST_POS_UPDATE: + return LAST_POS_UPDATE_EDEFAULT == null ? lastPosUpdate != null + : !LAST_POS_UPDATE_EDEFAULT.equals(lastPosUpdate); + case IPosDevKitPackage.IPOS_MSG_RCV_EVENT__LAST_KNOWN_POSITION: + return lastKnownPosition != null; + case IPosDevKitPackage.IPOS_MSG_RCV_EVENT__LAST_KNOWN_ORIENTATION: + return lastKnownOrientation != null; + case IPosDevKitPackage.IPOS_MSG_RCV_EVENT__LAST_KNOWN_ZONEDESCRIPTORS: + return lastKnownZonedescriptors != null && !lastKnownZonedescriptors.isEmpty(); + case IPosDevKitPackage.IPOS_MSG_RCV_EVENT__AGENT_ID: + return AGENT_ID_EDEFAULT == null ? agentId != null : !AGENT_ID_EDEFAULT.equals(agentId); + case IPosDevKitPackage.IPOS_MSG_RCV_EVENT__EXTRACTED_ATTRIBUTES: + return EXTRACTED_ATTRIBUTES_EDEFAULT == null ? extractedAttributes != null + : !EXTRACTED_ATTRIBUTES_EDEFAULT.equals(extractedAttributes); + case IPosDevKitPackage.IPOS_MSG_RCV_EVENT__TIMESTAMP: + return TIMESTAMP_EDEFAULT == null ? timestamp != null : !TIMESTAMP_EDEFAULT.equals(timestamp); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (protocolName: "); + result.append(protocolName); + result.append(", serializedMsg: "); + result.append(serializedMsg); + result.append(", lastPosUpdate: "); + result.append(lastPosUpdate); + result.append(", agentId: "); + result.append(agentId); + result.append(", extractedAttributes: "); + result.append(extractedAttributes); + result.append(", timestamp: "); + result.append(timestamp); + result.append(')'); + return result.toString(); + } + +} //IposMsgRcvEventImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/IposPositionEventImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/IposPositionEventImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..6d1acc48cacde1684402f27c004c67049a4a2c60 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/IposPositionEventImpl.java @@ -0,0 +1,559 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl; + +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposPositionEvent; + +import ipos.project.DataModellntegration.iPos_Datamodel.Orientation; +import ipos.project.DataModellntegration.iPos_Datamodel.Position; +import ipos.project.DataModellntegration.iPos_Datamodel.ZoneDescriptor; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EObjectResolvingEList; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Ipos Position Event</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IposPositionEventImpl#getAgentId <em>Agent Id</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IposPositionEventImpl#getSensorId <em>Sensor Id</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IposPositionEventImpl#getType <em>Type</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IposPositionEventImpl#getSensorType <em>Sensor Type</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IposPositionEventImpl#getLastPosUpdate <em>Last Pos Update</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IposPositionEventImpl#getPosition <em>Position</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IposPositionEventImpl#getOrientation <em>Orientation</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IposPositionEventImpl#getZoneDescriptors <em>Zone Descriptors</em>}</li> + * </ul> + * + * @generated + */ +public class IposPositionEventImpl extends MinimalEObjectImpl.Container implements IposPositionEvent { + /** + * The default value of the '{@link #getAgentId() <em>Agent Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getAgentId() + * @generated + * @ordered + */ + protected static final String AGENT_ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getAgentId() <em>Agent Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getAgentId() + * @generated + * @ordered + */ + protected String agentId = AGENT_ID_EDEFAULT; + + /** + * The default value of the '{@link #getSensorId() <em>Sensor Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSensorId() + * @generated + * @ordered + */ + protected static final String SENSOR_ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getSensorId() <em>Sensor Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSensorId() + * @generated + * @ordered + */ + protected String sensorId = SENSOR_ID_EDEFAULT; + + /** + * The default value of the '{@link #getType() <em>Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getType() + * @generated + * @ordered + */ + protected static final String TYPE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getType() <em>Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getType() + * @generated + * @ordered + */ + protected String type = TYPE_EDEFAULT; + + /** + * The default value of the '{@link #getSensorType() <em>Sensor Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSensorType() + * @generated + * @ordered + */ + protected static final String SENSOR_TYPE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getSensorType() <em>Sensor Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSensorType() + * @generated + * @ordered + */ + protected String sensorType = SENSOR_TYPE_EDEFAULT; + + /** + * The default value of the '{@link #getLastPosUpdate() <em>Last Pos Update</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getLastPosUpdate() + * @generated + * @ordered + */ + protected static final String LAST_POS_UPDATE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getLastPosUpdate() <em>Last Pos Update</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getLastPosUpdate() + * @generated + * @ordered + */ + protected String lastPosUpdate = LAST_POS_UPDATE_EDEFAULT; + + /** + * The cached value of the '{@link #getPosition() <em>Position</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPosition() + * @generated + * @ordered + */ + protected Position position; + + /** + * The cached value of the '{@link #getOrientation() <em>Orientation</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getOrientation() + * @generated + * @ordered + */ + protected Orientation orientation; + + /** + * The cached value of the '{@link #getZoneDescriptors() <em>Zone Descriptors</em>}' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getZoneDescriptors() + * @generated + * @ordered + */ + protected EList<ZoneDescriptor> zoneDescriptors; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected IposPositionEventImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return IPosDevKitPackage.Literals.IPOS_POSITION_EVENT; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getAgentId() { + return agentId; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setAgentId(String newAgentId) { + String oldAgentId = agentId; + agentId = newAgentId; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, IPosDevKitPackage.IPOS_POSITION_EVENT__AGENT_ID, + oldAgentId, agentId)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getSensorId() { + return sensorId; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setSensorId(String newSensorId) { + String oldSensorId = sensorId; + sensorId = newSensorId; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, IPosDevKitPackage.IPOS_POSITION_EVENT__SENSOR_ID, + oldSensorId, sensorId)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getType() { + return type; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setType(String newType) { + String oldType = type; + type = newType; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, IPosDevKitPackage.IPOS_POSITION_EVENT__TYPE, oldType, + type)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getSensorType() { + return sensorType; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setSensorType(String newSensorType) { + String oldSensorType = sensorType; + sensorType = newSensorType; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, IPosDevKitPackage.IPOS_POSITION_EVENT__SENSOR_TYPE, + oldSensorType, sensorType)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getLastPosUpdate() { + return lastPosUpdate; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setLastPosUpdate(String newLastPosUpdate) { + String oldLastPosUpdate = lastPosUpdate; + lastPosUpdate = newLastPosUpdate; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, + IPosDevKitPackage.IPOS_POSITION_EVENT__LAST_POS_UPDATE, oldLastPosUpdate, lastPosUpdate)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Position getPosition() { + if (position != null && position.eIsProxy()) { + InternalEObject oldPosition = (InternalEObject) position; + position = (Position) eResolveProxy(oldPosition); + if (position != oldPosition) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, + IPosDevKitPackage.IPOS_POSITION_EVENT__POSITION, oldPosition, position)); + } + } + return position; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Position basicGetPosition() { + return position; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setPosition(Position newPosition) { + Position oldPosition = position; + position = newPosition; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, IPosDevKitPackage.IPOS_POSITION_EVENT__POSITION, + oldPosition, position)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Orientation getOrientation() { + if (orientation != null && orientation.eIsProxy()) { + InternalEObject oldOrientation = (InternalEObject) orientation; + orientation = (Orientation) eResolveProxy(oldOrientation); + if (orientation != oldOrientation) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, + IPosDevKitPackage.IPOS_POSITION_EVENT__ORIENTATION, oldOrientation, orientation)); + } + } + return orientation; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Orientation basicGetOrientation() { + return orientation; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setOrientation(Orientation newOrientation) { + Orientation oldOrientation = orientation; + orientation = newOrientation; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, IPosDevKitPackage.IPOS_POSITION_EVENT__ORIENTATION, + oldOrientation, orientation)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EList<ZoneDescriptor> getZoneDescriptors() { + if (zoneDescriptors == null) { + zoneDescriptors = new EObjectResolvingEList<ZoneDescriptor>(ZoneDescriptor.class, this, + IPosDevKitPackage.IPOS_POSITION_EVENT__ZONE_DESCRIPTORS); + } + return zoneDescriptors; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case IPosDevKitPackage.IPOS_POSITION_EVENT__AGENT_ID: + return getAgentId(); + case IPosDevKitPackage.IPOS_POSITION_EVENT__SENSOR_ID: + return getSensorId(); + case IPosDevKitPackage.IPOS_POSITION_EVENT__TYPE: + return getType(); + case IPosDevKitPackage.IPOS_POSITION_EVENT__SENSOR_TYPE: + return getSensorType(); + case IPosDevKitPackage.IPOS_POSITION_EVENT__LAST_POS_UPDATE: + return getLastPosUpdate(); + case IPosDevKitPackage.IPOS_POSITION_EVENT__POSITION: + if (resolve) + return getPosition(); + return basicGetPosition(); + case IPosDevKitPackage.IPOS_POSITION_EVENT__ORIENTATION: + if (resolve) + return getOrientation(); + return basicGetOrientation(); + case IPosDevKitPackage.IPOS_POSITION_EVENT__ZONE_DESCRIPTORS: + return getZoneDescriptors(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case IPosDevKitPackage.IPOS_POSITION_EVENT__AGENT_ID: + setAgentId((String) newValue); + return; + case IPosDevKitPackage.IPOS_POSITION_EVENT__SENSOR_ID: + setSensorId((String) newValue); + return; + case IPosDevKitPackage.IPOS_POSITION_EVENT__TYPE: + setType((String) newValue); + return; + case IPosDevKitPackage.IPOS_POSITION_EVENT__SENSOR_TYPE: + setSensorType((String) newValue); + return; + case IPosDevKitPackage.IPOS_POSITION_EVENT__LAST_POS_UPDATE: + setLastPosUpdate((String) newValue); + return; + case IPosDevKitPackage.IPOS_POSITION_EVENT__POSITION: + setPosition((Position) newValue); + return; + case IPosDevKitPackage.IPOS_POSITION_EVENT__ORIENTATION: + setOrientation((Orientation) newValue); + return; + case IPosDevKitPackage.IPOS_POSITION_EVENT__ZONE_DESCRIPTORS: + getZoneDescriptors().clear(); + getZoneDescriptors().addAll((Collection<? extends ZoneDescriptor>) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case IPosDevKitPackage.IPOS_POSITION_EVENT__AGENT_ID: + setAgentId(AGENT_ID_EDEFAULT); + return; + case IPosDevKitPackage.IPOS_POSITION_EVENT__SENSOR_ID: + setSensorId(SENSOR_ID_EDEFAULT); + return; + case IPosDevKitPackage.IPOS_POSITION_EVENT__TYPE: + setType(TYPE_EDEFAULT); + return; + case IPosDevKitPackage.IPOS_POSITION_EVENT__SENSOR_TYPE: + setSensorType(SENSOR_TYPE_EDEFAULT); + return; + case IPosDevKitPackage.IPOS_POSITION_EVENT__LAST_POS_UPDATE: + setLastPosUpdate(LAST_POS_UPDATE_EDEFAULT); + return; + case IPosDevKitPackage.IPOS_POSITION_EVENT__POSITION: + setPosition((Position) null); + return; + case IPosDevKitPackage.IPOS_POSITION_EVENT__ORIENTATION: + setOrientation((Orientation) null); + return; + case IPosDevKitPackage.IPOS_POSITION_EVENT__ZONE_DESCRIPTORS: + getZoneDescriptors().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case IPosDevKitPackage.IPOS_POSITION_EVENT__AGENT_ID: + return AGENT_ID_EDEFAULT == null ? agentId != null : !AGENT_ID_EDEFAULT.equals(agentId); + case IPosDevKitPackage.IPOS_POSITION_EVENT__SENSOR_ID: + return SENSOR_ID_EDEFAULT == null ? sensorId != null : !SENSOR_ID_EDEFAULT.equals(sensorId); + case IPosDevKitPackage.IPOS_POSITION_EVENT__TYPE: + return TYPE_EDEFAULT == null ? type != null : !TYPE_EDEFAULT.equals(type); + case IPosDevKitPackage.IPOS_POSITION_EVENT__SENSOR_TYPE: + return SENSOR_TYPE_EDEFAULT == null ? sensorType != null : !SENSOR_TYPE_EDEFAULT.equals(sensorType); + case IPosDevKitPackage.IPOS_POSITION_EVENT__LAST_POS_UPDATE: + return LAST_POS_UPDATE_EDEFAULT == null ? lastPosUpdate != null + : !LAST_POS_UPDATE_EDEFAULT.equals(lastPosUpdate); + case IPosDevKitPackage.IPOS_POSITION_EVENT__POSITION: + return position != null; + case IPosDevKitPackage.IPOS_POSITION_EVENT__ORIENTATION: + return orientation != null; + case IPosDevKitPackage.IPOS_POSITION_EVENT__ZONE_DESCRIPTORS: + return zoneDescriptors != null && !zoneDescriptors.isEmpty(); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (agentId: "); + result.append(agentId); + result.append(", sensorId: "); + result.append(sensorId); + result.append(", type: "); + result.append(type); + result.append(", sensorType: "); + result.append(sensorType); + result.append(", lastPosUpdate: "); + result.append(lastPosUpdate); + result.append(')'); + return result.toString(); + } + +} //IposPositionEventImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/MonitoringRequestImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/MonitoringRequestImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..0c409197c478a5f3200941c073ad3a3d2071410f --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/MonitoringRequestImpl.java @@ -0,0 +1,776 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl; + +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest; + +import java.util.List; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Monitoring Request</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.MonitoringRequestImpl#getFrameIds <em>Frame Ids</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.MonitoringRequestImpl#getDelta <em>Delta</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.MonitoringRequestImpl#getUpdateFrequency <em>Update Frequency</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.MonitoringRequestImpl#getType <em>Type</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.MonitoringRequestImpl#getId <em>Id</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.MonitoringRequestImpl#getFusionStrategy <em>Fusion Strategy</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.MonitoringRequestImpl#isExitNotification <em>Exit Notification</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.MonitoringRequestImpl#getProperties <em>Properties</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.MonitoringRequestImpl#getMonitoringTaskId <em>Monitoring Task Id</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.MonitoringRequestImpl#getRequestorProtocol <em>Requestor Protocol</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.MonitoringRequestImpl#getSerializationType <em>Serialization Type</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.MonitoringRequestImpl#getRefSystemId <em>Ref System Id</em>}</li> + * </ul> + * + * @generated + */ +public class MonitoringRequestImpl extends MinimalEObjectImpl.Container implements MonitoringRequest { + /** + * The default value of the '{@link #getFrameIds() <em>Frame Ids</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getFrameIds() + * @generated + * @ordered + */ + protected static final List<String> FRAME_IDS_EDEFAULT = null; + + /** + * The cached value of the '{@link #getFrameIds() <em>Frame Ids</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getFrameIds() + * @generated + * @ordered + */ + protected List<String> frameIds = FRAME_IDS_EDEFAULT; + + /** + * The default value of the '{@link #getDelta() <em>Delta</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDelta() + * @generated + * @ordered + */ + protected static final float DELTA_EDEFAULT = 0.0F; + + /** + * The cached value of the '{@link #getDelta() <em>Delta</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDelta() + * @generated + * @ordered + */ + protected float delta = DELTA_EDEFAULT; + + /** + * The default value of the '{@link #getUpdateFrequency() <em>Update Frequency</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getUpdateFrequency() + * @generated + * @ordered + */ + protected static final float UPDATE_FREQUENCY_EDEFAULT = 0.0F; + + /** + * The cached value of the '{@link #getUpdateFrequency() <em>Update Frequency</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getUpdateFrequency() + * @generated + * @ordered + */ + protected float updateFrequency = UPDATE_FREQUENCY_EDEFAULT; + + /** + * The default value of the '{@link #getType() <em>Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getType() + * @generated + * @ordered + */ + protected static final List<String> TYPE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getType() <em>Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getType() + * @generated + * @ordered + */ + protected List<String> type = TYPE_EDEFAULT; + + /** + * The default value of the '{@link #getId() <em>Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getId() + * @generated + * @ordered + */ + protected static final List<String> ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getId() <em>Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getId() + * @generated + * @ordered + */ + protected List<String> id = ID_EDEFAULT; + + /** + * The default value of the '{@link #getFusionStrategy() <em>Fusion Strategy</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getFusionStrategy() + * @generated + * @ordered + */ + protected static final String FUSION_STRATEGY_EDEFAULT = null; + + /** + * The cached value of the '{@link #getFusionStrategy() <em>Fusion Strategy</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getFusionStrategy() + * @generated + * @ordered + */ + protected String fusionStrategy = FUSION_STRATEGY_EDEFAULT; + + /** + * The default value of the '{@link #isExitNotification() <em>Exit Notification</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isExitNotification() + * @generated + * @ordered + */ + protected static final boolean EXIT_NOTIFICATION_EDEFAULT = false; + + /** + * The cached value of the '{@link #isExitNotification() <em>Exit Notification</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #isExitNotification() + * @generated + * @ordered + */ + protected boolean exitNotification = EXIT_NOTIFICATION_EDEFAULT; + + /** + * The default value of the '{@link #getProperties() <em>Properties</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getProperties() + * @generated + * @ordered + */ + protected static final List<String> PROPERTIES_EDEFAULT = null; + + /** + * The cached value of the '{@link #getProperties() <em>Properties</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getProperties() + * @generated + * @ordered + */ + protected List<String> properties = PROPERTIES_EDEFAULT; + + /** + * The default value of the '{@link #getMonitoringTaskId() <em>Monitoring Task Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMonitoringTaskId() + * @generated + * @ordered + */ + protected static final String MONITORING_TASK_ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getMonitoringTaskId() <em>Monitoring Task Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMonitoringTaskId() + * @generated + * @ordered + */ + protected String monitoringTaskId = MONITORING_TASK_ID_EDEFAULT; + + /** + * The default value of the '{@link #getRequestorProtocol() <em>Requestor Protocol</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRequestorProtocol() + * @generated + * @ordered + */ + protected static final String REQUESTOR_PROTOCOL_EDEFAULT = null; + + /** + * The cached value of the '{@link #getRequestorProtocol() <em>Requestor Protocol</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRequestorProtocol() + * @generated + * @ordered + */ + protected String requestorProtocol = REQUESTOR_PROTOCOL_EDEFAULT; + + /** + * The default value of the '{@link #getSerializationType() <em>Serialization Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSerializationType() + * @generated + * @ordered + */ + protected static final String SERIALIZATION_TYPE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getSerializationType() <em>Serialization Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSerializationType() + * @generated + * @ordered + */ + protected String serializationType = SERIALIZATION_TYPE_EDEFAULT; + + /** + * The default value of the '{@link #getRefSystemId() <em>Ref System Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRefSystemId() + * @generated + * @ordered + */ + protected static final String REF_SYSTEM_ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getRefSystemId() <em>Ref System Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRefSystemId() + * @generated + * @ordered + */ + protected String refSystemId = REF_SYSTEM_ID_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected MonitoringRequestImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return IPosDevKitPackage.Literals.MONITORING_REQUEST; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public List<String> getFrameIds() { + return frameIds; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setFrameIds(List<String> newFrameIds) { + List<String> oldFrameIds = frameIds; + frameIds = newFrameIds; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, IPosDevKitPackage.MONITORING_REQUEST__FRAME_IDS, + oldFrameIds, frameIds)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public float getDelta() { + return delta; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setDelta(float newDelta) { + float oldDelta = delta; + delta = newDelta; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, IPosDevKitPackage.MONITORING_REQUEST__DELTA, oldDelta, + delta)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public float getUpdateFrequency() { + return updateFrequency; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setUpdateFrequency(float newUpdateFrequency) { + float oldUpdateFrequency = updateFrequency; + updateFrequency = newUpdateFrequency; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, + IPosDevKitPackage.MONITORING_REQUEST__UPDATE_FREQUENCY, oldUpdateFrequency, updateFrequency)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public List<String> getType() { + return type; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setType(List<String> newType) { + List<String> oldType = type; + type = newType; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, IPosDevKitPackage.MONITORING_REQUEST__TYPE, oldType, + type)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public List<String> getId() { + return id; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setId(List<String> newId) { + List<String> oldId = id; + id = newId; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, IPosDevKitPackage.MONITORING_REQUEST__ID, oldId, id)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getFusionStrategy() { + return fusionStrategy; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setFusionStrategy(String newFusionStrategy) { + String oldFusionStrategy = fusionStrategy; + fusionStrategy = newFusionStrategy; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, IPosDevKitPackage.MONITORING_REQUEST__FUSION_STRATEGY, + oldFusionStrategy, fusionStrategy)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public boolean isExitNotification() { + return exitNotification; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setExitNotification(boolean newExitNotification) { + boolean oldExitNotification = exitNotification; + exitNotification = newExitNotification; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, + IPosDevKitPackage.MONITORING_REQUEST__EXIT_NOTIFICATION, oldExitNotification, exitNotification)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public List<String> getProperties() { + return properties; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setProperties(List<String> newProperties) { + List<String> oldProperties = properties; + properties = newProperties; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, IPosDevKitPackage.MONITORING_REQUEST__PROPERTIES, + oldProperties, properties)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getMonitoringTaskId() { + return monitoringTaskId; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setMonitoringTaskId(String newMonitoringTaskId) { + String oldMonitoringTaskId = monitoringTaskId; + monitoringTaskId = newMonitoringTaskId; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, + IPosDevKitPackage.MONITORING_REQUEST__MONITORING_TASK_ID, oldMonitoringTaskId, monitoringTaskId)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getRequestorProtocol() { + return requestorProtocol; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setRequestorProtocol(String newRequestorProtocol) { + String oldRequestorProtocol = requestorProtocol; + requestorProtocol = newRequestorProtocol; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, + IPosDevKitPackage.MONITORING_REQUEST__REQUESTOR_PROTOCOL, oldRequestorProtocol, requestorProtocol)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getSerializationType() { + return serializationType; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setSerializationType(String newSerializationType) { + String oldSerializationType = serializationType; + serializationType = newSerializationType; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, + IPosDevKitPackage.MONITORING_REQUEST__SERIALIZATION_TYPE, oldSerializationType, serializationType)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getRefSystemId() { + return refSystemId; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setRefSystemId(String newRefSystemId) { + String oldRefSystemId = refSystemId; + refSystemId = newRefSystemId; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, IPosDevKitPackage.MONITORING_REQUEST__REF_SYSTEM_ID, + oldRefSystemId, refSystemId)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case IPosDevKitPackage.MONITORING_REQUEST__FRAME_IDS: + return getFrameIds(); + case IPosDevKitPackage.MONITORING_REQUEST__DELTA: + return getDelta(); + case IPosDevKitPackage.MONITORING_REQUEST__UPDATE_FREQUENCY: + return getUpdateFrequency(); + case IPosDevKitPackage.MONITORING_REQUEST__TYPE: + return getType(); + case IPosDevKitPackage.MONITORING_REQUEST__ID: + return getId(); + case IPosDevKitPackage.MONITORING_REQUEST__FUSION_STRATEGY: + return getFusionStrategy(); + case IPosDevKitPackage.MONITORING_REQUEST__EXIT_NOTIFICATION: + return isExitNotification(); + case IPosDevKitPackage.MONITORING_REQUEST__PROPERTIES: + return getProperties(); + case IPosDevKitPackage.MONITORING_REQUEST__MONITORING_TASK_ID: + return getMonitoringTaskId(); + case IPosDevKitPackage.MONITORING_REQUEST__REQUESTOR_PROTOCOL: + return getRequestorProtocol(); + case IPosDevKitPackage.MONITORING_REQUEST__SERIALIZATION_TYPE: + return getSerializationType(); + case IPosDevKitPackage.MONITORING_REQUEST__REF_SYSTEM_ID: + return getRefSystemId(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case IPosDevKitPackage.MONITORING_REQUEST__FRAME_IDS: + setFrameIds((List<String>) newValue); + return; + case IPosDevKitPackage.MONITORING_REQUEST__DELTA: + setDelta((Float) newValue); + return; + case IPosDevKitPackage.MONITORING_REQUEST__UPDATE_FREQUENCY: + setUpdateFrequency((Float) newValue); + return; + case IPosDevKitPackage.MONITORING_REQUEST__TYPE: + setType((List<String>) newValue); + return; + case IPosDevKitPackage.MONITORING_REQUEST__ID: + setId((List<String>) newValue); + return; + case IPosDevKitPackage.MONITORING_REQUEST__FUSION_STRATEGY: + setFusionStrategy((String) newValue); + return; + case IPosDevKitPackage.MONITORING_REQUEST__EXIT_NOTIFICATION: + setExitNotification((Boolean) newValue); + return; + case IPosDevKitPackage.MONITORING_REQUEST__PROPERTIES: + setProperties((List<String>) newValue); + return; + case IPosDevKitPackage.MONITORING_REQUEST__MONITORING_TASK_ID: + setMonitoringTaskId((String) newValue); + return; + case IPosDevKitPackage.MONITORING_REQUEST__REQUESTOR_PROTOCOL: + setRequestorProtocol((String) newValue); + return; + case IPosDevKitPackage.MONITORING_REQUEST__SERIALIZATION_TYPE: + setSerializationType((String) newValue); + return; + case IPosDevKitPackage.MONITORING_REQUEST__REF_SYSTEM_ID: + setRefSystemId((String) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case IPosDevKitPackage.MONITORING_REQUEST__FRAME_IDS: + setFrameIds(FRAME_IDS_EDEFAULT); + return; + case IPosDevKitPackage.MONITORING_REQUEST__DELTA: + setDelta(DELTA_EDEFAULT); + return; + case IPosDevKitPackage.MONITORING_REQUEST__UPDATE_FREQUENCY: + setUpdateFrequency(UPDATE_FREQUENCY_EDEFAULT); + return; + case IPosDevKitPackage.MONITORING_REQUEST__TYPE: + setType(TYPE_EDEFAULT); + return; + case IPosDevKitPackage.MONITORING_REQUEST__ID: + setId(ID_EDEFAULT); + return; + case IPosDevKitPackage.MONITORING_REQUEST__FUSION_STRATEGY: + setFusionStrategy(FUSION_STRATEGY_EDEFAULT); + return; + case IPosDevKitPackage.MONITORING_REQUEST__EXIT_NOTIFICATION: + setExitNotification(EXIT_NOTIFICATION_EDEFAULT); + return; + case IPosDevKitPackage.MONITORING_REQUEST__PROPERTIES: + setProperties(PROPERTIES_EDEFAULT); + return; + case IPosDevKitPackage.MONITORING_REQUEST__MONITORING_TASK_ID: + setMonitoringTaskId(MONITORING_TASK_ID_EDEFAULT); + return; + case IPosDevKitPackage.MONITORING_REQUEST__REQUESTOR_PROTOCOL: + setRequestorProtocol(REQUESTOR_PROTOCOL_EDEFAULT); + return; + case IPosDevKitPackage.MONITORING_REQUEST__SERIALIZATION_TYPE: + setSerializationType(SERIALIZATION_TYPE_EDEFAULT); + return; + case IPosDevKitPackage.MONITORING_REQUEST__REF_SYSTEM_ID: + setRefSystemId(REF_SYSTEM_ID_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case IPosDevKitPackage.MONITORING_REQUEST__FRAME_IDS: + return FRAME_IDS_EDEFAULT == null ? frameIds != null : !FRAME_IDS_EDEFAULT.equals(frameIds); + case IPosDevKitPackage.MONITORING_REQUEST__DELTA: + return delta != DELTA_EDEFAULT; + case IPosDevKitPackage.MONITORING_REQUEST__UPDATE_FREQUENCY: + return updateFrequency != UPDATE_FREQUENCY_EDEFAULT; + case IPosDevKitPackage.MONITORING_REQUEST__TYPE: + return TYPE_EDEFAULT == null ? type != null : !TYPE_EDEFAULT.equals(type); + case IPosDevKitPackage.MONITORING_REQUEST__ID: + return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id); + case IPosDevKitPackage.MONITORING_REQUEST__FUSION_STRATEGY: + return FUSION_STRATEGY_EDEFAULT == null ? fusionStrategy != null + : !FUSION_STRATEGY_EDEFAULT.equals(fusionStrategy); + case IPosDevKitPackage.MONITORING_REQUEST__EXIT_NOTIFICATION: + return exitNotification != EXIT_NOTIFICATION_EDEFAULT; + case IPosDevKitPackage.MONITORING_REQUEST__PROPERTIES: + return PROPERTIES_EDEFAULT == null ? properties != null : !PROPERTIES_EDEFAULT.equals(properties); + case IPosDevKitPackage.MONITORING_REQUEST__MONITORING_TASK_ID: + return MONITORING_TASK_ID_EDEFAULT == null ? monitoringTaskId != null + : !MONITORING_TASK_ID_EDEFAULT.equals(monitoringTaskId); + case IPosDevKitPackage.MONITORING_REQUEST__REQUESTOR_PROTOCOL: + return REQUESTOR_PROTOCOL_EDEFAULT == null ? requestorProtocol != null + : !REQUESTOR_PROTOCOL_EDEFAULT.equals(requestorProtocol); + case IPosDevKitPackage.MONITORING_REQUEST__SERIALIZATION_TYPE: + return SERIALIZATION_TYPE_EDEFAULT == null ? serializationType != null + : !SERIALIZATION_TYPE_EDEFAULT.equals(serializationType); + case IPosDevKitPackage.MONITORING_REQUEST__REF_SYSTEM_ID: + return REF_SYSTEM_ID_EDEFAULT == null ? refSystemId != null : !REF_SYSTEM_ID_EDEFAULT.equals(refSystemId); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (frameIds: "); + result.append(frameIds); + result.append(", delta: "); + result.append(delta); + result.append(", updateFrequency: "); + result.append(updateFrequency); + result.append(", type: "); + result.append(type); + result.append(", id: "); + result.append(id); + result.append(", fusionStrategy: "); + result.append(fusionStrategy); + result.append(", exitNotification: "); + result.append(exitNotification); + result.append(", properties: "); + result.append(properties); + result.append(", monitoringTaskId: "); + result.append(monitoringTaskId); + result.append(", requestorProtocol: "); + result.append(requestorProtocol); + result.append(", serializationType: "); + result.append(serializationType); + result.append(", refSystemId: "); + result.append(refSystemId); + result.append(')'); + return result.toString(); + } + +} //MonitoringRequestImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/SensorConfigurationRequestImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/SensorConfigurationRequestImpl.java similarity index 68% rename from src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/SensorConfigurationRequestImpl.java rename to src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/SensorConfigurationRequestImpl.java index 275929b028ad5ed5d994d2b61aaed70a823fc395..738638aa310059bbbc38eaa716c3406549e09eda 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/SensorConfigurationRequestImpl.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/SensorConfigurationRequestImpl.java @@ -1,9 +1,9 @@ /** */ -package ipos.project.DataModellntegration.iPos_Datamodel.impl; +package ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl; -import ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage; -import ipos.project.DataModellntegration.iPos_Datamodel.SensorConfigurationRequest; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.SensorConfigurationRequest; import org.eclipse.emf.ecore.EClass; @@ -33,7 +33,7 @@ public class SensorConfigurationRequestImpl extends MinimalEObjectImpl.Container */ @Override protected EClass eStaticClass() { - return IPos_DatamodelPackage.Literals.SENSOR_CONFIGURATION_REQUEST; + return IPosDevKitPackage.Literals.SENSOR_CONFIGURATION_REQUEST; } } //SensorConfigurationRequestImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/TrackingRequestImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/TrackingRequestImpl.java similarity index 68% rename from src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/TrackingRequestImpl.java rename to src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/TrackingRequestImpl.java index e1c27083e26ff381de01bd2c1effdf4955f316b9..66fc8bf7dbb9a9322f71404f67e2b449fccfecef 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/TrackingRequestImpl.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/TrackingRequestImpl.java @@ -1,9 +1,9 @@ /** */ -package ipos.project.DataModellntegration.iPos_Datamodel.impl; +package ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl; -import ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage; -import ipos.project.DataModellntegration.iPos_Datamodel.TrackingRequest; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.TrackingRequest; import org.eclipse.emf.ecore.EClass; @@ -33,7 +33,7 @@ public class TrackingRequestImpl extends MinimalEObjectImpl.Container implements */ @Override protected EClass eStaticClass() { - return IPos_DatamodelPackage.Literals.TRACKING_REQUEST; + return IPosDevKitPackage.Literals.TRACKING_REQUEST; } } //TrackingRequestImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/WorldModelQueryRequestImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/WorldModelQueryRequestImpl.java similarity index 68% rename from src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/WorldModelQueryRequestImpl.java rename to src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/WorldModelQueryRequestImpl.java index 74618cb0f51a1d62460355dcec5eefbfb409facc..9e5402bb86e4e507027d1a5cd18f30d273e7d645 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/WorldModelQueryRequestImpl.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/WorldModelQueryRequestImpl.java @@ -1,9 +1,9 @@ /** */ -package ipos.project.DataModellntegration.iPos_Datamodel.impl; +package ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl; -import ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage; -import ipos.project.DataModellntegration.iPos_Datamodel.WorldModelQueryRequest; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.WorldModelQueryRequest; import org.eclipse.emf.ecore.EClass; @@ -33,7 +33,7 @@ public class WorldModelQueryRequestImpl extends MinimalEObjectImpl.Container imp */ @Override protected EClass eStaticClass() { - return IPos_DatamodelPackage.Literals.WORLD_MODEL_QUERY_REQUEST; + return IPosDevKitPackage.Literals.WORLD_MODEL_QUERY_REQUEST; } } //WorldModelQueryRequestImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/WorldModelUpdateRequestImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/WorldModelUpdateRequestImpl.java similarity index 68% rename from src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/WorldModelUpdateRequestImpl.java rename to src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/WorldModelUpdateRequestImpl.java index 510b2ef29e08986971947582fa0bbbc9ebfc0095..77db72873ef8a055f44fca715e9ab1ed85e87301 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/WorldModelUpdateRequestImpl.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/impl/WorldModelUpdateRequestImpl.java @@ -1,9 +1,9 @@ /** */ -package ipos.project.DataModellntegration.iPos_Datamodel.impl; +package ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl; -import ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage; -import ipos.project.DataModellntegration.iPos_Datamodel.WorldModelUpdateRequest; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.WorldModelUpdateRequest; import org.eclipse.emf.ecore.EClass; @@ -33,7 +33,7 @@ public class WorldModelUpdateRequestImpl extends MinimalEObjectImpl.Container im */ @Override protected EClass eStaticClass() { - return IPos_DatamodelPackage.Literals.WORLD_MODEL_UPDATE_REQUEST; + return IPosDevKitPackage.Literals.WORLD_MODEL_UPDATE_REQUEST; } } //WorldModelUpdateRequestImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/util/IPosDevKitAdapterFactory.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/util/IPosDevKitAdapterFactory.java new file mode 100644 index 0000000000000000000000000000000000000000..831419cda659d4f64270e954290416d7069962ed --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/util/IPosDevKitAdapterFactory.java @@ -0,0 +1,480 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.util; + +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.*; + +import org.eclipse.emf.common.notify.Adapter; +import org.eclipse.emf.common.notify.Notifier; + +import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * The <b>Adapter Factory</b> for the model. + * It provides an adapter <code>createXXX</code> method for each class of the model. + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage + * @generated + */ +public class IPosDevKitAdapterFactory extends AdapterFactoryImpl { + /** + * The cached model package. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected static IPosDevKitPackage modelPackage; + + /** + * Creates an instance of the adapter factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public IPosDevKitAdapterFactory() { + if (modelPackage == null) { + modelPackage = IPosDevKitPackage.eINSTANCE; + } + } + + /** + * Returns whether this factory is applicable for the type of the object. + * <!-- begin-user-doc --> + * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model. + * <!-- end-user-doc --> + * @return whether this factory is applicable for the type of the object. + * @generated + */ + @Override + public boolean isFactoryForType(Object object) { + if (object == modelPackage) { + return true; + } + if (object instanceof EObject) { + return ((EObject) object).eClass().getEPackage() == modelPackage; + } + return false; + } + + /** + * The switch that delegates to the <code>createXXX</code> methods. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected IPosDevKitSwitch<Adapter> modelSwitch = new IPosDevKitSwitch<Adapter>() { + @Override + public Adapter caseTrackingRequest(TrackingRequest object) { + return createTrackingRequestAdapter(); + } + + @Override + public Adapter caseMonitoringRequest(MonitoringRequest object) { + return createMonitoringRequestAdapter(); + } + + @Override + public Adapter caseWorldModelUpdateRequest(WorldModelUpdateRequest object) { + return createWorldModelUpdateRequestAdapter(); + } + + @Override + public Adapter caseDataStorageRequest(DataStorageRequest object) { + return createDataStorageRequestAdapter(); + } + + @Override + public Adapter caseWorldModelQueryRequest(WorldModelQueryRequest object) { + return createWorldModelQueryRequestAdapter(); + } + + @Override + public Adapter caseDataStorageQueryRequest(DataStorageQueryRequest object) { + return createDataStorageQueryRequestAdapter(); + } + + @Override + public Adapter caseAgentRegistrationRequest(AgentRegistrationRequest object) { + return createAgentRegistrationRequestAdapter(); + } + + @Override + public Adapter caseSensorConfigurationRequest(SensorConfigurationRequest object) { + return createSensorConfigurationRequestAdapter(); + } + + @Override + public Adapter caseIposPositionEvent(IposPositionEvent object) { + return createIposPositionEventAdapter(); + } + + @Override + public Adapter caseIPosRawdataEvent(IPosRawdataEvent object) { + return createIPosRawdataEventAdapter(); + } + + @Override + public Adapter caseIPosBeaconEvent(IPosBeaconEvent object) { + return createIPosBeaconEventAdapter(); + } + + @Override + public Adapter caseIPosUWBEvent(IPosUWBEvent object) { + return createIPosUWBEventAdapter(); + } + + @Override + public Adapter caseIPosBTEvent(IPosBTEvent object) { + return createIPosBTEventAdapter(); + } + + @Override + public Adapter caseIPosProximityEvent(IPosProximityEvent object) { + return createIPosProximityEventAdapter(); + } + + @Override + public Adapter caseIPosNFCEvent(IPosNFCEvent object) { + return createIPosNFCEventAdapter(); + } + + @Override + public Adapter caseIPosBarcodeEvent(IPosBarcodeEvent object) { + return createIPosBarcodeEventAdapter(); + } + + @Override + public Adapter caseIPosRFIDEvent(IPosRFIDEvent object) { + return createIPosRFIDEventAdapter(); + } + + @Override + public Adapter caseIPosOtherProxEvent(IPosOtherProxEvent object) { + return createIPosOtherProxEventAdapter(); + } + + @Override + public Adapter caseIPosOtherBeaconEvent(IPosOtherBeaconEvent object) { + return createIPosOtherBeaconEventAdapter(); + } + + @Override + public Adapter caseIposMsgRcvEvent(IposMsgRcvEvent object) { + return createIposMsgRcvEventAdapter(); + } + + @Override + public Adapter defaultCase(EObject object) { + return createEObjectAdapter(); + } + }; + + /** + * Creates an adapter for the <code>target</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param target the object to adapt. + * @return the adapter for the <code>target</code>. + * @generated + */ + @Override + public Adapter createAdapter(Notifier target) { + return modelSwitch.doSwitch((EObject) target); + } + + /** + * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.TrackingRequest <em>Tracking Request</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.TrackingRequest + * @generated + */ + public Adapter createTrackingRequestAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest <em>Monitoring Request</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest + * @generated + */ + public Adapter createMonitoringRequestAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.WorldModelUpdateRequest <em>World Model Update Request</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.WorldModelUpdateRequest + * @generated + */ + public Adapter createWorldModelUpdateRequestAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.DataStorageRequest <em>Data Storage Request</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.DataStorageRequest + * @generated + */ + public Adapter createDataStorageRequestAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.WorldModelQueryRequest <em>World Model Query Request</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.WorldModelQueryRequest + * @generated + */ + public Adapter createWorldModelQueryRequestAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.DataStorageQueryRequest <em>Data Storage Query Request</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.DataStorageQueryRequest + * @generated + */ + public Adapter createDataStorageQueryRequestAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.AgentRegistrationRequest <em>Agent Registration Request</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.AgentRegistrationRequest + * @generated + */ + public Adapter createAgentRegistrationRequestAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.SensorConfigurationRequest <em>Sensor Configuration Request</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.SensorConfigurationRequest + * @generated + */ + public Adapter createSensorConfigurationRequestAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposPositionEvent <em>Ipos Position Event</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposPositionEvent + * @generated + */ + public Adapter createIposPositionEventAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosRawdataEvent <em>IPos Rawdata Event</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosRawdataEvent + * @generated + */ + public Adapter createIPosRawdataEventAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosBeaconEvent <em>IPos Beacon Event</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosBeaconEvent + * @generated + */ + public Adapter createIPosBeaconEventAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosUWBEvent <em>IPos UWB Event</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosUWBEvent + * @generated + */ + public Adapter createIPosUWBEventAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosBTEvent <em>IPos BT Event</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosBTEvent + * @generated + */ + public Adapter createIPosBTEventAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosProximityEvent <em>IPos Proximity Event</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosProximityEvent + * @generated + */ + public Adapter createIPosProximityEventAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosNFCEvent <em>IPos NFC Event</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosNFCEvent + * @generated + */ + public Adapter createIPosNFCEventAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosBarcodeEvent <em>IPos Barcode Event</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosBarcodeEvent + * @generated + */ + public Adapter createIPosBarcodeEventAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosRFIDEvent <em>IPos RFID Event</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosRFIDEvent + * @generated + */ + public Adapter createIPosRFIDEventAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosOtherProxEvent <em>IPos Other Prox Event</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosOtherProxEvent + * @generated + */ + public Adapter createIPosOtherProxEventAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosOtherBeaconEvent <em>IPos Other Beacon Event</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosOtherBeaconEvent + * @generated + */ + public Adapter createIPosOtherBeaconEventAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposMsgRcvEvent <em>Ipos Msg Rcv Event</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposMsgRcvEvent + * @generated + */ + public Adapter createIposMsgRcvEventAdapter() { + return null; + } + + /** + * Creates a new adapter for the default case. + * <!-- begin-user-doc --> + * This default implementation returns null. + * <!-- end-user-doc --> + * @return the new adapter. + * @generated + */ + public Adapter createEObjectAdapter() { + return null; + } + +} //IPosDevKitAdapterFactory diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/util/IPosDevKitSwitch.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/util/IPosDevKitSwitch.java new file mode 100644 index 0000000000000000000000000000000000000000..37c0c80d3b6552abc618aeef2da17ecd54236bb6 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPosDevKit/util/IPosDevKitSwitch.java @@ -0,0 +1,562 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.util; + +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.*; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EPackage; + +import org.eclipse.emf.ecore.util.Switch; + +/** + * <!-- begin-user-doc --> + * The <b>Switch</b> for the model's inheritance hierarchy. + * It supports the call {@link #doSwitch(EObject) doSwitch(object)} + * to invoke the <code>caseXXX</code> method for each class of the model, + * starting with the actual class of the object + * and proceeding up the inheritance hierarchy + * until a non-null result is returned, + * which is the result of the switch. + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage + * @generated + */ +public class IPosDevKitSwitch<T> extends Switch<T> { + /** + * The cached model package + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected static IPosDevKitPackage modelPackage; + + /** + * Creates an instance of the switch. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public IPosDevKitSwitch() { + if (modelPackage == null) { + modelPackage = IPosDevKitPackage.eINSTANCE; + } + } + + /** + * Checks whether this is a switch for the given package. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param ePackage the package in question. + * @return whether this is a switch for the given package. + * @generated + */ + @Override + protected boolean isSwitchFor(EPackage ePackage) { + return ePackage == modelPackage; + } + + /** + * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the first non-null result returned by a <code>caseXXX</code> call. + * @generated + */ + @Override + protected T doSwitch(int classifierID, EObject theEObject) { + switch (classifierID) { + case IPosDevKitPackage.TRACKING_REQUEST: { + TrackingRequest trackingRequest = (TrackingRequest) theEObject; + T result = caseTrackingRequest(trackingRequest); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case IPosDevKitPackage.MONITORING_REQUEST: { + MonitoringRequest monitoringRequest = (MonitoringRequest) theEObject; + T result = caseMonitoringRequest(monitoringRequest); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case IPosDevKitPackage.WORLD_MODEL_UPDATE_REQUEST: { + WorldModelUpdateRequest worldModelUpdateRequest = (WorldModelUpdateRequest) theEObject; + T result = caseWorldModelUpdateRequest(worldModelUpdateRequest); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case IPosDevKitPackage.DATA_STORAGE_REQUEST: { + DataStorageRequest dataStorageRequest = (DataStorageRequest) theEObject; + T result = caseDataStorageRequest(dataStorageRequest); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case IPosDevKitPackage.WORLD_MODEL_QUERY_REQUEST: { + WorldModelQueryRequest worldModelQueryRequest = (WorldModelQueryRequest) theEObject; + T result = caseWorldModelQueryRequest(worldModelQueryRequest); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case IPosDevKitPackage.DATA_STORAGE_QUERY_REQUEST: { + DataStorageQueryRequest dataStorageQueryRequest = (DataStorageQueryRequest) theEObject; + T result = caseDataStorageQueryRequest(dataStorageQueryRequest); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case IPosDevKitPackage.AGENT_REGISTRATION_REQUEST: { + AgentRegistrationRequest agentRegistrationRequest = (AgentRegistrationRequest) theEObject; + T result = caseAgentRegistrationRequest(agentRegistrationRequest); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case IPosDevKitPackage.SENSOR_CONFIGURATION_REQUEST: { + SensorConfigurationRequest sensorConfigurationRequest = (SensorConfigurationRequest) theEObject; + T result = caseSensorConfigurationRequest(sensorConfigurationRequest); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case IPosDevKitPackage.IPOS_POSITION_EVENT: { + IposPositionEvent iposPositionEvent = (IposPositionEvent) theEObject; + T result = caseIposPositionEvent(iposPositionEvent); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case IPosDevKitPackage.IPOS_RAWDATA_EVENT: { + IPosRawdataEvent iPosRawdataEvent = (IPosRawdataEvent) theEObject; + T result = caseIPosRawdataEvent(iPosRawdataEvent); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case IPosDevKitPackage.IPOS_BEACON_EVENT: { + IPosBeaconEvent iPosBeaconEvent = (IPosBeaconEvent) theEObject; + T result = caseIPosBeaconEvent(iPosBeaconEvent); + if (result == null) + result = caseIPosRawdataEvent(iPosBeaconEvent); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case IPosDevKitPackage.IPOS_UWB_EVENT: { + IPosUWBEvent iPosUWBEvent = (IPosUWBEvent) theEObject; + T result = caseIPosUWBEvent(iPosUWBEvent); + if (result == null) + result = caseIPosBeaconEvent(iPosUWBEvent); + if (result == null) + result = caseIPosRawdataEvent(iPosUWBEvent); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case IPosDevKitPackage.IPOS_BT_EVENT: { + IPosBTEvent iPosBTEvent = (IPosBTEvent) theEObject; + T result = caseIPosBTEvent(iPosBTEvent); + if (result == null) + result = caseIPosBeaconEvent(iPosBTEvent); + if (result == null) + result = caseIPosRawdataEvent(iPosBTEvent); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case IPosDevKitPackage.IPOS_PROXIMITY_EVENT: { + IPosProximityEvent iPosProximityEvent = (IPosProximityEvent) theEObject; + T result = caseIPosProximityEvent(iPosProximityEvent); + if (result == null) + result = caseIPosRawdataEvent(iPosProximityEvent); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case IPosDevKitPackage.IPOS_NFC_EVENT: { + IPosNFCEvent iPosNFCEvent = (IPosNFCEvent) theEObject; + T result = caseIPosNFCEvent(iPosNFCEvent); + if (result == null) + result = caseIPosProximityEvent(iPosNFCEvent); + if (result == null) + result = caseIPosRawdataEvent(iPosNFCEvent); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case IPosDevKitPackage.IPOS_BARCODE_EVENT: { + IPosBarcodeEvent iPosBarcodeEvent = (IPosBarcodeEvent) theEObject; + T result = caseIPosBarcodeEvent(iPosBarcodeEvent); + if (result == null) + result = caseIPosProximityEvent(iPosBarcodeEvent); + if (result == null) + result = caseIPosRawdataEvent(iPosBarcodeEvent); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case IPosDevKitPackage.IPOS_RFID_EVENT: { + IPosRFIDEvent iPosRFIDEvent = (IPosRFIDEvent) theEObject; + T result = caseIPosRFIDEvent(iPosRFIDEvent); + if (result == null) + result = caseIPosProximityEvent(iPosRFIDEvent); + if (result == null) + result = caseIPosRawdataEvent(iPosRFIDEvent); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case IPosDevKitPackage.IPOS_OTHER_PROX_EVENT: { + IPosOtherProxEvent iPosOtherProxEvent = (IPosOtherProxEvent) theEObject; + T result = caseIPosOtherProxEvent(iPosOtherProxEvent); + if (result == null) + result = caseIPosProximityEvent(iPosOtherProxEvent); + if (result == null) + result = caseIPosRawdataEvent(iPosOtherProxEvent); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case IPosDevKitPackage.IPOS_OTHER_BEACON_EVENT: { + IPosOtherBeaconEvent iPosOtherBeaconEvent = (IPosOtherBeaconEvent) theEObject; + T result = caseIPosOtherBeaconEvent(iPosOtherBeaconEvent); + if (result == null) + result = caseIPosBeaconEvent(iPosOtherBeaconEvent); + if (result == null) + result = caseIPosRawdataEvent(iPosOtherBeaconEvent); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case IPosDevKitPackage.IPOS_MSG_RCV_EVENT: { + IposMsgRcvEvent iposMsgRcvEvent = (IposMsgRcvEvent) theEObject; + T result = caseIposMsgRcvEvent(iposMsgRcvEvent); + if (result == null) + result = defaultCase(theEObject); + return result; + } + default: + return defaultCase(theEObject); + } + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Tracking Request</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Tracking Request</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTrackingRequest(TrackingRequest object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Monitoring Request</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Monitoring Request</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseMonitoringRequest(MonitoringRequest object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>World Model Update Request</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>World Model Update Request</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseWorldModelUpdateRequest(WorldModelUpdateRequest object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Data Storage Request</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Data Storage Request</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseDataStorageRequest(DataStorageRequest object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>World Model Query Request</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>World Model Query Request</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseWorldModelQueryRequest(WorldModelQueryRequest object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Data Storage Query Request</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Data Storage Query Request</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseDataStorageQueryRequest(DataStorageQueryRequest object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Agent Registration Request</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Agent Registration Request</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseAgentRegistrationRequest(AgentRegistrationRequest object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Sensor Configuration Request</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Sensor Configuration Request</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseSensorConfigurationRequest(SensorConfigurationRequest object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Ipos Position Event</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Ipos Position Event</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseIposPositionEvent(IposPositionEvent object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>IPos Rawdata Event</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>IPos Rawdata Event</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseIPosRawdataEvent(IPosRawdataEvent object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>IPos Beacon Event</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>IPos Beacon Event</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseIPosBeaconEvent(IPosBeaconEvent object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>IPos UWB Event</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>IPos UWB Event</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseIPosUWBEvent(IPosUWBEvent object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>IPos BT Event</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>IPos BT Event</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseIPosBTEvent(IPosBTEvent object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>IPos Proximity Event</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>IPos Proximity Event</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseIPosProximityEvent(IPosProximityEvent object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>IPos NFC Event</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>IPos NFC Event</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseIPosNFCEvent(IPosNFCEvent object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>IPos Barcode Event</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>IPos Barcode Event</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseIPosBarcodeEvent(IPosBarcodeEvent object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>IPos RFID Event</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>IPos RFID Event</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseIPosRFIDEvent(IPosRFIDEvent object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>IPos Other Prox Event</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>IPos Other Prox Event</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseIPosOtherProxEvent(IPosOtherProxEvent object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>IPos Other Beacon Event</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>IPos Other Beacon Event</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseIPosOtherBeaconEvent(IPosOtherBeaconEvent object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Ipos Msg Rcv Event</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Ipos Msg Rcv Event</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseIposMsgRcvEvent(IposMsgRcvEvent object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>EObject</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch, but this is the last case anyway. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>EObject</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) + * @generated + */ + @Override + public T defaultCase(EObject object) { + return null; + } + +} //IPosDevKitSwitch diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPos_DatamodelFactory.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPos_DatamodelFactory.java index 0e1cd15b85b7704e346d3b53e8a3ec641f249462..739eb3bca8c84eb8e02d3a89502552be5fd4328e 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPos_DatamodelFactory.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPos_DatamodelFactory.java @@ -49,15 +49,6 @@ public interface IPos_DatamodelFactory extends EFactory { */ LocalizableObject createLocalizableObject(); - /** - * Returns a new object of class '<em>Position Sensor</em>'. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return a new object of class '<em>Position Sensor</em>'. - * @generated - */ - PositionSensor createPositionSensor(); - /** * Returns a new object of class '<em>Placing</em>'. * <!-- begin-user-doc --> @@ -85,24 +76,6 @@ public interface IPos_DatamodelFactory extends EFactory { */ Orientation createOrientation(); - /** - * Returns a new object of class '<em>Absolute Position</em>'. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return a new object of class '<em>Absolute Position</em>'. - * @generated - */ - AbsolutePosition createAbsolutePosition(); - - /** - * Returns a new object of class '<em>Relative Position</em>'. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return a new object of class '<em>Relative Position</em>'. - * @generated - */ - RelativePosition createRelativePosition(); - /** * Returns a new object of class '<em>WGS84 Point</em>'. * <!-- begin-user-doc --> @@ -184,15 +157,6 @@ public interface IPos_DatamodelFactory extends EFactory { */ MapType createMapType(); - /** - * Returns a new object of class '<em>Network Interface</em>'. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return a new object of class '<em>Network Interface</em>'. - * @generated - */ - NetworkInterface createNetworkInterface(); - /** * Returns a new object of class '<em>Quaternion</em>'. * <!-- begin-user-doc --> @@ -220,6 +184,15 @@ public interface IPos_DatamodelFactory extends EFactory { */ Point createPoint(); + /** + * Returns a new object of class '<em>Rawdata Event</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Rawdata Event</em>'. + * @generated + */ + RawdataEvent createRawdataEvent(); + /** * Returns a new object of class '<em>Proximity</em>'. * <!-- begin-user-doc --> @@ -256,15 +229,6 @@ public interface IPos_DatamodelFactory extends EFactory { */ IMU createIMU(); - /** - * Returns a new object of class '<em>Angular Rate</em>'. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return a new object of class '<em>Angular Rate</em>'. - * @generated - */ - AngularRate createAngularRate(); - /** * Returns a new object of class '<em>Acceleration</em>'. * <!-- begin-user-doc --> @@ -292,51 +256,6 @@ public interface IPos_DatamodelFactory extends EFactory { */ PositionEvent createPositionEvent(); - /** - * Returns a new object of class '<em>Rawdata Event</em>'. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return a new object of class '<em>Rawdata Event</em>'. - * @generated - */ - RawdataEvent createRawdataEvent(); - - /** - * Returns a new object of class '<em>Tracking Request</em>'. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return a new object of class '<em>Tracking Request</em>'. - * @generated - */ - TrackingRequest createTrackingRequest(); - - /** - * Returns a new object of class '<em>Monitoring Request</em>'. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return a new object of class '<em>Monitoring Request</em>'. - * @generated - */ - MonitoringRequest createMonitoringRequest(); - - /** - * Returns a new object of class '<em>World Model Update Request</em>'. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return a new object of class '<em>World Model Update Request</em>'. - * @generated - */ - WorldModelUpdateRequest createWorldModelUpdateRequest(); - - /** - * Returns a new object of class '<em>Data Storage Request</em>'. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return a new object of class '<em>Data Storage Request</em>'. - * @generated - */ - DataStorageRequest createDataStorageRequest(); - /** * Returns a new object of class '<em>Event Filter Configuration</em>'. * <!-- begin-user-doc --> @@ -346,33 +265,6 @@ public interface IPos_DatamodelFactory extends EFactory { */ EventFilterConfiguration createEventFilterConfiguration(); - /** - * Returns a new object of class '<em>World Model Query Request</em>'. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return a new object of class '<em>World Model Query Request</em>'. - * @generated - */ - WorldModelQueryRequest createWorldModelQueryRequest(); - - /** - * Returns a new object of class '<em>Data Storage Query Request</em>'. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return a new object of class '<em>Data Storage Query Request</em>'. - * @generated - */ - DataStorageQueryRequest createDataStorageQueryRequest(); - - /** - * Returns a new object of class '<em>Agent Registration Request</em>'. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return a new object of class '<em>Agent Registration Request</em>'. - * @generated - */ - AgentRegistrationRequest createAgentRegistrationRequest(); - /** * Returns a new object of class '<em>Monitoring Task</em>'. * <!-- begin-user-doc --> @@ -436,15 +328,6 @@ public interface IPos_DatamodelFactory extends EFactory { */ UWB createUWB(); - /** - * Returns a new object of class '<em>Sensor Configuration Request</em>'. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return a new object of class '<em>Sensor Configuration Request</em>'. - * @generated - */ - SensorConfigurationRequest createSensorConfigurationRequest(); - /** * Returns a new object of class '<em>Other Beacon</em>'. * <!-- begin-user-doc --> @@ -455,13 +338,13 @@ public interface IPos_DatamodelFactory extends EFactory { OtherBeacon createOtherBeacon(); /** - * Returns a new object of class '<em>Reference Position</em>'. + * Returns a new object of class '<em>POI</em>'. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @return a new object of class '<em>Reference Position</em>'. + * @return a new object of class '<em>POI</em>'. * @generated */ - ReferencePosition createReferencePosition(); + POI createPOI(); /** * Returns a new object of class '<em>Event Filter Condition</em>'. @@ -472,6 +355,33 @@ public interface IPos_DatamodelFactory extends EFactory { */ EventFilterCondition createEventFilterCondition(); + /** + * Returns a new object of class '<em>Zone Descriptor</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Zone Descriptor</em>'. + * @generated + */ + ZoneDescriptor createZoneDescriptor(); + + /** + * Returns a new object of class '<em>Data Storage Query Response</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Data Storage Query Response</em>'. + * @generated + */ + DataStorageQueryResponse createDataStorageQueryResponse(); + + /** + * Returns a new object of class '<em>Message Received Event</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Message Received Event</em>'. + * @generated + */ + MessageReceivedEvent createMessageReceivedEvent(); + /** * Returns the package supported by this factory. * <!-- begin-user-doc --> diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPos_DatamodelPackage.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPos_DatamodelPackage.java index 431db6f62c6b35f9a52e06873f77001eee41449f..e1910169e79d970768419868191e223748374193 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPos_DatamodelPackage.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/IPos_DatamodelPackage.java @@ -114,15 +114,6 @@ public interface IPos_DatamodelPackage extends EPackage { */ int AGENT__ID = ENTITY__ID; - /** - * The feature id for the '<em><b>Name</b></em>' attribute. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - * @ordered - */ - int AGENT__NAME = ENTITY_FEATURE_COUNT + 0; - /** * The feature id for the '<em><b>LObject</b></em>' reference list. * <!-- begin-user-doc --> @@ -130,25 +121,16 @@ public interface IPos_DatamodelPackage extends EPackage { * @generated * @ordered */ - int AGENT__LOBJECT = ENTITY_FEATURE_COUNT + 1; + int AGENT__LOBJECT = ENTITY_FEATURE_COUNT + 0; /** - * The feature id for the '<em><b>Net Int</b></em>' reference. + * The feature id for the '<em><b>Agent Type</b></em>' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated * @ordered */ - int AGENT__NET_INT = ENTITY_FEATURE_COUNT + 2; - - /** - * The feature id for the '<em><b>PSensors</b></em>' reference list. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - * @ordered - */ - int AGENT__PSENSORS = ENTITY_FEATURE_COUNT + 3; + int AGENT__AGENT_TYPE = ENTITY_FEATURE_COUNT + 1; /** * The number of structural features of the '<em>Agent</em>' class. @@ -157,7 +139,7 @@ public interface IPos_DatamodelPackage extends EPackage { * @generated * @ordered */ - int AGENT_FEATURE_COUNT = ENTITY_FEATURE_COUNT + 4; + int AGENT_FEATURE_COUNT = ENTITY_FEATURE_COUNT + 2; /** * The number of operations of the '<em>Agent</em>' class. @@ -188,40 +170,40 @@ public interface IPos_DatamodelPackage extends EPackage { int LOCALIZABLE_OBJECT__ID = ENTITY__ID; /** - * The feature id for the '<em><b>PSensor</b></em>' reference. + * The feature id for the '<em><b>Last Pos Update</b></em>' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated * @ordered */ - int LOCALIZABLE_OBJECT__PSENSOR = ENTITY_FEATURE_COUNT + 0; + int LOCALIZABLE_OBJECT__LAST_POS_UPDATE = ENTITY_FEATURE_COUNT + 0; /** - * The feature id for the '<em><b>Current Placing</b></em>' reference. + * The feature id for the '<em><b>Sensor Type</b></em>' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated * @ordered */ - int LOCALIZABLE_OBJECT__CURRENT_PLACING = ENTITY_FEATURE_COUNT + 1; + int LOCALIZABLE_OBJECT__SENSOR_TYPE = ENTITY_FEATURE_COUNT + 1; /** - * The feature id for the '<em><b>Last Pos Update</b></em>' attribute. + * The feature id for the '<em><b>Agent</b></em>' reference. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated * @ordered */ - int LOCALIZABLE_OBJECT__LAST_POS_UPDATE = ENTITY_FEATURE_COUNT + 2; + int LOCALIZABLE_OBJECT__AGENT = ENTITY_FEATURE_COUNT + 2; /** - * The feature id for the '<em><b>Type</b></em>' attribute. + * The feature id for the '<em><b>Current Placing</b></em>' reference. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated * @ordered */ - int LOCALIZABLE_OBJECT__TYPE = ENTITY_FEATURE_COUNT + 3; + int LOCALIZABLE_OBJECT__CURRENT_PLACING = ENTITY_FEATURE_COUNT + 3; /** * The number of structural features of the '<em>Localizable Object</em>' class. @@ -241,70 +223,6 @@ public interface IPos_DatamodelPackage extends EPackage { */ int LOCALIZABLE_OBJECT_OPERATION_COUNT = ENTITY_OPERATION_COUNT + 0; - /** - * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.PositionSensorImpl <em>Position Sensor</em>}' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.PositionSensorImpl - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getPositionSensor() - * @generated - */ - int POSITION_SENSOR = 3; - - /** - * The feature id for the '<em><b>Id</b></em>' attribute. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - * @ordered - */ - int POSITION_SENSOR__ID = ENTITY__ID; - - /** - * The feature id for the '<em><b>Agent</b></em>' reference. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - * @ordered - */ - int POSITION_SENSOR__AGENT = ENTITY_FEATURE_COUNT + 0; - - /** - * The feature id for the '<em><b>LObject</b></em>' reference. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - * @ordered - */ - int POSITION_SENSOR__LOBJECT = ENTITY_FEATURE_COUNT + 1; - - /** - * The feature id for the '<em><b>Type</b></em>' attribute. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - * @ordered - */ - int POSITION_SENSOR__TYPE = ENTITY_FEATURE_COUNT + 2; - - /** - * The number of structural features of the '<em>Position Sensor</em>' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - * @ordered - */ - int POSITION_SENSOR_FEATURE_COUNT = ENTITY_FEATURE_COUNT + 3; - - /** - * The number of operations of the '<em>Position Sensor</em>' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - * @ordered - */ - int POSITION_SENSOR_OPERATION_COUNT = ENTITY_OPERATION_COUNT + 0; - /** * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.PlacingImpl <em>Placing</em>}' class. * <!-- begin-user-doc --> @@ -313,16 +231,7 @@ public interface IPos_DatamodelPackage extends EPackage { * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getPlacing() * @generated */ - int PLACING = 4; - - /** - * The feature id for the '<em><b>LObject</b></em>' reference. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - * @ordered - */ - int PLACING__LOBJECT = 0; + int PLACING = 3; /** * The feature id for the '<em><b>Position</b></em>' reference. @@ -331,7 +240,7 @@ public interface IPos_DatamodelPackage extends EPackage { * @generated * @ordered */ - int PLACING__POSITION = 1; + int PLACING__POSITION = 0; /** * The feature id for the '<em><b>Orientation</b></em>' reference. @@ -340,7 +249,7 @@ public interface IPos_DatamodelPackage extends EPackage { * @generated * @ordered */ - int PLACING__ORIENTATION = 2; + int PLACING__ORIENTATION = 1; /** * The number of structural features of the '<em>Placing</em>' class. @@ -349,7 +258,7 @@ public interface IPos_DatamodelPackage extends EPackage { * @generated * @ordered */ - int PLACING_FEATURE_COUNT = 3; + int PLACING_FEATURE_COUNT = 2; /** * The number of operations of the '<em>Placing</em>' class. @@ -368,7 +277,7 @@ public interface IPos_DatamodelPackage extends EPackage { * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getPosition() * @generated */ - int POSITION = 5; + int POSITION = 4; /** * The feature id for the '<em><b>Accuracy</b></em>' reference. @@ -380,151 +289,96 @@ public interface IPos_DatamodelPackage extends EPackage { int POSITION__ACCURACY = 0; /** - * The number of structural features of the '<em>Position</em>' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - * @ordered - */ - int POSITION_FEATURE_COUNT = 1; - - /** - * The number of operations of the '<em>Position</em>' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - * @ordered - */ - int POSITION_OPERATION_COUNT = 0; - - /** - * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.OrientationImpl <em>Orientation</em>}' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.OrientationImpl - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getOrientation() - * @generated - */ - int ORIENTATION = 6; - - /** - * The number of structural features of the '<em>Orientation</em>' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - * @ordered - */ - int ORIENTATION_FEATURE_COUNT = 0; - - /** - * The number of operations of the '<em>Orientation</em>' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - * @ordered - */ - int ORIENTATION_OPERATION_COUNT = 0; - - /** - * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.AbsolutePositionImpl <em>Absolute Position</em>}' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.AbsolutePositionImpl - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getAbsolutePosition() - * @generated - */ - int ABSOLUTE_POSITION = 7; - - /** - * The feature id for the '<em><b>Accuracy</b></em>' reference. + * The feature id for the '<em><b>Point</b></em>' reference. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated * @ordered */ - int ABSOLUTE_POSITION__ACCURACY = POSITION__ACCURACY; + int POSITION__POINT = 1; /** - * The feature id for the '<em><b>Point</b></em>' reference. + * The feature id for the '<em><b>Reference System</b></em>' reference. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated * @ordered */ - int ABSOLUTE_POSITION__POINT = POSITION_FEATURE_COUNT + 0; + int POSITION__REFERENCE_SYSTEM = 2; /** - * The number of structural features of the '<em>Absolute Position</em>' class. + * The number of structural features of the '<em>Position</em>' class. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated * @ordered */ - int ABSOLUTE_POSITION_FEATURE_COUNT = POSITION_FEATURE_COUNT + 1; + int POSITION_FEATURE_COUNT = 3; /** - * The number of operations of the '<em>Absolute Position</em>' class. + * The number of operations of the '<em>Position</em>' class. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated * @ordered */ - int ABSOLUTE_POSITION_OPERATION_COUNT = POSITION_OPERATION_COUNT + 0; + int POSITION_OPERATION_COUNT = 0; /** - * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.RelativePositionImpl <em>Relative Position</em>}' class. + * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.OrientationImpl <em>Orientation</em>}' class. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.RelativePositionImpl - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getRelativePosition() + * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.OrientationImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getOrientation() * @generated */ - int RELATIVE_POSITION = 8; + int ORIENTATION = 5; /** - * The feature id for the '<em><b>Accuracy</b></em>' reference. + * The number of structural features of the '<em>Orientation</em>' class. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated * @ordered */ - int RELATIVE_POSITION__ACCURACY = POSITION__ACCURACY; + int ORIENTATION_FEATURE_COUNT = 0; /** - * The feature id for the '<em><b>Reference</b></em>' reference. + * The number of operations of the '<em>Orientation</em>' class. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated * @ordered */ - int RELATIVE_POSITION__REFERENCE = POSITION_FEATURE_COUNT + 0; + int ORIENTATION_OPERATION_COUNT = 0; /** - * The feature id for the '<em><b>Point</b></em>' reference. + * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.PointImpl <em>Point</em>}' class. * <!-- begin-user-doc --> * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.PointImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getPoint() * @generated - * @ordered */ - int RELATIVE_POSITION__POINT = POSITION_FEATURE_COUNT + 1; + int POINT = 17; /** - * The number of structural features of the '<em>Relative Position</em>' class. + * The number of structural features of the '<em>Point</em>' class. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated * @ordered */ - int RELATIVE_POSITION_FEATURE_COUNT = POSITION_FEATURE_COUNT + 2; + int POINT_FEATURE_COUNT = 0; /** - * The number of operations of the '<em>Relative Position</em>' class. + * The number of operations of the '<em>Point</em>' class. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated * @ordered */ - int RELATIVE_POSITION_OPERATION_COUNT = POSITION_OPERATION_COUNT + 0; + int POINT_OPERATION_COUNT = 0; /** * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.WGS84PointImpl <em>WGS84 Point</em>}' class. @@ -534,7 +388,7 @@ public interface IPos_DatamodelPackage extends EPackage { * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getWGS84Point() * @generated */ - int WGS84_POINT = 9; + int WGS84_POINT = 6; /** * The feature id for the '<em><b>Longitude</b></em>' attribute. @@ -543,7 +397,7 @@ public interface IPos_DatamodelPackage extends EPackage { * @generated * @ordered */ - int WGS84_POINT__LONGITUDE = 0; + int WGS84_POINT__LONGITUDE = POINT_FEATURE_COUNT + 0; /** * The feature id for the '<em><b>Latitude</b></em>' attribute. @@ -552,7 +406,7 @@ public interface IPos_DatamodelPackage extends EPackage { * @generated * @ordered */ - int WGS84_POINT__LATITUDE = 1; + int WGS84_POINT__LATITUDE = POINT_FEATURE_COUNT + 1; /** * The feature id for the '<em><b>Altitude</b></em>' attribute. @@ -561,7 +415,7 @@ public interface IPos_DatamodelPackage extends EPackage { * @generated * @ordered */ - int WGS84_POINT__ALTITUDE = 2; + int WGS84_POINT__ALTITUDE = POINT_FEATURE_COUNT + 2; /** * The number of structural features of the '<em>WGS84 Point</em>' class. @@ -570,7 +424,7 @@ public interface IPos_DatamodelPackage extends EPackage { * @generated * @ordered */ - int WGS84_POINT_FEATURE_COUNT = 3; + int WGS84_POINT_FEATURE_COUNT = POINT_FEATURE_COUNT + 3; /** * The number of operations of the '<em>WGS84 Point</em>' class. @@ -579,7 +433,7 @@ public interface IPos_DatamodelPackage extends EPackage { * @generated * @ordered */ - int WGS84_POINT_OPERATION_COUNT = 0; + int WGS84_POINT_OPERATION_COUNT = POINT_OPERATION_COUNT + 0; /** * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.AccuracyImpl <em>Accuracy</em>}' class. @@ -589,7 +443,7 @@ public interface IPos_DatamodelPackage extends EPackage { * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getAccuracy() * @generated */ - int ACCURACY = 10; + int ACCURACY = 7; /** * The number of structural features of the '<em>Accuracy</em>' class. @@ -609,34 +463,6 @@ public interface IPos_DatamodelPackage extends EPackage { */ int ACCURACY_OPERATION_COUNT = 0; - /** - * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.PointImpl <em>Point</em>}' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.PointImpl - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getPoint() - * @generated - */ - int POINT = 21; - - /** - * The number of structural features of the '<em>Point</em>' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - * @ordered - */ - int POINT_FEATURE_COUNT = 0; - - /** - * The number of operations of the '<em>Point</em>' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - * @ordered - */ - int POINT_OPERATION_COUNT = 0; - /** * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.Point2DImpl <em>Point2 D</em>}' class. * <!-- begin-user-doc --> @@ -645,7 +471,7 @@ public interface IPos_DatamodelPackage extends EPackage { * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getPoint2D() * @generated */ - int POINT2_D = 11; + int POINT2_D = 8; /** * The feature id for the '<em><b>X</b></em>' attribute. @@ -691,7 +517,7 @@ public interface IPos_DatamodelPackage extends EPackage { * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getPoint3D() * @generated */ - int POINT3_D = 12; + int POINT3_D = 9; /** * The feature id for the '<em><b>X</b></em>' attribute. @@ -746,7 +572,7 @@ public interface IPos_DatamodelPackage extends EPackage { * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getReferenceSystem() * @generated */ - int REFERENCE_SYSTEM = 13; + int REFERENCE_SYSTEM = 10; /** * The feature id for the '<em><b>Origin</b></em>' reference. @@ -801,16 +627,16 @@ public interface IPos_DatamodelPackage extends EPackage { * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getZone() * @generated */ - int ZONE = 14; + int ZONE = 11; /** - * The feature id for the '<em><b>Origin</b></em>' reference. + * The feature id for the '<em><b>Space</b></em>' containment reference list. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated * @ordered */ - int ZONE__ORIGIN = REFERENCE_SYSTEM__ORIGIN; + int ZONE__SPACE = 0; /** * The feature id for the '<em><b>Name</b></em>' attribute. @@ -819,7 +645,7 @@ public interface IPos_DatamodelPackage extends EPackage { * @generated * @ordered */ - int ZONE__NAME = REFERENCE_SYSTEM__NAME; + int ZONE__NAME = 1; /** * The feature id for the '<em><b>Id</b></em>' attribute. @@ -828,16 +654,7 @@ public interface IPos_DatamodelPackage extends EPackage { * @generated * @ordered */ - int ZONE__ID = REFERENCE_SYSTEM__ID; - - /** - * The feature id for the '<em><b>Space</b></em>' containment reference list. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - * @ordered - */ - int ZONE__SPACE = REFERENCE_SYSTEM_FEATURE_COUNT + 0; + int ZONE__ID = 2; /** * The number of structural features of the '<em>Zone</em>' class. @@ -846,7 +663,7 @@ public interface IPos_DatamodelPackage extends EPackage { * @generated * @ordered */ - int ZONE_FEATURE_COUNT = REFERENCE_SYSTEM_FEATURE_COUNT + 1; + int ZONE_FEATURE_COUNT = 3; /** * The number of operations of the '<em>Zone</em>' class. @@ -855,7 +672,7 @@ public interface IPos_DatamodelPackage extends EPackage { * @generated * @ordered */ - int ZONE_OPERATION_COUNT = REFERENCE_SYSTEM_OPERATION_COUNT + 0; + int ZONE_OPERATION_COUNT = 0; /** * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.MapTypeImpl <em>Map Type</em>}' class. @@ -865,7 +682,7 @@ public interface IPos_DatamodelPackage extends EPackage { * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getMapType() * @generated */ - int MAP_TYPE = 17; + int MAP_TYPE = 14; /** * The number of structural features of the '<em>Map Type</em>' class. @@ -893,7 +710,7 @@ public interface IPos_DatamodelPackage extends EPackage { * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getZoneMap() * @generated */ - int ZONE_MAP = 15; + int ZONE_MAP = 12; /** * The feature id for the '<em><b>Zone</b></em>' containment reference list. @@ -930,7 +747,7 @@ public interface IPos_DatamodelPackage extends EPackage { * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getSpace() * @generated */ - int SPACE = 16; + int SPACE = 13; /** * The feature id for the '<em><b>X</b></em>' attribute. @@ -960,50 +777,31 @@ public interface IPos_DatamodelPackage extends EPackage { int SPACE__Z = 2; /** - * The number of structural features of the '<em>Space</em>' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - * @ordered - */ - int SPACE_FEATURE_COUNT = 3; - - /** - * The number of operations of the '<em>Space</em>' class. + * The feature id for the '<em><b>Centre Point</b></em>' reference. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated * @ordered */ - int SPACE_OPERATION_COUNT = 0; - - /** - * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.NetworkInterfaceImpl <em>Network Interface</em>}' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.NetworkInterfaceImpl - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getNetworkInterface() - * @generated - */ - int NETWORK_INTERFACE = 18; + int SPACE__CENTRE_POINT = 3; /** - * The number of structural features of the '<em>Network Interface</em>' class. + * The number of structural features of the '<em>Space</em>' class. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated * @ordered */ - int NETWORK_INTERFACE_FEATURE_COUNT = 0; + int SPACE_FEATURE_COUNT = 4; /** - * The number of operations of the '<em>Network Interface</em>' class. + * The number of operations of the '<em>Space</em>' class. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated * @ordered */ - int NETWORK_INTERFACE_OPERATION_COUNT = 0; + int SPACE_OPERATION_COUNT = 0; /** * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.QuaternionImpl <em>Quaternion</em>}' class. @@ -1013,7 +811,7 @@ public interface IPos_DatamodelPackage extends EPackage { * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getQuaternion() * @generated */ - int QUATERNION = 19; + int QUATERNION = 15; /** * The feature id for the '<em><b>X</b></em>' attribute. @@ -1077,7 +875,7 @@ public interface IPos_DatamodelPackage extends EPackage { * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getGaussian() * @generated */ - int GAUSSIAN = 20; + int GAUSSIAN = 16; /** * The feature id for the '<em><b>Confidence Interval</b></em>' attribute. @@ -1107,41 +905,41 @@ public interface IPos_DatamodelPackage extends EPackage { int GAUSSIAN_OPERATION_COUNT = ACCURACY_OPERATION_COUNT + 0; /** - * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.RawdataImpl <em>Rawdata</em>}' class. + * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.RawdataEventImpl <em>Rawdata Event</em>}' class. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.RawdataImpl - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getRawdata() + * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.RawdataEventImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getRawdataEvent() * @generated */ - int RAWDATA = 22; + int RAWDATA_EVENT = 18; /** - * The feature id for the '<em><b>Sensor Id</b></em>' attribute. + * The feature id for the '<em><b>Time Stamp</b></em>' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated * @ordered */ - int RAWDATA__SENSOR_ID = 0; + int RAWDATA_EVENT__TIME_STAMP = 0; /** - * The number of structural features of the '<em>Rawdata</em>' class. + * The number of structural features of the '<em>Rawdata Event</em>' class. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated * @ordered */ - int RAWDATA_FEATURE_COUNT = 1; + int RAWDATA_EVENT_FEATURE_COUNT = 1; /** - * The number of operations of the '<em>Rawdata</em>' class. + * The number of operations of the '<em>Rawdata Event</em>' class. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated * @ordered */ - int RAWDATA_OPERATION_COUNT = 0; + int RAWDATA_EVENT_OPERATION_COUNT = 0; /** * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.ProximityImpl <em>Proximity</em>}' class. @@ -1151,16 +949,16 @@ public interface IPos_DatamodelPackage extends EPackage { * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getProximity() * @generated */ - int PROXIMITY = 23; + int PROXIMITY = 19; /** - * The feature id for the '<em><b>Sensor Id</b></em>' attribute. + * The feature id for the '<em><b>Time Stamp</b></em>' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated * @ordered */ - int PROXIMITY__SENSOR_ID = RAWDATA__SENSOR_ID; + int PROXIMITY__TIME_STAMP = RAWDATA_EVENT__TIME_STAMP; /** * The feature id for the '<em><b>Tag Id</b></em>' attribute. @@ -1169,7 +967,7 @@ public interface IPos_DatamodelPackage extends EPackage { * @generated * @ordered */ - int PROXIMITY__TAG_ID = RAWDATA_FEATURE_COUNT + 0; + int PROXIMITY__TAG_ID = RAWDATA_EVENT_FEATURE_COUNT + 0; /** * The feature id for the '<em><b>Type</b></em>' attribute. @@ -1178,7 +976,7 @@ public interface IPos_DatamodelPackage extends EPackage { * @generated * @ordered */ - int PROXIMITY__TYPE = RAWDATA_FEATURE_COUNT + 1; + int PROXIMITY__TYPE = RAWDATA_EVENT_FEATURE_COUNT + 1; /** * The feature id for the '<em><b>Scanner Id</b></em>' attribute. @@ -1187,7 +985,7 @@ public interface IPos_DatamodelPackage extends EPackage { * @generated * @ordered */ - int PROXIMITY__SCANNER_ID = RAWDATA_FEATURE_COUNT + 2; + int PROXIMITY__SCANNER_ID = RAWDATA_EVENT_FEATURE_COUNT + 2; /** * The number of structural features of the '<em>Proximity</em>' class. @@ -1196,7 +994,7 @@ public interface IPos_DatamodelPackage extends EPackage { * @generated * @ordered */ - int PROXIMITY_FEATURE_COUNT = RAWDATA_FEATURE_COUNT + 3; + int PROXIMITY_FEATURE_COUNT = RAWDATA_EVENT_FEATURE_COUNT + 3; /** * The number of operations of the '<em>Proximity</em>' class. @@ -1205,7 +1003,7 @@ public interface IPos_DatamodelPackage extends EPackage { * @generated * @ordered */ - int PROXIMITY_OPERATION_COUNT = RAWDATA_OPERATION_COUNT + 0; + int PROXIMITY_OPERATION_COUNT = RAWDATA_EVENT_OPERATION_COUNT + 0; /** * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.RFIDImpl <em>RFID</em>}' class. @@ -1215,16 +1013,16 @@ public interface IPos_DatamodelPackage extends EPackage { * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getRFID() * @generated */ - int RFID = 24; + int RFID = 20; /** - * The feature id for the '<em><b>Sensor Id</b></em>' attribute. + * The feature id for the '<em><b>Time Stamp</b></em>' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated * @ordered */ - int RFID__SENSOR_ID = PROXIMITY__SENSOR_ID; + int RFID__TIME_STAMP = PROXIMITY__TIME_STAMP; /** * The feature id for the '<em><b>Tag Id</b></em>' attribute. @@ -1288,16 +1086,16 @@ public interface IPos_DatamodelPackage extends EPackage { * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getNFC() * @generated */ - int NFC = 25; + int NFC = 21; /** - * The feature id for the '<em><b>Sensor Id</b></em>' attribute. + * The feature id for the '<em><b>Time Stamp</b></em>' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated * @ordered */ - int NFC__SENSOR_ID = PROXIMITY__SENSOR_ID; + int NFC__TIME_STAMP = PROXIMITY__TIME_STAMP; /** * The feature id for the '<em><b>Tag Id</b></em>' attribute. @@ -1361,16 +1159,16 @@ public interface IPos_DatamodelPackage extends EPackage { * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getIMU() * @generated */ - int IMU = 26; + int IMU = 22; /** - * The feature id for the '<em><b>Sensor Id</b></em>' attribute. + * The feature id for the '<em><b>Time Stamp</b></em>' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated * @ordered */ - int IMU__SENSOR_ID = RAWDATA__SENSOR_ID; + int IMU__TIME_STAMP = RAWDATA_EVENT__TIME_STAMP; /** * The feature id for the '<em><b>Angularrate</b></em>' reference. @@ -1379,7 +1177,7 @@ public interface IPos_DatamodelPackage extends EPackage { * @generated * @ordered */ - int IMU__ANGULARRATE = RAWDATA_FEATURE_COUNT + 0; + int IMU__ANGULARRATE = RAWDATA_EVENT_FEATURE_COUNT + 0; /** * The feature id for the '<em><b>Acceleration</b></em>' reference. @@ -1388,7 +1186,16 @@ public interface IPos_DatamodelPackage extends EPackage { * @generated * @ordered */ - int IMU__ACCELERATION = RAWDATA_FEATURE_COUNT + 1; + int IMU__ACCELERATION = RAWDATA_EVENT_FEATURE_COUNT + 1; + + /** + * The feature id for the '<em><b>Sensor Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IMU__SENSOR_ID = RAWDATA_EVENT_FEATURE_COUNT + 2; /** * The number of structural features of the '<em>IMU</em>' class. @@ -1397,7 +1204,7 @@ public interface IPos_DatamodelPackage extends EPackage { * @generated * @ordered */ - int IMU_FEATURE_COUNT = RAWDATA_FEATURE_COUNT + 2; + int IMU_FEATURE_COUNT = RAWDATA_EVENT_FEATURE_COUNT + 3; /** * The number of operations of the '<em>IMU</em>' class. @@ -1406,45 +1213,44 @@ public interface IPos_DatamodelPackage extends EPackage { * @generated * @ordered */ - int IMU_OPERATION_COUNT = RAWDATA_OPERATION_COUNT + 0; + int IMU_OPERATION_COUNT = RAWDATA_EVENT_OPERATION_COUNT + 0; /** - * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.AngularRateImpl <em>Angular Rate</em>}' class. + * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.AccelerationImpl <em>Acceleration</em>}' class. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.AngularRateImpl - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getAngularRate() + * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.AccelerationImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getAcceleration() * @generated */ - int ANGULAR_RATE = 27; + int ACCELERATION = 23; /** - * The number of structural features of the '<em>Angular Rate</em>' class. + * The feature id for the '<em><b>X</b></em>' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated * @ordered */ - int ANGULAR_RATE_FEATURE_COUNT = 0; + int ACCELERATION__X = 0; /** - * The number of operations of the '<em>Angular Rate</em>' class. + * The feature id for the '<em><b>Y</b></em>' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated * @ordered */ - int ANGULAR_RATE_OPERATION_COUNT = 0; + int ACCELERATION__Y = 1; /** - * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.AccelerationImpl <em>Acceleration</em>}' class. + * The feature id for the '<em><b>Z</b></em>' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.AccelerationImpl - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getAcceleration() * @generated + * @ordered */ - int ACCELERATION = 28; + int ACCELERATION__Z = 2; /** * The number of structural features of the '<em>Acceleration</em>' class. @@ -1453,7 +1259,7 @@ public interface IPos_DatamodelPackage extends EPackage { * @generated * @ordered */ - int ACCELERATION_FEATURE_COUNT = 0; + int ACCELERATION_FEATURE_COUNT = 3; /** * The number of operations of the '<em>Acceleration</em>' class. @@ -1472,16 +1278,16 @@ public interface IPos_DatamodelPackage extends EPackage { * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getBeacon() * @generated */ - int BEACON = 29; + int BEACON = 24; /** - * The feature id for the '<em><b>Sensor Id</b></em>' attribute. + * The feature id for the '<em><b>Time Stamp</b></em>' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated * @ordered */ - int BEACON__SENSOR_ID = RAWDATA__SENSOR_ID; + int BEACON__TIME_STAMP = RAWDATA_EVENT__TIME_STAMP; /** * The feature id for the '<em><b>Distances</b></em>' attribute. @@ -1490,7 +1296,7 @@ public interface IPos_DatamodelPackage extends EPackage { * @generated * @ordered */ - int BEACON__DISTANCES = RAWDATA_FEATURE_COUNT + 0; + int BEACON__DISTANCES = RAWDATA_EVENT_FEATURE_COUNT + 0; /** * The feature id for the '<em><b>Type</b></em>' attribute. @@ -1499,7 +1305,16 @@ public interface IPos_DatamodelPackage extends EPackage { * @generated * @ordered */ - int BEACON__TYPE = RAWDATA_FEATURE_COUNT + 1; + int BEACON__TYPE = RAWDATA_EVENT_FEATURE_COUNT + 1; + + /** + * The feature id for the '<em><b>Sensor Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int BEACON__SENSOR_ID = RAWDATA_EVENT_FEATURE_COUNT + 2; /** * The number of structural features of the '<em>Beacon</em>' class. @@ -1508,7 +1323,7 @@ public interface IPos_DatamodelPackage extends EPackage { * @generated * @ordered */ - int BEACON_FEATURE_COUNT = RAWDATA_FEATURE_COUNT + 2; + int BEACON_FEATURE_COUNT = RAWDATA_EVENT_FEATURE_COUNT + 3; /** * The number of operations of the '<em>Beacon</em>' class. @@ -1517,7 +1332,7 @@ public interface IPos_DatamodelPackage extends EPackage { * @generated * @ordered */ - int BEACON_OPERATION_COUNT = RAWDATA_OPERATION_COUNT + 0; + int BEACON_OPERATION_COUNT = RAWDATA_EVENT_OPERATION_COUNT + 0; /** * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.PositionEventImpl <em>Position Event</em>}' class. @@ -1527,192 +1342,61 @@ public interface IPos_DatamodelPackage extends EPackage { * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getPositionEvent() * @generated */ - int POSITION_EVENT = 30; + int POSITION_EVENT = 25; /** - * The feature id for the '<em><b>Placing</b></em>' reference. + * The feature id for the '<em><b>Time Stamp</b></em>' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated * @ordered */ - int POSITION_EVENT__PLACING = 0; + int POSITION_EVENT__TIME_STAMP = 0; /** - * The feature id for the '<em><b>Time Stamp</b></em>' attribute. + * The feature id for the '<em><b>LObject Id</b></em>' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated * @ordered */ - int POSITION_EVENT__TIME_STAMP = 1; + int POSITION_EVENT__LOBJECT_ID = 1; /** - * The number of structural features of the '<em>Position Event</em>' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - * @ordered - */ - int POSITION_EVENT_FEATURE_COUNT = 2; - - /** - * The number of operations of the '<em>Position Event</em>' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - * @ordered - */ - int POSITION_EVENT_OPERATION_COUNT = 0; - - /** - * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.RawdataEventImpl <em>Rawdata Event</em>}' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.RawdataEventImpl - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getRawdataEvent() - * @generated - */ - int RAWDATA_EVENT = 31; - - /** - * The feature id for the '<em><b>Rawdata</b></em>' reference list. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - * @ordered - */ - int RAWDATA_EVENT__RAWDATA = 0; - - /** - * The number of structural features of the '<em>Rawdata Event</em>' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - * @ordered - */ - int RAWDATA_EVENT_FEATURE_COUNT = 1; - - /** - * The number of operations of the '<em>Rawdata Event</em>' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - * @ordered - */ - int RAWDATA_EVENT_OPERATION_COUNT = 0; - - /** - * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.TrackingRequestImpl <em>Tracking Request</em>}' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.TrackingRequestImpl - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getTrackingRequest() - * @generated - */ - int TRACKING_REQUEST = 32; - - /** - * The number of structural features of the '<em>Tracking Request</em>' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - * @ordered - */ - int TRACKING_REQUEST_FEATURE_COUNT = 0; - - /** - * The number of operations of the '<em>Tracking Request</em>' class. + * The feature id for the '<em><b>Zonedescriptors</b></em>' reference list. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated * @ordered */ - int TRACKING_REQUEST_OPERATION_COUNT = 0; + int POSITION_EVENT__ZONEDESCRIPTORS = 2; /** - * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.MonitoringRequestImpl <em>Monitoring Request</em>}' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.MonitoringRequestImpl - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getMonitoringRequest() - * @generated - */ - int MONITORING_REQUEST = 33; - - /** - * The number of structural features of the '<em>Monitoring Request</em>' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - * @ordered - */ - int MONITORING_REQUEST_FEATURE_COUNT = 0; - - /** - * The number of operations of the '<em>Monitoring Request</em>' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - * @ordered - */ - int MONITORING_REQUEST_OPERATION_COUNT = 0; - - /** - * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.WorldModelUpdateRequestImpl <em>World Model Update Request</em>}' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.WorldModelUpdateRequestImpl - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getWorldModelUpdateRequest() - * @generated - */ - int WORLD_MODEL_UPDATE_REQUEST = 34; - - /** - * The number of structural features of the '<em>World Model Update Request</em>' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - * @ordered - */ - int WORLD_MODEL_UPDATE_REQUEST_FEATURE_COUNT = 0; - - /** - * The number of operations of the '<em>World Model Update Request</em>' class. + * The feature id for the '<em><b>Placing</b></em>' reference. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated * @ordered */ - int WORLD_MODEL_UPDATE_REQUEST_OPERATION_COUNT = 0; - - /** - * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.DataStorageRequestImpl <em>Data Storage Request</em>}' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.DataStorageRequestImpl - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getDataStorageRequest() - * @generated - */ - int DATA_STORAGE_REQUEST = 35; + int POSITION_EVENT__PLACING = 3; /** - * The number of structural features of the '<em>Data Storage Request</em>' class. + * The number of structural features of the '<em>Position Event</em>' class. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated * @ordered */ - int DATA_STORAGE_REQUEST_FEATURE_COUNT = 0; + int POSITION_EVENT_FEATURE_COUNT = 4; /** - * The number of operations of the '<em>Data Storage Request</em>' class. + * The number of operations of the '<em>Position Event</em>' class. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated * @ordered */ - int DATA_STORAGE_REQUEST_OPERATION_COUNT = 0; + int POSITION_EVENT_OPERATION_COUNT = 0; /** * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.EventFilterConfigurationImpl <em>Event Filter Configuration</em>}' class. @@ -1722,7 +1406,7 @@ public interface IPos_DatamodelPackage extends EPackage { * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getEventFilterConfiguration() * @generated */ - int EVENT_FILTER_CONFIGURATION = 36; + int EVENT_FILTER_CONFIGURATION = 26; /** * The feature id for the '<em><b>Position Ambiguity Strategy</b></em>' attribute. @@ -1778,90 +1462,6 @@ public interface IPos_DatamodelPackage extends EPackage { */ int EVENT_FILTER_CONFIGURATION_OPERATION_COUNT = 0; - /** - * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.WorldModelQueryRequestImpl <em>World Model Query Request</em>}' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.WorldModelQueryRequestImpl - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getWorldModelQueryRequest() - * @generated - */ - int WORLD_MODEL_QUERY_REQUEST = 37; - - /** - * The number of structural features of the '<em>World Model Query Request</em>' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - * @ordered - */ - int WORLD_MODEL_QUERY_REQUEST_FEATURE_COUNT = 0; - - /** - * The number of operations of the '<em>World Model Query Request</em>' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - * @ordered - */ - int WORLD_MODEL_QUERY_REQUEST_OPERATION_COUNT = 0; - - /** - * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.DataStorageQueryRequestImpl <em>Data Storage Query Request</em>}' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.DataStorageQueryRequestImpl - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getDataStorageQueryRequest() - * @generated - */ - int DATA_STORAGE_QUERY_REQUEST = 38; - - /** - * The number of structural features of the '<em>Data Storage Query Request</em>' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - * @ordered - */ - int DATA_STORAGE_QUERY_REQUEST_FEATURE_COUNT = 0; - - /** - * The number of operations of the '<em>Data Storage Query Request</em>' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - * @ordered - */ - int DATA_STORAGE_QUERY_REQUEST_OPERATION_COUNT = 0; - - /** - * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.AgentRegistrationRequestImpl <em>Agent Registration Request</em>}' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.AgentRegistrationRequestImpl - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getAgentRegistrationRequest() - * @generated - */ - int AGENT_REGISTRATION_REQUEST = 39; - - /** - * The number of structural features of the '<em>Agent Registration Request</em>' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - * @ordered - */ - int AGENT_REGISTRATION_REQUEST_FEATURE_COUNT = 0; - - /** - * The number of operations of the '<em>Agent Registration Request</em>' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - * @ordered - */ - int AGENT_REGISTRATION_REQUEST_OPERATION_COUNT = 0; - /** * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.MonitoringTaskImpl <em>Monitoring Task</em>}' class. * <!-- begin-user-doc --> @@ -1870,7 +1470,7 @@ public interface IPos_DatamodelPackage extends EPackage { * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getMonitoringTask() * @generated */ - int MONITORING_TASK = 40; + int MONITORING_TASK = 27; /** * The feature id for the '<em><b>Eventfilterconfiguration</b></em>' reference. @@ -1907,7 +1507,7 @@ public interface IPos_DatamodelPackage extends EPackage { * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getTrackingTask() * @generated */ - int TRACKING_TASK = 41; + int TRACKING_TASK = 28; /** * The feature id for the '<em><b>Eventfilterconfiguration</b></em>' reference. @@ -1944,7 +1544,7 @@ public interface IPos_DatamodelPackage extends EPackage { * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getWorldModel() * @generated */ - int WORLD_MODEL = 42; + int WORLD_MODEL = 29; /** * The feature id for the '<em><b>Agent</b></em>' reference list. @@ -1956,13 +1556,31 @@ public interface IPos_DatamodelPackage extends EPackage { int WORLD_MODEL__AGENT = 0; /** - * The feature id for the '<em><b>Zonemap</b></em>' reference list. + * The feature id for the '<em><b>Zone Map</b></em>' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int WORLD_MODEL__ZONE_MAP = 1; + + /** + * The feature id for the '<em><b>Pois</b></em>' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int WORLD_MODEL__POIS = 2; + + /** + * The feature id for the '<em><b>Reference System</b></em>' reference list. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated * @ordered */ - int WORLD_MODEL__ZONEMAP = 1; + int WORLD_MODEL__REFERENCE_SYSTEM = 3; /** * The number of structural features of the '<em>World Model</em>' class. @@ -1971,7 +1589,7 @@ public interface IPos_DatamodelPackage extends EPackage { * @generated * @ordered */ - int WORLD_MODEL_FEATURE_COUNT = 2; + int WORLD_MODEL_FEATURE_COUNT = 4; /** * The number of operations of the '<em>World Model</em>' class. @@ -1990,16 +1608,16 @@ public interface IPos_DatamodelPackage extends EPackage { * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getBarcode() * @generated */ - int BARCODE = 43; + int BARCODE = 30; /** - * The feature id for the '<em><b>Sensor Id</b></em>' attribute. + * The feature id for the '<em><b>Time Stamp</b></em>' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated * @ordered */ - int BARCODE__SENSOR_ID = PROXIMITY__SENSOR_ID; + int BARCODE__TIME_STAMP = PROXIMITY__TIME_STAMP; /** * The feature id for the '<em><b>Tag Id</b></em>' attribute. @@ -2054,16 +1672,16 @@ public interface IPos_DatamodelPackage extends EPackage { * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getOtherProx() * @generated */ - int OTHER_PROX = 44; + int OTHER_PROX = 31; /** - * The feature id for the '<em><b>Sensor Id</b></em>' attribute. + * The feature id for the '<em><b>Time Stamp</b></em>' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated * @ordered */ - int OTHER_PROX__SENSOR_ID = PROXIMITY__SENSOR_ID; + int OTHER_PROX__TIME_STAMP = PROXIMITY__TIME_STAMP; /** * The feature id for the '<em><b>Tag Id</b></em>' attribute. @@ -2127,16 +1745,16 @@ public interface IPos_DatamodelPackage extends EPackage { * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getBluetooth() * @generated */ - int BLUETOOTH = 45; + int BLUETOOTH = 32; /** - * The feature id for the '<em><b>Sensor Id</b></em>' attribute. + * The feature id for the '<em><b>Time Stamp</b></em>' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated * @ordered */ - int BLUETOOTH__SENSOR_ID = BEACON__SENSOR_ID; + int BLUETOOTH__TIME_STAMP = BEACON__TIME_STAMP; /** * The feature id for the '<em><b>Distances</b></em>' attribute. @@ -2156,6 +1774,15 @@ public interface IPos_DatamodelPackage extends EPackage { */ int BLUETOOTH__TYPE = BEACON__TYPE; + /** + * The feature id for the '<em><b>Sensor Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int BLUETOOTH__SENSOR_ID = BEACON__SENSOR_ID; + /** * The feature id for the '<em><b>Rss</b></em>' attribute. * <!-- begin-user-doc --> @@ -2191,16 +1818,16 @@ public interface IPos_DatamodelPackage extends EPackage { * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getUWB() * @generated */ - int UWB = 46; + int UWB = 33; /** - * The feature id for the '<em><b>Sensor Id</b></em>' attribute. + * The feature id for the '<em><b>Time Stamp</b></em>' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated * @ordered */ - int UWB__SENSOR_ID = BEACON__SENSOR_ID; + int UWB__TIME_STAMP = BEACON__TIME_STAMP; /** * The feature id for the '<em><b>Distances</b></em>' attribute. @@ -2221,50 +1848,31 @@ public interface IPos_DatamodelPackage extends EPackage { int UWB__TYPE = BEACON__TYPE; /** - * The number of structural features of the '<em>UWB</em>' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - * @ordered - */ - int UWB_FEATURE_COUNT = BEACON_FEATURE_COUNT + 0; - - /** - * The number of operations of the '<em>UWB</em>' class. + * The feature id for the '<em><b>Sensor Id</b></em>' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated * @ordered */ - int UWB_OPERATION_COUNT = BEACON_OPERATION_COUNT + 0; - - /** - * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.SensorConfigurationRequestImpl <em>Sensor Configuration Request</em>}' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.SensorConfigurationRequestImpl - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getSensorConfigurationRequest() - * @generated - */ - int SENSOR_CONFIGURATION_REQUEST = 47; + int UWB__SENSOR_ID = BEACON__SENSOR_ID; /** - * The number of structural features of the '<em>Sensor Configuration Request</em>' class. + * The number of structural features of the '<em>UWB</em>' class. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated * @ordered */ - int SENSOR_CONFIGURATION_REQUEST_FEATURE_COUNT = 0; + int UWB_FEATURE_COUNT = BEACON_FEATURE_COUNT + 0; /** - * The number of operations of the '<em>Sensor Configuration Request</em>' class. + * The number of operations of the '<em>UWB</em>' class. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated * @ordered */ - int SENSOR_CONFIGURATION_REQUEST_OPERATION_COUNT = 0; + int UWB_OPERATION_COUNT = BEACON_OPERATION_COUNT + 0; /** * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.OtherBeaconImpl <em>Other Beacon</em>}' class. @@ -2274,16 +1882,16 @@ public interface IPos_DatamodelPackage extends EPackage { * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getOtherBeacon() * @generated */ - int OTHER_BEACON = 48; + int OTHER_BEACON = 34; /** - * The feature id for the '<em><b>Sensor Id</b></em>' attribute. + * The feature id for the '<em><b>Time Stamp</b></em>' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated * @ordered */ - int OTHER_BEACON__SENSOR_ID = BEACON__SENSOR_ID; + int OTHER_BEACON__TIME_STAMP = BEACON__TIME_STAMP; /** * The feature id for the '<em><b>Distances</b></em>' attribute. @@ -2303,6 +1911,15 @@ public interface IPos_DatamodelPackage extends EPackage { */ int OTHER_BEACON__TYPE = BEACON__TYPE; + /** + * The feature id for the '<em><b>Sensor Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int OTHER_BEACON__SENSOR_ID = BEACON__SENSOR_ID; + /** * The feature id for the '<em><b>Data</b></em>' attribute. * <!-- begin-user-doc --> @@ -2331,87 +1948,87 @@ public interface IPos_DatamodelPackage extends EPackage { int OTHER_BEACON_OPERATION_COUNT = BEACON_OPERATION_COUNT + 0; /** - * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.ReferencePositionImpl <em>Reference Position</em>}' class. + * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.POIImpl <em>POI</em>}' class. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.ReferencePositionImpl - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getReferencePosition() + * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.POIImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getPOI() * @generated */ - int REFERENCE_POSITION = 49; + int POI = 35; /** - * The feature id for the '<em><b>Position</b></em>' reference. + * The feature id for the '<em><b>Placing</b></em>' reference. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated * @ordered */ - int REFERENCE_POSITION__POSITION = 0; + int POI__PLACING = 0; /** - * The feature id for the '<em><b>Id</b></em>' attribute. + * The feature id for the '<em><b>Description</b></em>' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated * @ordered */ - int REFERENCE_POSITION__ID = 1; + int POI__DESCRIPTION = 1; /** - * The number of structural features of the '<em>Reference Position</em>' class. + * The feature id for the '<em><b>Data</b></em>' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated * @ordered */ - int REFERENCE_POSITION_FEATURE_COUNT = 2; + int POI__DATA = 2; /** - * The number of operations of the '<em>Reference Position</em>' class. + * The feature id for the '<em><b>Id</b></em>' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated * @ordered */ - int REFERENCE_POSITION_OPERATION_COUNT = 0; + int POI__ID = 3; /** - * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.EventFilterConditionImpl <em>Event Filter Condition</em>}' class. + * The number of structural features of the '<em>POI</em>' class. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.EventFilterConditionImpl - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getEventFilterCondition() * @generated + * @ordered */ - int EVENT_FILTER_CONDITION = 50; + int POI_FEATURE_COUNT = 4; /** - * The feature id for the '<em><b>Time Condition</b></em>' attribute. + * The number of operations of the '<em>POI</em>' class. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated * @ordered */ - int EVENT_FILTER_CONDITION__TIME_CONDITION = 0; + int POI_OPERATION_COUNT = 0; /** - * The feature id for the '<em><b>Category Condition</b></em>' attribute. + * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.EventFilterConditionImpl <em>Event Filter Condition</em>}' class. * <!-- begin-user-doc --> * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.EventFilterConditionImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getEventFilterCondition() * @generated - * @ordered */ - int EVENT_FILTER_CONDITION__CATEGORY_CONDITION = 1; + int EVENT_FILTER_CONDITION = 36; /** - * The feature id for the '<em><b>Id Condition</b></em>' attribute. + * The feature id for the '<em><b>Time Condition</b></em>' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated * @ordered */ - int EVENT_FILTER_CONDITION__ID_CONDITION = 2; + int EVENT_FILTER_CONDITION__TIME_CONDITION = 0; /** * The feature id for the '<em><b>Accuracy Condition</b></em>' attribute. @@ -2420,7 +2037,7 @@ public interface IPos_DatamodelPackage extends EPackage { * @generated * @ordered */ - int EVENT_FILTER_CONDITION__ACCURACY_CONDITION = 3; + int EVENT_FILTER_CONDITION__ACCURACY_CONDITION = 1; /** * The feature id for the '<em><b>Position Condition</b></em>' attribute. @@ -2429,7 +2046,7 @@ public interface IPos_DatamodelPackage extends EPackage { * @generated * @ordered */ - int EVENT_FILTER_CONDITION__POSITION_CONDITION = 4; + int EVENT_FILTER_CONDITION__POSITION_CONDITION = 2; /** * The feature id for the '<em><b>Time Min Interval</b></em>' attribute. @@ -2438,7 +2055,7 @@ public interface IPos_DatamodelPackage extends EPackage { * @generated * @ordered */ - int EVENT_FILTER_CONDITION__TIME_MIN_INTERVAL = 5; + int EVENT_FILTER_CONDITION__TIME_MIN_INTERVAL = 3; /** * The feature id for the '<em><b>Position Delta</b></em>' attribute. @@ -2447,7 +2064,7 @@ public interface IPos_DatamodelPackage extends EPackage { * @generated * @ordered */ - int EVENT_FILTER_CONDITION__POSITION_DELTA = 6; + int EVENT_FILTER_CONDITION__POSITION_DELTA = 4; /** * The feature id for the '<em><b>Sensor Id Condition</b></em>' attribute. @@ -2456,7 +2073,7 @@ public interface IPos_DatamodelPackage extends EPackage { * @generated * @ordered */ - int EVENT_FILTER_CONDITION__SENSOR_ID_CONDITION = 7; + int EVENT_FILTER_CONDITION__SENSOR_ID_CONDITION = 5; /** * The feature id for the '<em><b>Filter Structure</b></em>' attribute. @@ -2465,25 +2082,52 @@ public interface IPos_DatamodelPackage extends EPackage { * @generated * @ordered */ - int EVENT_FILTER_CONDITION__FILTER_STRUCTURE = 8; + int EVENT_FILTER_CONDITION__FILTER_STRUCTURE = 6; /** - * The feature id for the '<em><b>Position Condition Cell</b></em>' attribute. + * The feature id for the '<em><b>Position Condition Cells</b></em>' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated * @ordered */ - int EVENT_FILTER_CONDITION__POSITION_CONDITION_CELL = 9; + int EVENT_FILTER_CONDITION__POSITION_CONDITION_CELLS = 7; /** - * The number of structural features of the '<em>Event Filter Condition</em>' class. + * The feature id for the '<em><b>Id Condition</b></em>' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated * @ordered */ - int EVENT_FILTER_CONDITION_FEATURE_COUNT = 10; + int EVENT_FILTER_CONDITION__ID_CONDITION = 8; + + /** + * The feature id for the '<em><b>Category Condition</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int EVENT_FILTER_CONDITION__CATEGORY_CONDITION = 9; + + /** + * The feature id for the '<em><b>Property Condition</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int EVENT_FILTER_CONDITION__PROPERTY_CONDITION = 10; + + /** + * The number of structural features of the '<em>Event Filter Condition</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int EVENT_FILTER_CONDITION_FEATURE_COUNT = 11; /** * The number of operations of the '<em>Event Filter Condition</em>' class. @@ -2494,6 +2138,171 @@ public interface IPos_DatamodelPackage extends EPackage { */ int EVENT_FILTER_CONDITION_OPERATION_COUNT = 0; + /** + * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.ZoneDescriptorImpl <em>Zone Descriptor</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.ZoneDescriptorImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getZoneDescriptor() + * @generated + */ + int ZONE_DESCRIPTOR = 37; + + /** + * The feature id for the '<em><b>Zone Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ZONE_DESCRIPTOR__ZONE_ID = 0; + + /** + * The feature id for the '<em><b>Notification Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ZONE_DESCRIPTOR__NOTIFICATION_TYPE = 1; + + /** + * The number of structural features of the '<em>Zone Descriptor</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ZONE_DESCRIPTOR_FEATURE_COUNT = 2; + + /** + * The number of operations of the '<em>Zone Descriptor</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ZONE_DESCRIPTOR_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.DataStorageQueryResponseImpl <em>Data Storage Query Response</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.DataStorageQueryResponseImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getDataStorageQueryResponse() + * @generated + */ + int DATA_STORAGE_QUERY_RESPONSE = 38; + + /** + * The feature id for the '<em><b>Position Events</b></em>' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int DATA_STORAGE_QUERY_RESPONSE__POSITION_EVENTS = 0; + + /** + * The feature id for the '<em><b>Tracking Task Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int DATA_STORAGE_QUERY_RESPONSE__TRACKING_TASK_ID = 1; + + /** + * The number of structural features of the '<em>Data Storage Query Response</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int DATA_STORAGE_QUERY_RESPONSE_FEATURE_COUNT = 2; + + /** + * The number of operations of the '<em>Data Storage Query Response</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int DATA_STORAGE_QUERY_RESPONSE_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.MessageReceivedEventImpl <em>Message Received Event</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.MessageReceivedEventImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getMessageReceivedEvent() + * @generated + */ + int MESSAGE_RECEIVED_EVENT = 39; + + /** + * The feature id for the '<em><b>Protocol Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int MESSAGE_RECEIVED_EVENT__PROTOCOL_NAME = 0; + + /** + * The feature id for the '<em><b>Serialized Msg</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int MESSAGE_RECEIVED_EVENT__SERIALIZED_MSG = 1; + + /** + * The feature id for the '<em><b>Agent Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int MESSAGE_RECEIVED_EVENT__AGENT_ID = 2; + + /** + * The feature id for the '<em><b>Extracted Attributes</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int MESSAGE_RECEIVED_EVENT__EXTRACTED_ATTRIBUTES = 3; + + /** + * The feature id for the '<em><b>Timestamp</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int MESSAGE_RECEIVED_EVENT__TIMESTAMP = 4; + + /** + * The number of structural features of the '<em>Message Received Event</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int MESSAGE_RECEIVED_EVENT_FEATURE_COUNT = 5; + + /** + * The number of operations of the '<em>Message Received Event</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int MESSAGE_RECEIVED_EVENT_OPERATION_COUNT = 0; + /** * The meta object id for the '<em>String List</em>' data type. * <!-- begin-user-doc --> @@ -2502,7 +2311,7 @@ public interface IPos_DatamodelPackage extends EPackage { * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getStringList() * @generated */ - int STRING_LIST = 51; + int STRING_LIST = 40; /** * The meta object id for the '<em>String Array</em>' data type. @@ -2511,7 +2320,7 @@ public interface IPos_DatamodelPackage extends EPackage { * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getStringArray() * @generated */ - int STRING_ARRAY = 52; + int STRING_ARRAY = 41; /** * The meta object id for the '<em>Float Array3d</em>' data type. @@ -2520,7 +2329,7 @@ public interface IPos_DatamodelPackage extends EPackage { * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getFloatArray3d() * @generated */ - int FLOAT_ARRAY3D = 53; + int FLOAT_ARRAY3D = 42; /** * The meta object id for the '<em>Boolean List</em>' data type. @@ -2529,7 +2338,7 @@ public interface IPos_DatamodelPackage extends EPackage { * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getBooleanList() * @generated */ - int BOOLEAN_LIST = 54; + int BOOLEAN_LIST = 43; /** * The meta object id for the '<em>Float Array</em>' data type. @@ -2538,61 +2347,67 @@ public interface IPos_DatamodelPackage extends EPackage { * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getFloatArray() * @generated */ - int FLOAT_ARRAY = 55; + int FLOAT_ARRAY = 44; /** - * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.Agent <em>Agent</em>}'. + * The meta object id for the '<em>Byte Array</em>' data type. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @return the meta object for class '<em>Agent</em>'. - * @see ipos.project.DataModellntegration.iPos_Datamodel.Agent + * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getByteArray() * @generated */ - EClass getAgent(); + int BYTE_ARRAY = 45; /** - * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.Agent#getName <em>Name</em>}'. + * The meta object id for the '<em>List Of String Maps</em>' data type. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @return the meta object for the attribute '<em>Name</em>'. - * @see ipos.project.DataModellntegration.iPos_Datamodel.Agent#getName() - * @see #getAgent() + * @see java.util.LinkedList + * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getListOfStringMaps() * @generated */ - EAttribute getAgent_Name(); + int LIST_OF_STRING_MAPS = 46; /** - * Returns the meta object for the reference list '{@link ipos.project.DataModellntegration.iPos_Datamodel.Agent#getLObject <em>LObject</em>}'. + * The meta object id for the '<em>Int Array</em>' data type. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @return the meta object for the reference list '<em>LObject</em>'. - * @see ipos.project.DataModellntegration.iPos_Datamodel.Agent#getLObject() - * @see #getAgent() + * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getIntArray() * @generated */ - EReference getAgent_LObject(); + int INT_ARRAY = 47; + + /** + * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.Agent <em>Agent</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Agent</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.Agent + * @generated + */ + EClass getAgent(); /** - * Returns the meta object for the reference '{@link ipos.project.DataModellntegration.iPos_Datamodel.Agent#getNetInt <em>Net Int</em>}'. + * Returns the meta object for the reference list '{@link ipos.project.DataModellntegration.iPos_Datamodel.Agent#getLObject <em>LObject</em>}'. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @return the meta object for the reference '<em>Net Int</em>'. - * @see ipos.project.DataModellntegration.iPos_Datamodel.Agent#getNetInt() + * @return the meta object for the reference list '<em>LObject</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.Agent#getLObject() * @see #getAgent() * @generated */ - EReference getAgent_NetInt(); + EReference getAgent_LObject(); /** - * Returns the meta object for the reference list '{@link ipos.project.DataModellntegration.iPos_Datamodel.Agent#getPSensors <em>PSensors</em>}'. + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.Agent#getAgentType <em>Agent Type</em>}'. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @return the meta object for the reference list '<em>PSensors</em>'. - * @see ipos.project.DataModellntegration.iPos_Datamodel.Agent#getPSensors() + * @return the meta object for the attribute '<em>Agent Type</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.Agent#getAgentType() * @see #getAgent() * @generated */ - EReference getAgent_PSensors(); + EAttribute getAgent_AgentType(); /** * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.Entity <em>Entity</em>}'. @@ -2625,28 +2440,6 @@ public interface IPos_DatamodelPackage extends EPackage { */ EClass getLocalizableObject(); - /** - * Returns the meta object for the reference '{@link ipos.project.DataModellntegration.iPos_Datamodel.LocalizableObject#getPSensor <em>PSensor</em>}'. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return the meta object for the reference '<em>PSensor</em>'. - * @see ipos.project.DataModellntegration.iPos_Datamodel.LocalizableObject#getPSensor() - * @see #getLocalizableObject() - * @generated - */ - EReference getLocalizableObject_PSensor(); - - /** - * Returns the meta object for the reference '{@link ipos.project.DataModellntegration.iPos_Datamodel.LocalizableObject#getCurrentPlacing <em>Current Placing</em>}'. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return the meta object for the reference '<em>Current Placing</em>'. - * @see ipos.project.DataModellntegration.iPos_Datamodel.LocalizableObject#getCurrentPlacing() - * @see #getLocalizableObject() - * @generated - */ - EReference getLocalizableObject_CurrentPlacing(); - /** * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.LocalizableObject#getLastPosUpdate <em>Last Pos Update</em>}'. * <!-- begin-user-doc --> @@ -2659,58 +2452,37 @@ public interface IPos_DatamodelPackage extends EPackage { EAttribute getLocalizableObject_LastPosUpdate(); /** - * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.LocalizableObject#getType <em>Type</em>}'. + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.LocalizableObject#getSensorType <em>Sensor Type</em>}'. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @return the meta object for the attribute '<em>Type</em>'. - * @see ipos.project.DataModellntegration.iPos_Datamodel.LocalizableObject#getType() + * @return the meta object for the attribute '<em>Sensor Type</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.LocalizableObject#getSensorType() * @see #getLocalizableObject() * @generated */ - EAttribute getLocalizableObject_Type(); - - /** - * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.PositionSensor <em>Position Sensor</em>}'. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return the meta object for class '<em>Position Sensor</em>'. - * @see ipos.project.DataModellntegration.iPos_Datamodel.PositionSensor - * @generated - */ - EClass getPositionSensor(); + EAttribute getLocalizableObject_SensorType(); /** - * Returns the meta object for the reference '{@link ipos.project.DataModellntegration.iPos_Datamodel.PositionSensor#getAgent <em>Agent</em>}'. + * Returns the meta object for the reference '{@link ipos.project.DataModellntegration.iPos_Datamodel.LocalizableObject#getAgent <em>Agent</em>}'. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @return the meta object for the reference '<em>Agent</em>'. - * @see ipos.project.DataModellntegration.iPos_Datamodel.PositionSensor#getAgent() - * @see #getPositionSensor() - * @generated - */ - EReference getPositionSensor_Agent(); - - /** - * Returns the meta object for the reference '{@link ipos.project.DataModellntegration.iPos_Datamodel.PositionSensor#getLObject <em>LObject</em>}'. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return the meta object for the reference '<em>LObject</em>'. - * @see ipos.project.DataModellntegration.iPos_Datamodel.PositionSensor#getLObject() - * @see #getPositionSensor() + * @see ipos.project.DataModellntegration.iPos_Datamodel.LocalizableObject#getAgent() + * @see #getLocalizableObject() * @generated */ - EReference getPositionSensor_LObject(); + EReference getLocalizableObject_Agent(); /** - * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.PositionSensor#getType <em>Type</em>}'. + * Returns the meta object for the reference '{@link ipos.project.DataModellntegration.iPos_Datamodel.LocalizableObject#getCurrentPlacing <em>Current Placing</em>}'. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @return the meta object for the attribute '<em>Type</em>'. - * @see ipos.project.DataModellntegration.iPos_Datamodel.PositionSensor#getType() - * @see #getPositionSensor() + * @return the meta object for the reference '<em>Current Placing</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.LocalizableObject#getCurrentPlacing() + * @see #getLocalizableObject() * @generated */ - EAttribute getPositionSensor_Type(); + EReference getLocalizableObject_CurrentPlacing(); /** * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.Placing <em>Placing</em>}'. @@ -2722,17 +2494,6 @@ public interface IPos_DatamodelPackage extends EPackage { */ EClass getPlacing(); - /** - * Returns the meta object for the reference '{@link ipos.project.DataModellntegration.iPos_Datamodel.Placing#getLObject <em>LObject</em>}'. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return the meta object for the reference '<em>LObject</em>'. - * @see ipos.project.DataModellntegration.iPos_Datamodel.Placing#getLObject() - * @see #getPlacing() - * @generated - */ - EReference getPlacing_LObject(); - /** * Returns the meta object for the reference '{@link ipos.project.DataModellntegration.iPos_Datamodel.Placing#getPosition <em>Position</em>}'. * <!-- begin-user-doc --> @@ -2777,67 +2538,36 @@ public interface IPos_DatamodelPackage extends EPackage { EReference getPosition_Accuracy(); /** - * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.Orientation <em>Orientation</em>}'. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return the meta object for class '<em>Orientation</em>'. - * @see ipos.project.DataModellntegration.iPos_Datamodel.Orientation - * @generated - */ - EClass getOrientation(); - - /** - * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.AbsolutePosition <em>Absolute Position</em>}'. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return the meta object for class '<em>Absolute Position</em>'. - * @see ipos.project.DataModellntegration.iPos_Datamodel.AbsolutePosition - * @generated - */ - EClass getAbsolutePosition(); - - /** - * Returns the meta object for the reference '{@link ipos.project.DataModellntegration.iPos_Datamodel.AbsolutePosition#getPoint <em>Point</em>}'. + * Returns the meta object for the reference '{@link ipos.project.DataModellntegration.iPos_Datamodel.Position#getPoint <em>Point</em>}'. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @return the meta object for the reference '<em>Point</em>'. - * @see ipos.project.DataModellntegration.iPos_Datamodel.AbsolutePosition#getPoint() - * @see #getAbsolutePosition() - * @generated - */ - EReference getAbsolutePosition_Point(); - - /** - * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.RelativePosition <em>Relative Position</em>}'. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return the meta object for class '<em>Relative Position</em>'. - * @see ipos.project.DataModellntegration.iPos_Datamodel.RelativePosition + * @see ipos.project.DataModellntegration.iPos_Datamodel.Position#getPoint() + * @see #getPosition() * @generated */ - EClass getRelativePosition(); + EReference getPosition_Point(); /** - * Returns the meta object for the reference '{@link ipos.project.DataModellntegration.iPos_Datamodel.RelativePosition#getReference <em>Reference</em>}'. + * Returns the meta object for the reference '{@link ipos.project.DataModellntegration.iPos_Datamodel.Position#getReferenceSystem <em>Reference System</em>}'. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @return the meta object for the reference '<em>Reference</em>'. - * @see ipos.project.DataModellntegration.iPos_Datamodel.RelativePosition#getReference() - * @see #getRelativePosition() + * @return the meta object for the reference '<em>Reference System</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.Position#getReferenceSystem() + * @see #getPosition() * @generated */ - EReference getRelativePosition_Reference(); + EReference getPosition_ReferenceSystem(); /** - * Returns the meta object for the reference '{@link ipos.project.DataModellntegration.iPos_Datamodel.RelativePosition#getPoint <em>Point</em>}'. + * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.Orientation <em>Orientation</em>}'. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @return the meta object for the reference '<em>Point</em>'. - * @see ipos.project.DataModellntegration.iPos_Datamodel.RelativePosition#getPoint() - * @see #getRelativePosition() + * @return the meta object for class '<em>Orientation</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.Orientation * @generated */ - EReference getRelativePosition_Point(); + EClass getOrientation(); /** * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.WGS84Point <em>WGS84 Point</em>}'. @@ -3031,6 +2761,28 @@ public interface IPos_DatamodelPackage extends EPackage { */ EReference getZone_Space(); + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.Zone#getName <em>Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Name</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.Zone#getName() + * @see #getZone() + * @generated + */ + EAttribute getZone_Name(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.Zone#getId <em>Id</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Id</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.Zone#getId() + * @see #getZone() + * @generated + */ + EAttribute getZone_Id(); + /** * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.ZoneMap <em>Zone Map</em>}'. * <!-- begin-user-doc --> @@ -3096,24 +2848,25 @@ public interface IPos_DatamodelPackage extends EPackage { EAttribute getSpace_Z(); /** - * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.MapType <em>Map Type</em>}'. + * Returns the meta object for the reference '{@link ipos.project.DataModellntegration.iPos_Datamodel.Space#getCentrePoint <em>Centre Point</em>}'. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @return the meta object for class '<em>Map Type</em>'. - * @see ipos.project.DataModellntegration.iPos_Datamodel.MapType + * @return the meta object for the reference '<em>Centre Point</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.Space#getCentrePoint() + * @see #getSpace() * @generated */ - EClass getMapType(); + EReference getSpace_CentrePoint(); /** - * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.NetworkInterface <em>Network Interface</em>}'. + * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.MapType <em>Map Type</em>}'. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @return the meta object for class '<em>Network Interface</em>'. - * @see ipos.project.DataModellntegration.iPos_Datamodel.NetworkInterface + * @return the meta object for class '<em>Map Type</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.MapType * @generated */ - EClass getNetworkInterface(); + EClass getMapType(); /** * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.Quaternion <em>Quaternion</em>}'. @@ -3201,25 +2954,25 @@ public interface IPos_DatamodelPackage extends EPackage { EClass getPoint(); /** - * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.Rawdata <em>Rawdata</em>}'. + * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.RawdataEvent <em>Rawdata Event</em>}'. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @return the meta object for class '<em>Rawdata</em>'. - * @see ipos.project.DataModellntegration.iPos_Datamodel.Rawdata + * @return the meta object for class '<em>Rawdata Event</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.RawdataEvent * @generated */ - EClass getRawdata(); + EClass getRawdataEvent(); /** - * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.Rawdata#getSensorId <em>Sensor Id</em>}'. + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.RawdataEvent#getTimeStamp <em>Time Stamp</em>}'. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @return the meta object for the attribute '<em>Sensor Id</em>'. - * @see ipos.project.DataModellntegration.iPos_Datamodel.Rawdata#getSensorId() - * @see #getRawdata() + * @return the meta object for the attribute '<em>Time Stamp</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.RawdataEvent#getTimeStamp() + * @see #getRawdataEvent() * @generated */ - EAttribute getRawdata_SensorId(); + EAttribute getRawdataEvent_TimeStamp(); /** * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.Proximity <em>Proximity</em>}'. @@ -3339,14 +3092,15 @@ public interface IPos_DatamodelPackage extends EPackage { EReference getIMU_Acceleration(); /** - * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.AngularRate <em>Angular Rate</em>}'. + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.IMU#getSensorId <em>Sensor Id</em>}'. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @return the meta object for class '<em>Angular Rate</em>'. - * @see ipos.project.DataModellntegration.iPos_Datamodel.AngularRate + * @return the meta object for the attribute '<em>Sensor Id</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IMU#getSensorId() + * @see #getIMU() * @generated */ - EClass getAngularRate(); + EAttribute getIMU_SensorId(); /** * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.Acceleration <em>Acceleration</em>}'. @@ -3358,6 +3112,39 @@ public interface IPos_DatamodelPackage extends EPackage { */ EClass getAcceleration(); + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.Acceleration#getX <em>X</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>X</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.Acceleration#getX() + * @see #getAcceleration() + * @generated + */ + EAttribute getAcceleration_X(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.Acceleration#getY <em>Y</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Y</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.Acceleration#getY() + * @see #getAcceleration() + * @generated + */ + EAttribute getAcceleration_Y(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.Acceleration#getZ <em>Z</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Z</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.Acceleration#getZ() + * @see #getAcceleration() + * @generated + */ + EAttribute getAcceleration_Z(); + /** * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.Beacon <em>Beacon</em>}'. * <!-- begin-user-doc --> @@ -3390,6 +3177,17 @@ public interface IPos_DatamodelPackage extends EPackage { */ EAttribute getBeacon_Type(); + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.Beacon#getSensorId <em>Sensor Id</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Sensor Id</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.Beacon#getSensorId() + * @see #getBeacon() + * @generated + */ + EAttribute getBeacon_SensorId(); + /** * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.PositionEvent <em>Position Event</em>}'. * <!-- begin-user-doc --> @@ -3423,65 +3221,26 @@ public interface IPos_DatamodelPackage extends EPackage { EAttribute getPositionEvent_TimeStamp(); /** - * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.RawdataEvent <em>Rawdata Event</em>}'. + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.PositionEvent#getLObjectId <em>LObject Id</em>}'. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @return the meta object for class '<em>Rawdata Event</em>'. - * @see ipos.project.DataModellntegration.iPos_Datamodel.RawdataEvent - * @generated - */ - EClass getRawdataEvent(); - - /** - * Returns the meta object for the reference list '{@link ipos.project.DataModellntegration.iPos_Datamodel.RawdataEvent#getRawdata <em>Rawdata</em>}'. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return the meta object for the reference list '<em>Rawdata</em>'. - * @see ipos.project.DataModellntegration.iPos_Datamodel.RawdataEvent#getRawdata() - * @see #getRawdataEvent() - * @generated - */ - EReference getRawdataEvent_Rawdata(); - - /** - * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.TrackingRequest <em>Tracking Request</em>}'. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return the meta object for class '<em>Tracking Request</em>'. - * @see ipos.project.DataModellntegration.iPos_Datamodel.TrackingRequest - * @generated - */ - EClass getTrackingRequest(); - - /** - * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.MonitoringRequest <em>Monitoring Request</em>}'. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return the meta object for class '<em>Monitoring Request</em>'. - * @see ipos.project.DataModellntegration.iPos_Datamodel.MonitoringRequest - * @generated - */ - EClass getMonitoringRequest(); - - /** - * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.WorldModelUpdateRequest <em>World Model Update Request</em>}'. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return the meta object for class '<em>World Model Update Request</em>'. - * @see ipos.project.DataModellntegration.iPos_Datamodel.WorldModelUpdateRequest + * @return the meta object for the attribute '<em>LObject Id</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.PositionEvent#getLObjectId() + * @see #getPositionEvent() * @generated */ - EClass getWorldModelUpdateRequest(); + EAttribute getPositionEvent_LObjectId(); /** - * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.DataStorageRequest <em>Data Storage Request</em>}'. + * Returns the meta object for the reference list '{@link ipos.project.DataModellntegration.iPos_Datamodel.PositionEvent#getZonedescriptors <em>Zonedescriptors</em>}'. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @return the meta object for class '<em>Data Storage Request</em>'. - * @see ipos.project.DataModellntegration.iPos_Datamodel.DataStorageRequest + * @return the meta object for the reference list '<em>Zonedescriptors</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.PositionEvent#getZonedescriptors() + * @see #getPositionEvent() * @generated */ - EClass getDataStorageRequest(); + EReference getPositionEvent_Zonedescriptors(); /** * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.EventFilterConfiguration <em>Event Filter Configuration</em>}'. @@ -3516,56 +3275,26 @@ public interface IPos_DatamodelPackage extends EPackage { EAttribute getEventFilterConfiguration_PositionAmbiguityParameters(); /** - * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.EventFilterConfiguration#getFilterCriteria <em>Filter Criteria</em>}'. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return the meta object for the attribute '<em>Filter Criteria</em>'. - * @see ipos.project.DataModellntegration.iPos_Datamodel.EventFilterConfiguration#getFilterCriteria() - * @see #getEventFilterConfiguration() - * @generated - */ - EAttribute getEventFilterConfiguration_FilterCriteria(); - - /** - * Returns the meta object for the reference list '{@link ipos.project.DataModellntegration.iPos_Datamodel.EventFilterConfiguration#getEventfiltercondition <em>Eventfiltercondition</em>}'. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return the meta object for the reference list '<em>Eventfiltercondition</em>'. - * @see ipos.project.DataModellntegration.iPos_Datamodel.EventFilterConfiguration#getEventfiltercondition() - * @see #getEventFilterConfiguration() - * @generated - */ - EReference getEventFilterConfiguration_Eventfiltercondition(); - - /** - * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.WorldModelQueryRequest <em>World Model Query Request</em>}'. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return the meta object for class '<em>World Model Query Request</em>'. - * @see ipos.project.DataModellntegration.iPos_Datamodel.WorldModelQueryRequest - * @generated - */ - EClass getWorldModelQueryRequest(); - - /** - * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.DataStorageQueryRequest <em>Data Storage Query Request</em>}'. + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.EventFilterConfiguration#getFilterCriteria <em>Filter Criteria</em>}'. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @return the meta object for class '<em>Data Storage Query Request</em>'. - * @see ipos.project.DataModellntegration.iPos_Datamodel.DataStorageQueryRequest + * @return the meta object for the attribute '<em>Filter Criteria</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.EventFilterConfiguration#getFilterCriteria() + * @see #getEventFilterConfiguration() * @generated */ - EClass getDataStorageQueryRequest(); + EAttribute getEventFilterConfiguration_FilterCriteria(); /** - * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.AgentRegistrationRequest <em>Agent Registration Request</em>}'. + * Returns the meta object for the reference list '{@link ipos.project.DataModellntegration.iPos_Datamodel.EventFilterConfiguration#getEventfiltercondition <em>Eventfiltercondition</em>}'. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @return the meta object for class '<em>Agent Registration Request</em>'. - * @see ipos.project.DataModellntegration.iPos_Datamodel.AgentRegistrationRequest + * @return the meta object for the reference list '<em>Eventfiltercondition</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.EventFilterConfiguration#getEventfiltercondition() + * @see #getEventFilterConfiguration() * @generated */ - EClass getAgentRegistrationRequest(); + EReference getEventFilterConfiguration_Eventfiltercondition(); /** * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.MonitoringTask <em>Monitoring Task</em>}'. @@ -3631,15 +3360,37 @@ public interface IPos_DatamodelPackage extends EPackage { EReference getWorldModel_Agent(); /** - * Returns the meta object for the reference list '{@link ipos.project.DataModellntegration.iPos_Datamodel.WorldModel#getZonemap <em>Zonemap</em>}'. + * Returns the meta object for the reference list '{@link ipos.project.DataModellntegration.iPos_Datamodel.WorldModel#getZoneMap <em>Zone Map</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference list '<em>Zone Map</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.WorldModel#getZoneMap() + * @see #getWorldModel() + * @generated + */ + EReference getWorldModel_ZoneMap(); + + /** + * Returns the meta object for the reference list '{@link ipos.project.DataModellntegration.iPos_Datamodel.WorldModel#getPois <em>Pois</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference list '<em>Pois</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.WorldModel#getPois() + * @see #getWorldModel() + * @generated + */ + EReference getWorldModel_Pois(); + + /** + * Returns the meta object for the reference list '{@link ipos.project.DataModellntegration.iPos_Datamodel.WorldModel#getReferenceSystem <em>Reference System</em>}'. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @return the meta object for the reference list '<em>Zonemap</em>'. - * @see ipos.project.DataModellntegration.iPos_Datamodel.WorldModel#getZonemap() + * @return the meta object for the reference list '<em>Reference System</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.WorldModel#getReferenceSystem() * @see #getWorldModel() * @generated */ - EReference getWorldModel_Zonemap(); + EReference getWorldModel_ReferenceSystem(); /** * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.Barcode <em>Barcode</em>}'. @@ -3703,16 +3454,6 @@ public interface IPos_DatamodelPackage extends EPackage { */ EClass getUWB(); - /** - * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.SensorConfigurationRequest <em>Sensor Configuration Request</em>}'. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return the meta object for class '<em>Sensor Configuration Request</em>'. - * @see ipos.project.DataModellntegration.iPos_Datamodel.SensorConfigurationRequest - * @generated - */ - EClass getSensorConfigurationRequest(); - /** * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.OtherBeacon <em>Other Beacon</em>}'. * <!-- begin-user-doc --> @@ -3735,79 +3476,79 @@ public interface IPos_DatamodelPackage extends EPackage { EAttribute getOtherBeacon_Data(); /** - * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.ReferencePosition <em>Reference Position</em>}'. + * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.POI <em>POI</em>}'. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @return the meta object for class '<em>Reference Position</em>'. - * @see ipos.project.DataModellntegration.iPos_Datamodel.ReferencePosition + * @return the meta object for class '<em>POI</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.POI * @generated */ - EClass getReferencePosition(); + EClass getPOI(); /** - * Returns the meta object for the reference '{@link ipos.project.DataModellntegration.iPos_Datamodel.ReferencePosition#getPosition <em>Position</em>}'. + * Returns the meta object for the reference '{@link ipos.project.DataModellntegration.iPos_Datamodel.POI#getPlacing <em>Placing</em>}'. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @return the meta object for the reference '<em>Position</em>'. - * @see ipos.project.DataModellntegration.iPos_Datamodel.ReferencePosition#getPosition() - * @see #getReferencePosition() + * @return the meta object for the reference '<em>Placing</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.POI#getPlacing() + * @see #getPOI() * @generated */ - EReference getReferencePosition_Position(); + EReference getPOI_Placing(); /** - * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.ReferencePosition#getId <em>Id</em>}'. + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.POI#getDescription <em>Description</em>}'. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @return the meta object for the attribute '<em>Id</em>'. - * @see ipos.project.DataModellntegration.iPos_Datamodel.ReferencePosition#getId() - * @see #getReferencePosition() + * @return the meta object for the attribute '<em>Description</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.POI#getDescription() + * @see #getPOI() * @generated */ - EAttribute getReferencePosition_Id(); + EAttribute getPOI_Description(); /** - * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.EventFilterCondition <em>Event Filter Condition</em>}'. + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.POI#getData <em>Data</em>}'. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @return the meta object for class '<em>Event Filter Condition</em>'. - * @see ipos.project.DataModellntegration.iPos_Datamodel.EventFilterCondition + * @return the meta object for the attribute '<em>Data</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.POI#getData() + * @see #getPOI() * @generated */ - EClass getEventFilterCondition(); + EAttribute getPOI_Data(); /** - * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.EventFilterCondition#getTimeCondition <em>Time Condition</em>}'. + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.POI#getId <em>Id</em>}'. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @return the meta object for the attribute '<em>Time Condition</em>'. - * @see ipos.project.DataModellntegration.iPos_Datamodel.EventFilterCondition#getTimeCondition() - * @see #getEventFilterCondition() + * @return the meta object for the attribute '<em>Id</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.POI#getId() + * @see #getPOI() * @generated */ - EAttribute getEventFilterCondition_TimeCondition(); + EAttribute getPOI_Id(); /** - * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.EventFilterCondition#getCategoryCondition <em>Category Condition</em>}'. + * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.EventFilterCondition <em>Event Filter Condition</em>}'. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @return the meta object for the attribute '<em>Category Condition</em>'. - * @see ipos.project.DataModellntegration.iPos_Datamodel.EventFilterCondition#getCategoryCondition() - * @see #getEventFilterCondition() + * @return the meta object for class '<em>Event Filter Condition</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.EventFilterCondition * @generated */ - EAttribute getEventFilterCondition_CategoryCondition(); + EClass getEventFilterCondition(); /** - * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.EventFilterCondition#getIdCondition <em>Id Condition</em>}'. + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.EventFilterCondition#getTimeCondition <em>Time Condition</em>}'. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @return the meta object for the attribute '<em>Id Condition</em>'. - * @see ipos.project.DataModellntegration.iPos_Datamodel.EventFilterCondition#getIdCondition() + * @return the meta object for the attribute '<em>Time Condition</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.EventFilterCondition#getTimeCondition() * @see #getEventFilterCondition() * @generated */ - EAttribute getEventFilterCondition_IdCondition(); + EAttribute getEventFilterCondition_TimeCondition(); /** * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.EventFilterCondition#getAccuracyCondition <em>Accuracy Condition</em>}'. @@ -3876,15 +3617,177 @@ public interface IPos_DatamodelPackage extends EPackage { EAttribute getEventFilterCondition_FilterStructure(); /** - * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.EventFilterCondition#getPositionConditionCell <em>Position Condition Cell</em>}'. + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.EventFilterCondition#getPositionConditionCells <em>Position Condition Cells</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Position Condition Cells</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.EventFilterCondition#getPositionConditionCells() + * @see #getEventFilterCondition() + * @generated + */ + EAttribute getEventFilterCondition_PositionConditionCells(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.EventFilterCondition#getIdCondition <em>Id Condition</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Id Condition</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.EventFilterCondition#getIdCondition() + * @see #getEventFilterCondition() + * @generated + */ + EAttribute getEventFilterCondition_IdCondition(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.EventFilterCondition#getCategoryCondition <em>Category Condition</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Category Condition</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.EventFilterCondition#getCategoryCondition() + * @see #getEventFilterCondition() + * @generated + */ + EAttribute getEventFilterCondition_CategoryCondition(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.EventFilterCondition#getPropertyCondition <em>Property Condition</em>}'. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @return the meta object for the attribute '<em>Position Condition Cell</em>'. - * @see ipos.project.DataModellntegration.iPos_Datamodel.EventFilterCondition#getPositionConditionCell() + * @return the meta object for the attribute '<em>Property Condition</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.EventFilterCondition#getPropertyCondition() * @see #getEventFilterCondition() * @generated */ - EAttribute getEventFilterCondition_PositionConditionCell(); + EAttribute getEventFilterCondition_PropertyCondition(); + + /** + * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.ZoneDescriptor <em>Zone Descriptor</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Zone Descriptor</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.ZoneDescriptor + * @generated + */ + EClass getZoneDescriptor(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.ZoneDescriptor#getZoneId <em>Zone Id</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Zone Id</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.ZoneDescriptor#getZoneId() + * @see #getZoneDescriptor() + * @generated + */ + EAttribute getZoneDescriptor_ZoneId(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.ZoneDescriptor#getNotificationType <em>Notification Type</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Notification Type</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.ZoneDescriptor#getNotificationType() + * @see #getZoneDescriptor() + * @generated + */ + EAttribute getZoneDescriptor_NotificationType(); + + /** + * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.DataStorageQueryResponse <em>Data Storage Query Response</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Data Storage Query Response</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.DataStorageQueryResponse + * @generated + */ + EClass getDataStorageQueryResponse(); + + /** + * Returns the meta object for the reference list '{@link ipos.project.DataModellntegration.iPos_Datamodel.DataStorageQueryResponse#getPositionEvents <em>Position Events</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference list '<em>Position Events</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.DataStorageQueryResponse#getPositionEvents() + * @see #getDataStorageQueryResponse() + * @generated + */ + EReference getDataStorageQueryResponse_PositionEvents(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.DataStorageQueryResponse#getTrackingTaskId <em>Tracking Task Id</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Tracking Task Id</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.DataStorageQueryResponse#getTrackingTaskId() + * @see #getDataStorageQueryResponse() + * @generated + */ + EAttribute getDataStorageQueryResponse_TrackingTaskId(); + + /** + * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.MessageReceivedEvent <em>Message Received Event</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Message Received Event</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.MessageReceivedEvent + * @generated + */ + EClass getMessageReceivedEvent(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.MessageReceivedEvent#getProtocolName <em>Protocol Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Protocol Name</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.MessageReceivedEvent#getProtocolName() + * @see #getMessageReceivedEvent() + * @generated + */ + EAttribute getMessageReceivedEvent_ProtocolName(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.MessageReceivedEvent#getSerializedMsg <em>Serialized Msg</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Serialized Msg</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.MessageReceivedEvent#getSerializedMsg() + * @see #getMessageReceivedEvent() + * @generated + */ + EAttribute getMessageReceivedEvent_SerializedMsg(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.MessageReceivedEvent#getAgentId <em>Agent Id</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Agent Id</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.MessageReceivedEvent#getAgentId() + * @see #getMessageReceivedEvent() + * @generated + */ + EAttribute getMessageReceivedEvent_AgentId(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.MessageReceivedEvent#getExtractedAttributes <em>Extracted Attributes</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Extracted Attributes</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.MessageReceivedEvent#getExtractedAttributes() + * @see #getMessageReceivedEvent() + * @generated + */ + EAttribute getMessageReceivedEvent_ExtractedAttributes(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.MessageReceivedEvent#getTimestamp <em>Timestamp</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Timestamp</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.MessageReceivedEvent#getTimestamp() + * @see #getMessageReceivedEvent() + * @generated + */ + EAttribute getMessageReceivedEvent_Timestamp(); /** * Returns the meta object for data type '{@link java.util.List <em>String List</em>}'. @@ -3937,6 +3840,37 @@ public interface IPos_DatamodelPackage extends EPackage { */ EDataType getFloatArray(); + /** + * Returns the meta object for data type '<em>Byte Array</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for data type '<em>Byte Array</em>'. + * @model instanceClass="java.lang.byte[]" + * @generated + */ + EDataType getByteArray(); + + /** + * Returns the meta object for data type '{@link java.util.LinkedList <em>List Of String Maps</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for data type '<em>List Of String Maps</em>'. + * @see java.util.LinkedList + * @model instanceClass="java.util.LinkedList<java.util.HashMap<java.lang.String, java.lang.String>>" + * @generated + */ + EDataType getListOfStringMaps(); + + /** + * Returns the meta object for data type '<em>Int Array</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for data type '<em>Int Array</em>'. + * @model instanceClass="int[]" + * @generated + */ + EDataType getIntArray(); + /** * Returns the factory that creates the instances of the model. * <!-- begin-user-doc --> @@ -3970,14 +3904,6 @@ public interface IPos_DatamodelPackage extends EPackage { */ EClass AGENT = eINSTANCE.getAgent(); - /** - * The meta object literal for the '<em><b>Name</b></em>' attribute feature. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - EAttribute AGENT__NAME = eINSTANCE.getAgent_Name(); - /** * The meta object literal for the '<em><b>LObject</b></em>' reference list feature. * <!-- begin-user-doc --> @@ -3987,20 +3913,12 @@ public interface IPos_DatamodelPackage extends EPackage { EReference AGENT__LOBJECT = eINSTANCE.getAgent_LObject(); /** - * The meta object literal for the '<em><b>Net Int</b></em>' reference feature. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - EReference AGENT__NET_INT = eINSTANCE.getAgent_NetInt(); - - /** - * The meta object literal for the '<em><b>PSensors</b></em>' reference list feature. + * The meta object literal for the '<em><b>Agent Type</b></em>' attribute feature. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ - EReference AGENT__PSENSORS = eINSTANCE.getAgent_PSensors(); + EAttribute AGENT__AGENT_TYPE = eINSTANCE.getAgent_AgentType(); /** * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.EntityImpl <em>Entity</em>}' class. @@ -4030,22 +3948,6 @@ public interface IPos_DatamodelPackage extends EPackage { */ EClass LOCALIZABLE_OBJECT = eINSTANCE.getLocalizableObject(); - /** - * The meta object literal for the '<em><b>PSensor</b></em>' reference feature. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - EReference LOCALIZABLE_OBJECT__PSENSOR = eINSTANCE.getLocalizableObject_PSensor(); - - /** - * The meta object literal for the '<em><b>Current Placing</b></em>' reference feature. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - EReference LOCALIZABLE_OBJECT__CURRENT_PLACING = eINSTANCE.getLocalizableObject_CurrentPlacing(); - /** * The meta object literal for the '<em><b>Last Pos Update</b></em>' attribute feature. * <!-- begin-user-doc --> @@ -4055,22 +3957,12 @@ public interface IPos_DatamodelPackage extends EPackage { EAttribute LOCALIZABLE_OBJECT__LAST_POS_UPDATE = eINSTANCE.getLocalizableObject_LastPosUpdate(); /** - * The meta object literal for the '<em><b>Type</b></em>' attribute feature. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - EAttribute LOCALIZABLE_OBJECT__TYPE = eINSTANCE.getLocalizableObject_Type(); - - /** - * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.PositionSensorImpl <em>Position Sensor</em>}' class. + * The meta object literal for the '<em><b>Sensor Type</b></em>' attribute feature. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.PositionSensorImpl - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getPositionSensor() * @generated */ - EClass POSITION_SENSOR = eINSTANCE.getPositionSensor(); + EAttribute LOCALIZABLE_OBJECT__SENSOR_TYPE = eINSTANCE.getLocalizableObject_SensorType(); /** * The meta object literal for the '<em><b>Agent</b></em>' reference feature. @@ -4078,23 +3970,15 @@ public interface IPos_DatamodelPackage extends EPackage { * <!-- end-user-doc --> * @generated */ - EReference POSITION_SENSOR__AGENT = eINSTANCE.getPositionSensor_Agent(); - - /** - * The meta object literal for the '<em><b>LObject</b></em>' reference feature. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - EReference POSITION_SENSOR__LOBJECT = eINSTANCE.getPositionSensor_LObject(); + EReference LOCALIZABLE_OBJECT__AGENT = eINSTANCE.getLocalizableObject_Agent(); /** - * The meta object literal for the '<em><b>Type</b></em>' attribute feature. + * The meta object literal for the '<em><b>Current Placing</b></em>' reference feature. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ - EAttribute POSITION_SENSOR__TYPE = eINSTANCE.getPositionSensor_Type(); + EReference LOCALIZABLE_OBJECT__CURRENT_PLACING = eINSTANCE.getLocalizableObject_CurrentPlacing(); /** * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.PlacingImpl <em>Placing</em>}' class. @@ -4106,14 +3990,6 @@ public interface IPos_DatamodelPackage extends EPackage { */ EClass PLACING = eINSTANCE.getPlacing(); - /** - * The meta object literal for the '<em><b>LObject</b></em>' reference feature. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - EReference PLACING__LOBJECT = eINSTANCE.getPlacing_LObject(); - /** * The meta object literal for the '<em><b>Position</b></em>' reference feature. * <!-- begin-user-doc --> @@ -4123,84 +3999,56 @@ public interface IPos_DatamodelPackage extends EPackage { EReference PLACING__POSITION = eINSTANCE.getPlacing_Position(); /** - * The meta object literal for the '<em><b>Orientation</b></em>' reference feature. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - EReference PLACING__ORIENTATION = eINSTANCE.getPlacing_Orientation(); - - /** - * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.PositionImpl <em>Position</em>}' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.PositionImpl - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getPosition() - * @generated - */ - EClass POSITION = eINSTANCE.getPosition(); - - /** - * The meta object literal for the '<em><b>Accuracy</b></em>' reference feature. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - EReference POSITION__ACCURACY = eINSTANCE.getPosition_Accuracy(); - - /** - * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.OrientationImpl <em>Orientation</em>}' class. + * The meta object literal for the '<em><b>Orientation</b></em>' reference feature. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.OrientationImpl - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getOrientation() * @generated */ - EClass ORIENTATION = eINSTANCE.getOrientation(); + EReference PLACING__ORIENTATION = eINSTANCE.getPlacing_Orientation(); /** - * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.AbsolutePositionImpl <em>Absolute Position</em>}' class. + * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.PositionImpl <em>Position</em>}' class. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.AbsolutePositionImpl - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getAbsolutePosition() + * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.PositionImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getPosition() * @generated */ - EClass ABSOLUTE_POSITION = eINSTANCE.getAbsolutePosition(); + EClass POSITION = eINSTANCE.getPosition(); /** - * The meta object literal for the '<em><b>Point</b></em>' reference feature. + * The meta object literal for the '<em><b>Accuracy</b></em>' reference feature. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ - EReference ABSOLUTE_POSITION__POINT = eINSTANCE.getAbsolutePosition_Point(); + EReference POSITION__ACCURACY = eINSTANCE.getPosition_Accuracy(); /** - * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.RelativePositionImpl <em>Relative Position</em>}' class. + * The meta object literal for the '<em><b>Point</b></em>' reference feature. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.RelativePositionImpl - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getRelativePosition() * @generated */ - EClass RELATIVE_POSITION = eINSTANCE.getRelativePosition(); + EReference POSITION__POINT = eINSTANCE.getPosition_Point(); /** - * The meta object literal for the '<em><b>Reference</b></em>' reference feature. + * The meta object literal for the '<em><b>Reference System</b></em>' reference feature. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ - EReference RELATIVE_POSITION__REFERENCE = eINSTANCE.getRelativePosition_Reference(); + EReference POSITION__REFERENCE_SYSTEM = eINSTANCE.getPosition_ReferenceSystem(); /** - * The meta object literal for the '<em><b>Point</b></em>' reference feature. + * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.OrientationImpl <em>Orientation</em>}' class. * <!-- begin-user-doc --> * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.OrientationImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getOrientation() * @generated */ - EReference RELATIVE_POSITION__POINT = eINSTANCE.getRelativePosition_Point(); + EClass ORIENTATION = eINSTANCE.getOrientation(); /** * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.WGS84PointImpl <em>WGS84 Point</em>}' class. @@ -4358,6 +4206,22 @@ public interface IPos_DatamodelPackage extends EPackage { */ EReference ZONE__SPACE = eINSTANCE.getZone_Space(); + /** + * The meta object literal for the '<em><b>Name</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute ZONE__NAME = eINSTANCE.getZone_Name(); + + /** + * The meta object literal for the '<em><b>Id</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute ZONE__ID = eINSTANCE.getZone_Id(); + /** * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.ZoneMapImpl <em>Zone Map</em>}' class. * <!-- begin-user-doc --> @@ -4411,24 +4275,22 @@ public interface IPos_DatamodelPackage extends EPackage { EAttribute SPACE__Z = eINSTANCE.getSpace_Z(); /** - * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.MapTypeImpl <em>Map Type</em>}' class. + * The meta object literal for the '<em><b>Centre Point</b></em>' reference feature. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.MapTypeImpl - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getMapType() * @generated */ - EClass MAP_TYPE = eINSTANCE.getMapType(); + EReference SPACE__CENTRE_POINT = eINSTANCE.getSpace_CentrePoint(); /** - * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.NetworkInterfaceImpl <em>Network Interface</em>}' class. + * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.MapTypeImpl <em>Map Type</em>}' class. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.NetworkInterfaceImpl - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getNetworkInterface() + * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.MapTypeImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getMapType() * @generated */ - EClass NETWORK_INTERFACE = eINSTANCE.getNetworkInterface(); + EClass MAP_TYPE = eINSTANCE.getMapType(); /** * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.QuaternionImpl <em>Quaternion</em>}' class. @@ -4501,22 +4363,22 @@ public interface IPos_DatamodelPackage extends EPackage { EClass POINT = eINSTANCE.getPoint(); /** - * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.RawdataImpl <em>Rawdata</em>}' class. + * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.RawdataEventImpl <em>Rawdata Event</em>}' class. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.RawdataImpl - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getRawdata() + * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.RawdataEventImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getRawdataEvent() * @generated */ - EClass RAWDATA = eINSTANCE.getRawdata(); + EClass RAWDATA_EVENT = eINSTANCE.getRawdataEvent(); /** - * The meta object literal for the '<em><b>Sensor Id</b></em>' attribute feature. + * The meta object literal for the '<em><b>Time Stamp</b></em>' attribute feature. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ - EAttribute RAWDATA__SENSOR_ID = eINSTANCE.getRawdata_SensorId(); + EAttribute RAWDATA_EVENT__TIME_STAMP = eINSTANCE.getRawdataEvent_TimeStamp(); /** * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.ProximityImpl <em>Proximity</em>}' class. @@ -4615,14 +4477,12 @@ public interface IPos_DatamodelPackage extends EPackage { EReference IMU__ACCELERATION = eINSTANCE.getIMU_Acceleration(); /** - * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.AngularRateImpl <em>Angular Rate</em>}' class. + * The meta object literal for the '<em><b>Sensor Id</b></em>' attribute feature. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.AngularRateImpl - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getAngularRate() * @generated */ - EClass ANGULAR_RATE = eINSTANCE.getAngularRate(); + EAttribute IMU__SENSOR_ID = eINSTANCE.getIMU_SensorId(); /** * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.AccelerationImpl <em>Acceleration</em>}' class. @@ -4635,114 +4495,104 @@ public interface IPos_DatamodelPackage extends EPackage { EClass ACCELERATION = eINSTANCE.getAcceleration(); /** - * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.BeaconImpl <em>Beacon</em>}' class. + * The meta object literal for the '<em><b>X</b></em>' attribute feature. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.BeaconImpl - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getBeacon() * @generated */ - EClass BEACON = eINSTANCE.getBeacon(); + EAttribute ACCELERATION__X = eINSTANCE.getAcceleration_X(); /** - * The meta object literal for the '<em><b>Distances</b></em>' attribute feature. + * The meta object literal for the '<em><b>Y</b></em>' attribute feature. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ - EAttribute BEACON__DISTANCES = eINSTANCE.getBeacon_Distances(); + EAttribute ACCELERATION__Y = eINSTANCE.getAcceleration_Y(); /** - * The meta object literal for the '<em><b>Type</b></em>' attribute feature. + * The meta object literal for the '<em><b>Z</b></em>' attribute feature. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ - EAttribute BEACON__TYPE = eINSTANCE.getBeacon_Type(); + EAttribute ACCELERATION__Z = eINSTANCE.getAcceleration_Z(); /** - * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.PositionEventImpl <em>Position Event</em>}' class. + * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.BeaconImpl <em>Beacon</em>}' class. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.PositionEventImpl - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getPositionEvent() + * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.BeaconImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getBeacon() * @generated */ - EClass POSITION_EVENT = eINSTANCE.getPositionEvent(); + EClass BEACON = eINSTANCE.getBeacon(); /** - * The meta object literal for the '<em><b>Placing</b></em>' reference feature. + * The meta object literal for the '<em><b>Distances</b></em>' attribute feature. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ - EReference POSITION_EVENT__PLACING = eINSTANCE.getPositionEvent_Placing(); + EAttribute BEACON__DISTANCES = eINSTANCE.getBeacon_Distances(); /** - * The meta object literal for the '<em><b>Time Stamp</b></em>' attribute feature. + * The meta object literal for the '<em><b>Type</b></em>' attribute feature. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ - EAttribute POSITION_EVENT__TIME_STAMP = eINSTANCE.getPositionEvent_TimeStamp(); + EAttribute BEACON__TYPE = eINSTANCE.getBeacon_Type(); /** - * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.RawdataEventImpl <em>Rawdata Event</em>}' class. + * The meta object literal for the '<em><b>Sensor Id</b></em>' attribute feature. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.RawdataEventImpl - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getRawdataEvent() * @generated */ - EClass RAWDATA_EVENT = eINSTANCE.getRawdataEvent(); + EAttribute BEACON__SENSOR_ID = eINSTANCE.getBeacon_SensorId(); /** - * The meta object literal for the '<em><b>Rawdata</b></em>' reference list feature. + * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.PositionEventImpl <em>Position Event</em>}' class. * <!-- begin-user-doc --> * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.PositionEventImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getPositionEvent() * @generated */ - EReference RAWDATA_EVENT__RAWDATA = eINSTANCE.getRawdataEvent_Rawdata(); + EClass POSITION_EVENT = eINSTANCE.getPositionEvent(); /** - * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.TrackingRequestImpl <em>Tracking Request</em>}' class. + * The meta object literal for the '<em><b>Placing</b></em>' reference feature. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.TrackingRequestImpl - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getTrackingRequest() * @generated */ - EClass TRACKING_REQUEST = eINSTANCE.getTrackingRequest(); + EReference POSITION_EVENT__PLACING = eINSTANCE.getPositionEvent_Placing(); /** - * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.MonitoringRequestImpl <em>Monitoring Request</em>}' class. + * The meta object literal for the '<em><b>Time Stamp</b></em>' attribute feature. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.MonitoringRequestImpl - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getMonitoringRequest() * @generated */ - EClass MONITORING_REQUEST = eINSTANCE.getMonitoringRequest(); + EAttribute POSITION_EVENT__TIME_STAMP = eINSTANCE.getPositionEvent_TimeStamp(); /** - * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.WorldModelUpdateRequestImpl <em>World Model Update Request</em>}' class. + * The meta object literal for the '<em><b>LObject Id</b></em>' attribute feature. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.WorldModelUpdateRequestImpl - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getWorldModelUpdateRequest() * @generated */ - EClass WORLD_MODEL_UPDATE_REQUEST = eINSTANCE.getWorldModelUpdateRequest(); + EAttribute POSITION_EVENT__LOBJECT_ID = eINSTANCE.getPositionEvent_LObjectId(); /** - * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.DataStorageRequestImpl <em>Data Storage Request</em>}' class. + * The meta object literal for the '<em><b>Zonedescriptors</b></em>' reference list feature. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.DataStorageRequestImpl - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getDataStorageRequest() * @generated */ - EClass DATA_STORAGE_REQUEST = eINSTANCE.getDataStorageRequest(); + EReference POSITION_EVENT__ZONEDESCRIPTORS = eINSTANCE.getPositionEvent_Zonedescriptors(); /** * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.EventFilterConfigurationImpl <em>Event Filter Configuration</em>}' class. @@ -4789,36 +4639,6 @@ public interface IPos_DatamodelPackage extends EPackage { EReference EVENT_FILTER_CONFIGURATION__EVENTFILTERCONDITION = eINSTANCE .getEventFilterConfiguration_Eventfiltercondition(); - /** - * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.WorldModelQueryRequestImpl <em>World Model Query Request</em>}' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.WorldModelQueryRequestImpl - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getWorldModelQueryRequest() - * @generated - */ - EClass WORLD_MODEL_QUERY_REQUEST = eINSTANCE.getWorldModelQueryRequest(); - - /** - * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.DataStorageQueryRequestImpl <em>Data Storage Query Request</em>}' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.DataStorageQueryRequestImpl - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getDataStorageQueryRequest() - * @generated - */ - EClass DATA_STORAGE_QUERY_REQUEST = eINSTANCE.getDataStorageQueryRequest(); - - /** - * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.AgentRegistrationRequestImpl <em>Agent Registration Request</em>}' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.AgentRegistrationRequestImpl - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getAgentRegistrationRequest() - * @generated - */ - EClass AGENT_REGISTRATION_REQUEST = eINSTANCE.getAgentRegistrationRequest(); - /** * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.MonitoringTaskImpl <em>Monitoring Task</em>}' class. * <!-- begin-user-doc --> @@ -4874,12 +4694,28 @@ public interface IPos_DatamodelPackage extends EPackage { EReference WORLD_MODEL__AGENT = eINSTANCE.getWorldModel_Agent(); /** - * The meta object literal for the '<em><b>Zonemap</b></em>' reference list feature. + * The meta object literal for the '<em><b>Zone Map</b></em>' reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference WORLD_MODEL__ZONE_MAP = eINSTANCE.getWorldModel_ZoneMap(); + + /** + * The meta object literal for the '<em><b>Pois</b></em>' reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference WORLD_MODEL__POIS = eINSTANCE.getWorldModel_Pois(); + + /** + * The meta object literal for the '<em><b>Reference System</b></em>' reference list feature. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ - EReference WORLD_MODEL__ZONEMAP = eINSTANCE.getWorldModel_Zonemap(); + EReference WORLD_MODEL__REFERENCE_SYSTEM = eINSTANCE.getWorldModel_ReferenceSystem(); /** * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.BarcodeImpl <em>Barcode</em>}' class. @@ -4937,16 +4773,6 @@ public interface IPos_DatamodelPackage extends EPackage { */ EClass UWB = eINSTANCE.getUWB(); - /** - * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.SensorConfigurationRequestImpl <em>Sensor Configuration Request</em>}' class. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.SensorConfigurationRequestImpl - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getSensorConfigurationRequest() - * @generated - */ - EClass SENSOR_CONFIGURATION_REQUEST = eINSTANCE.getSensorConfigurationRequest(); - /** * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.OtherBeaconImpl <em>Other Beacon</em>}' class. * <!-- begin-user-doc --> @@ -4966,64 +4792,64 @@ public interface IPos_DatamodelPackage extends EPackage { EAttribute OTHER_BEACON__DATA = eINSTANCE.getOtherBeacon_Data(); /** - * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.ReferencePositionImpl <em>Reference Position</em>}' class. + * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.POIImpl <em>POI</em>}' class. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.ReferencePositionImpl - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getReferencePosition() + * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.POIImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getPOI() * @generated */ - EClass REFERENCE_POSITION = eINSTANCE.getReferencePosition(); + EClass POI = eINSTANCE.getPOI(); /** - * The meta object literal for the '<em><b>Position</b></em>' reference feature. + * The meta object literal for the '<em><b>Placing</b></em>' reference feature. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ - EReference REFERENCE_POSITION__POSITION = eINSTANCE.getReferencePosition_Position(); + EReference POI__PLACING = eINSTANCE.getPOI_Placing(); /** - * The meta object literal for the '<em><b>Id</b></em>' attribute feature. + * The meta object literal for the '<em><b>Description</b></em>' attribute feature. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ - EAttribute REFERENCE_POSITION__ID = eINSTANCE.getReferencePosition_Id(); + EAttribute POI__DESCRIPTION = eINSTANCE.getPOI_Description(); /** - * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.EventFilterConditionImpl <em>Event Filter Condition</em>}' class. + * The meta object literal for the '<em><b>Data</b></em>' attribute feature. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.EventFilterConditionImpl - * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getEventFilterCondition() * @generated */ - EClass EVENT_FILTER_CONDITION = eINSTANCE.getEventFilterCondition(); + EAttribute POI__DATA = eINSTANCE.getPOI_Data(); /** - * The meta object literal for the '<em><b>Time Condition</b></em>' attribute feature. + * The meta object literal for the '<em><b>Id</b></em>' attribute feature. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ - EAttribute EVENT_FILTER_CONDITION__TIME_CONDITION = eINSTANCE.getEventFilterCondition_TimeCondition(); + EAttribute POI__ID = eINSTANCE.getPOI_Id(); /** - * The meta object literal for the '<em><b>Category Condition</b></em>' attribute feature. + * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.EventFilterConditionImpl <em>Event Filter Condition</em>}' class. * <!-- begin-user-doc --> * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.EventFilterConditionImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getEventFilterCondition() * @generated */ - EAttribute EVENT_FILTER_CONDITION__CATEGORY_CONDITION = eINSTANCE.getEventFilterCondition_CategoryCondition(); + EClass EVENT_FILTER_CONDITION = eINSTANCE.getEventFilterCondition(); /** - * The meta object literal for the '<em><b>Id Condition</b></em>' attribute feature. + * The meta object literal for the '<em><b>Time Condition</b></em>' attribute feature. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ - EAttribute EVENT_FILTER_CONDITION__ID_CONDITION = eINSTANCE.getEventFilterCondition_IdCondition(); + EAttribute EVENT_FILTER_CONDITION__TIME_CONDITION = eINSTANCE.getEventFilterCondition_TimeCondition(); /** * The meta object literal for the '<em><b>Accuracy Condition</b></em>' attribute feature. @@ -5074,13 +4900,142 @@ public interface IPos_DatamodelPackage extends EPackage { EAttribute EVENT_FILTER_CONDITION__FILTER_STRUCTURE = eINSTANCE.getEventFilterCondition_FilterStructure(); /** - * The meta object literal for the '<em><b>Position Condition Cell</b></em>' attribute feature. + * The meta object literal for the '<em><b>Position Condition Cells</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute EVENT_FILTER_CONDITION__POSITION_CONDITION_CELLS = eINSTANCE + .getEventFilterCondition_PositionConditionCells(); + + /** + * The meta object literal for the '<em><b>Id Condition</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute EVENT_FILTER_CONDITION__ID_CONDITION = eINSTANCE.getEventFilterCondition_IdCondition(); + + /** + * The meta object literal for the '<em><b>Category Condition</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute EVENT_FILTER_CONDITION__CATEGORY_CONDITION = eINSTANCE.getEventFilterCondition_CategoryCondition(); + + /** + * The meta object literal for the '<em><b>Property Condition</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute EVENT_FILTER_CONDITION__PROPERTY_CONDITION = eINSTANCE.getEventFilterCondition_PropertyCondition(); + + /** + * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.ZoneDescriptorImpl <em>Zone Descriptor</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.ZoneDescriptorImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getZoneDescriptor() + * @generated + */ + EClass ZONE_DESCRIPTOR = eINSTANCE.getZoneDescriptor(); + + /** + * The meta object literal for the '<em><b>Zone Id</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute ZONE_DESCRIPTOR__ZONE_ID = eINSTANCE.getZoneDescriptor_ZoneId(); + + /** + * The meta object literal for the '<em><b>Notification Type</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute ZONE_DESCRIPTOR__NOTIFICATION_TYPE = eINSTANCE.getZoneDescriptor_NotificationType(); + + /** + * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.DataStorageQueryResponseImpl <em>Data Storage Query Response</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.DataStorageQueryResponseImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getDataStorageQueryResponse() + * @generated + */ + EClass DATA_STORAGE_QUERY_RESPONSE = eINSTANCE.getDataStorageQueryResponse(); + + /** + * The meta object literal for the '<em><b>Position Events</b></em>' reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference DATA_STORAGE_QUERY_RESPONSE__POSITION_EVENTS = eINSTANCE + .getDataStorageQueryResponse_PositionEvents(); + + /** + * The meta object literal for the '<em><b>Tracking Task Id</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute DATA_STORAGE_QUERY_RESPONSE__TRACKING_TASK_ID = eINSTANCE + .getDataStorageQueryResponse_TrackingTaskId(); + + /** + * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.MessageReceivedEventImpl <em>Message Received Event</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.MessageReceivedEventImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getMessageReceivedEvent() + * @generated + */ + EClass MESSAGE_RECEIVED_EVENT = eINSTANCE.getMessageReceivedEvent(); + + /** + * The meta object literal for the '<em><b>Protocol Name</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute MESSAGE_RECEIVED_EVENT__PROTOCOL_NAME = eINSTANCE.getMessageReceivedEvent_ProtocolName(); + + /** + * The meta object literal for the '<em><b>Serialized Msg</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute MESSAGE_RECEIVED_EVENT__SERIALIZED_MSG = eINSTANCE.getMessageReceivedEvent_SerializedMsg(); + + /** + * The meta object literal for the '<em><b>Agent Id</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute MESSAGE_RECEIVED_EVENT__AGENT_ID = eINSTANCE.getMessageReceivedEvent_AgentId(); + + /** + * The meta object literal for the '<em><b>Extracted Attributes</b></em>' attribute feature. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ - EAttribute EVENT_FILTER_CONDITION__POSITION_CONDITION_CELL = eINSTANCE - .getEventFilterCondition_PositionConditionCell(); + EAttribute MESSAGE_RECEIVED_EVENT__EXTRACTED_ATTRIBUTES = eINSTANCE + .getMessageReceivedEvent_ExtractedAttributes(); + + /** + * The meta object literal for the '<em><b>Timestamp</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute MESSAGE_RECEIVED_EVENT__TIMESTAMP = eINSTANCE.getMessageReceivedEvent_Timestamp(); /** * The meta object literal for the '<em>String List</em>' data type. @@ -5128,6 +5083,34 @@ public interface IPos_DatamodelPackage extends EPackage { */ EDataType FLOAT_ARRAY = eINSTANCE.getFloatArray(); + /** + * The meta object literal for the '<em>Byte Array</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getByteArray() + * @generated + */ + EDataType BYTE_ARRAY = eINSTANCE.getByteArray(); + + /** + * The meta object literal for the '<em>List Of String Maps</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see java.util.LinkedList + * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getListOfStringMaps() + * @generated + */ + EDataType LIST_OF_STRING_MAPS = eINSTANCE.getListOfStringMaps(); + + /** + * The meta object literal for the '<em>Int Array</em>' data type. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl#getIntArray() + * @generated + */ + EDataType INT_ARRAY = eINSTANCE.getIntArray(); + } } //IPos_DatamodelPackage diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/LocalizableObject.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/LocalizableObject.java index 3379caafea767878d7abb0e7c5a94bf035238156..d72ef65365d8a2cb336d740c3c87fd0701936a8f 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/LocalizableObject.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/LocalizableObject.java @@ -11,10 +11,10 @@ package ipos.project.DataModellntegration.iPos_Datamodel; * The following features are supported: * </p> * <ul> - * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.LocalizableObject#getPSensor <em>PSensor</em>}</li> - * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.LocalizableObject#getCurrentPlacing <em>Current Placing</em>}</li> * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.LocalizableObject#getLastPosUpdate <em>Last Pos Update</em>}</li> - * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.LocalizableObject#getType <em>Type</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.LocalizableObject#getSensorType <em>Sensor Type</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.LocalizableObject#getAgent <em>Agent</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.LocalizableObject#getCurrentPlacing <em>Current Placing</em>}</li> * </ul> * * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getLocalizableObject() @@ -23,93 +23,91 @@ package ipos.project.DataModellntegration.iPos_Datamodel; */ public interface LocalizableObject extends Entity { /** - * Returns the value of the '<em><b>PSensor</b></em>' reference. + * Returns the value of the '<em><b>Last Pos Update</b></em>' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @return the value of the '<em>PSensor</em>' reference. - * @see #setPSensor(PositionSensor) - * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getLocalizableObject_PSensor() - * @model required="true" + * @return the value of the '<em>Last Pos Update</em>' attribute. + * @see #setLastPosUpdate(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getLocalizableObject_LastPosUpdate() + * @model * @generated */ - PositionSensor getPSensor(); + String getLastPosUpdate(); /** - * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.LocalizableObject#getPSensor <em>PSensor</em>}' reference. + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.LocalizableObject#getLastPosUpdate <em>Last Pos Update</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @param value the new value of the '<em>PSensor</em>' reference. - * @see #getPSensor() + * @param value the new value of the '<em>Last Pos Update</em>' attribute. + * @see #getLastPosUpdate() * @generated */ - void setPSensor(PositionSensor value); + void setLastPosUpdate(String value); /** - * Returns the value of the '<em><b>Current Placing</b></em>' reference. - * It is bidirectional and its opposite is '{@link ipos.project.DataModellntegration.iPos_Datamodel.Placing#getLObject <em>LObject</em>}'. + * Returns the value of the '<em><b>Sensor Type</b></em>' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @return the value of the '<em>Current Placing</em>' reference. - * @see #setCurrentPlacing(Placing) - * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getLocalizableObject_CurrentPlacing() - * @see ipos.project.DataModellntegration.iPos_Datamodel.Placing#getLObject - * @model opposite="lObject" + * @return the value of the '<em>Sensor Type</em>' attribute. + * @see #setSensorType(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getLocalizableObject_SensorType() + * @model * @generated */ - Placing getCurrentPlacing(); + String getSensorType(); /** - * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.LocalizableObject#getCurrentPlacing <em>Current Placing</em>}' reference. + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.LocalizableObject#getSensorType <em>Sensor Type</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @param value the new value of the '<em>Current Placing</em>' reference. - * @see #getCurrentPlacing() + * @param value the new value of the '<em>Sensor Type</em>' attribute. + * @see #getSensorType() * @generated */ - void setCurrentPlacing(Placing value); + void setSensorType(String value); /** - * Returns the value of the '<em><b>Last Pos Update</b></em>' attribute. + * Returns the value of the '<em><b>Agent</b></em>' reference. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @return the value of the '<em>Last Pos Update</em>' attribute. - * @see #setLastPosUpdate(String) - * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getLocalizableObject_LastPosUpdate() + * @return the value of the '<em>Agent</em>' reference. + * @see #setAgent(Agent) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getLocalizableObject_Agent() * @model * @generated */ - String getLastPosUpdate(); + Agent getAgent(); /** - * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.LocalizableObject#getLastPosUpdate <em>Last Pos Update</em>}' attribute. + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.LocalizableObject#getAgent <em>Agent</em>}' reference. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @param value the new value of the '<em>Last Pos Update</em>' attribute. - * @see #getLastPosUpdate() + * @param value the new value of the '<em>Agent</em>' reference. + * @see #getAgent() * @generated */ - void setLastPosUpdate(String value); + void setAgent(Agent value); /** - * Returns the value of the '<em><b>Type</b></em>' attribute. + * Returns the value of the '<em><b>Current Placing</b></em>' reference. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @return the value of the '<em>Type</em>' attribute. - * @see #setType(String) - * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getLocalizableObject_Type() + * @return the value of the '<em>Current Placing</em>' reference. + * @see #setCurrentPlacing(Placing) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getLocalizableObject_CurrentPlacing() * @model * @generated */ - String getType(); + Placing getCurrentPlacing(); /** - * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.LocalizableObject#getType <em>Type</em>}' attribute. + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.LocalizableObject#getCurrentPlacing <em>Current Placing</em>}' reference. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @param value the new value of the '<em>Type</em>' attribute. - * @see #getType() + * @param value the new value of the '<em>Current Placing</em>' reference. + * @see #getCurrentPlacing() * @generated */ - void setType(String value); + void setCurrentPlacing(Placing value); } // LocalizableObject diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/MessageReceivedEvent.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/MessageReceivedEvent.java new file mode 100644 index 0000000000000000000000000000000000000000..3b4bbd2bad2e110e3781db53a26d30f12f978565 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/MessageReceivedEvent.java @@ -0,0 +1,141 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel; + +import java.util.HashMap; +import java.util.LinkedList; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Message Received Event</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.MessageReceivedEvent#getProtocolName <em>Protocol Name</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.MessageReceivedEvent#getSerializedMsg <em>Serialized Msg</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.MessageReceivedEvent#getAgentId <em>Agent Id</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.MessageReceivedEvent#getExtractedAttributes <em>Extracted Attributes</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.MessageReceivedEvent#getTimestamp <em>Timestamp</em>}</li> + * </ul> + * + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getMessageReceivedEvent() + * @model + * @generated + */ +public interface MessageReceivedEvent extends EObject { + /** + * Returns the value of the '<em><b>Protocol Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Protocol Name</em>' attribute. + * @see #setProtocolName(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getMessageReceivedEvent_ProtocolName() + * @model + * @generated + */ + String getProtocolName(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.MessageReceivedEvent#getProtocolName <em>Protocol Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Protocol Name</em>' attribute. + * @see #getProtocolName() + * @generated + */ + void setProtocolName(String value); + + /** + * Returns the value of the '<em><b>Serialized Msg</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Serialized Msg</em>' attribute. + * @see #setSerializedMsg(byte[]) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getMessageReceivedEvent_SerializedMsg() + * @model dataType="ipos.project.DataModellntegration.iPos_Datamodel.ByteArray" + * @generated + */ + byte[] getSerializedMsg(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.MessageReceivedEvent#getSerializedMsg <em>Serialized Msg</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Serialized Msg</em>' attribute. + * @see #getSerializedMsg() + * @generated + */ + void setSerializedMsg(byte[] value); + + /** + * Returns the value of the '<em><b>Agent Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Agent Id</em>' attribute. + * @see #setAgentId(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getMessageReceivedEvent_AgentId() + * @model + * @generated + */ + String getAgentId(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.MessageReceivedEvent#getAgentId <em>Agent Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Agent Id</em>' attribute. + * @see #getAgentId() + * @generated + */ + void setAgentId(String value); + + /** + * Returns the value of the '<em><b>Extracted Attributes</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Extracted Attributes</em>' attribute. + * @see #setExtractedAttributes(LinkedList) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getMessageReceivedEvent_ExtractedAttributes() + * @model dataType="ipos.project.DataModellntegration.iPos_Datamodel.ListOfStringMaps" + * @generated + */ + LinkedList<HashMap<String, String>> getExtractedAttributes(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.MessageReceivedEvent#getExtractedAttributes <em>Extracted Attributes</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Extracted Attributes</em>' attribute. + * @see #getExtractedAttributes() + * @generated + */ + void setExtractedAttributes(LinkedList<HashMap<String, String>> value); + + /** + * Returns the value of the '<em><b>Timestamp</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Timestamp</em>' attribute. + * @see #setTimestamp(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getMessageReceivedEvent_Timestamp() + * @model + * @generated + */ + String getTimestamp(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.MessageReceivedEvent#getTimestamp <em>Timestamp</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Timestamp</em>' attribute. + * @see #getTimestamp() + * @generated + */ + void setTimestamp(String value); + +} // MessageReceivedEvent diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/MonitoringRequest.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/MonitoringRequest.java deleted file mode 100644 index 32af5a4ab545774d12d79e8000e6ce1958a587f4..0000000000000000000000000000000000000000 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/MonitoringRequest.java +++ /dev/null @@ -1,18 +0,0 @@ -/** - */ -package ipos.project.DataModellntegration.iPos_Datamodel; - -import org.eclipse.emf.ecore.EObject; - -/** - * <!-- begin-user-doc --> - * A representation of the model object '<em><b>Monitoring Request</b></em>'. - * <!-- end-user-doc --> - * - * - * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getMonitoringRequest() - * @model - * @generated - */ -public interface MonitoringRequest extends EObject { -} // MonitoringRequest diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/NFC.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/NFC.java index d7d409b7779cdd93c10e5997bac155ea60bb81fa..2460d854e49a1dae325bbae3087a64577ae8c13a 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/NFC.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/NFC.java @@ -4,8 +4,6 @@ package ipos.project.DataModellntegration.iPos_Datamodel; import java.util.Map; -import org.eclipse.emf.ecore.EObject; - /** * <!-- begin-user-doc --> * A representation of the model object '<em><b>NFC</b></em>'. @@ -33,7 +31,7 @@ public interface NFC extends Proximity { * @model transient="true" * @generated */ - Map<String, EObject> getTagData(); + Map<String, Object> getTagData(); /** * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.NFC#getTagData <em>Tag Data</em>}' attribute. @@ -43,6 +41,6 @@ public interface NFC extends Proximity { * @see #getTagData() * @generated */ - void setTagData(Map<String, EObject> value); + void setTagData(Map<String, Object> value); } // NFC diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/NetworkInterface.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/NetworkInterface.java deleted file mode 100644 index e029b2898a09b3d6331bf0da55ba31a4c75e529c..0000000000000000000000000000000000000000 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/NetworkInterface.java +++ /dev/null @@ -1,18 +0,0 @@ -/** - */ -package ipos.project.DataModellntegration.iPos_Datamodel; - -import org.eclipse.emf.ecore.EObject; - -/** - * <!-- begin-user-doc --> - * A representation of the model object '<em><b>Network Interface</b></em>'. - * <!-- end-user-doc --> - * - * - * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getNetworkInterface() - * @model - * @generated - */ -public interface NetworkInterface extends EObject { -} // NetworkInterface diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OFBiz/InventoryItem.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OFBiz/InventoryItem.java new file mode 100644 index 0000000000000000000000000000000000000000..f01a4707311cad3874ae8e51c1260cc72eeefabd --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OFBiz/InventoryItem.java @@ -0,0 +1,92 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.OFBiz; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Inventory Item</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.InventoryItem#getInventoryItemId <em>Inventory Item Id</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.InventoryItem#getContainerId <em>Container Id</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.InventoryItem#getProductId <em>Product Id</em>}</li> + * </ul> + * + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.OFBizPackage#getInventoryItem() + * @model + * @generated + */ +public interface InventoryItem extends EObject { + /** + * Returns the value of the '<em><b>Inventory Item Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Inventory Item Id</em>' attribute. + * @see #setInventoryItemId(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.OFBizPackage#getInventoryItem_InventoryItemId() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + String getInventoryItemId(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.InventoryItem#getInventoryItemId <em>Inventory Item Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Inventory Item Id</em>' attribute. + * @see #getInventoryItemId() + * @generated + */ + void setInventoryItemId(String value); + + /** + * Returns the value of the '<em><b>Container Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Container Id</em>' attribute. + * @see #setContainerId(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.OFBizPackage#getInventoryItem_ContainerId() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + String getContainerId(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.InventoryItem#getContainerId <em>Container Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Container Id</em>' attribute. + * @see #getContainerId() + * @generated + */ + void setContainerId(String value); + + /** + * Returns the value of the '<em><b>Product Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Product Id</em>' attribute. + * @see #setProductId(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.OFBizPackage#getInventoryItem_ProductId() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + String getProductId(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.InventoryItem#getProductId <em>Product Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Product Id</em>' attribute. + * @see #getProductId() + * @generated + */ + void setProductId(String value); + +} // InventoryItem diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OFBiz/OFBizFactory.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OFBiz/OFBizFactory.java new file mode 100644 index 0000000000000000000000000000000000000000..81e6a61b1b5dcfb0a8629a7969633a737212ddae --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OFBiz/OFBizFactory.java @@ -0,0 +1,78 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.OFBiz; + +import org.eclipse.emf.ecore.EFactory; + +/** + * <!-- begin-user-doc --> + * The <b>Factory</b> for the model. + * It provides a create method for each non-abstract class of the model. + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.OFBizPackage + * @generated + */ +public interface OFBizFactory extends EFactory { + /** + * The singleton instance of the factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + OFBizFactory eINSTANCE = ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl.OFBizFactoryImpl.init(); + + /** + * Returns a new object of class '<em>Picklist</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Picklist</em>'. + * @generated + */ + Picklist createPicklist(); + + /** + * Returns a new object of class '<em>Picklist Bin</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Picklist Bin</em>'. + * @generated + */ + PicklistBin createPicklistBin(); + + /** + * Returns a new object of class '<em>Picklist Item</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Picklist Item</em>'. + * @generated + */ + PicklistItem createPicklistItem(); + + /** + * Returns a new object of class '<em>Inventory Item</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Inventory Item</em>'. + * @generated + */ + InventoryItem createInventoryItem(); + + /** + * Returns a new object of class '<em>Picklist Role</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Picklist Role</em>'. + * @generated + */ + PicklistRole createPicklistRole(); + + /** + * Returns the package supported by this factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the package supported by this factory. + * @generated + */ + OFBizPackage getOFBizPackage(); + +} //OFBizFactory diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OFBiz/OFBizPackage.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OFBiz/OFBizPackage.java new file mode 100644 index 0000000000000000000000000000000000000000..31c3d4c40b2de02bed03c7c8ea09794e1fa4269d --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OFBiz/OFBizPackage.java @@ -0,0 +1,688 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.OFBiz; + +import org.eclipse.emf.ecore.EAttribute; +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EPackage; +import org.eclipse.emf.ecore.EReference; + +/** + * <!-- begin-user-doc --> + * The <b>Package</b> for the model. + * It contains accessors for the meta objects to represent + * <ul> + * <li>each class,</li> + * <li>each feature of each class,</li> + * <li>each operation of each class,</li> + * <li>each enum,</li> + * <li>and each data type</li> + * </ul> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.OFBizFactory + * @model kind="package" + * @generated + */ +public interface OFBizPackage extends EPackage { + /** + * The package name. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + String eNAME = "OFBiz"; + + /** + * The package namespace URI. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + String eNS_URI = "ofbiz"; + + /** + * The package namespace name. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + String eNS_PREFIX = "ofbiz"; + + /** + * The singleton instance of the package. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + OFBizPackage eINSTANCE = ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl.OFBizPackageImpl.init(); + + /** + * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl.PicklistImpl <em>Picklist</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl.PicklistImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl.OFBizPackageImpl#getPicklist() + * @generated + */ + int PICKLIST = 0; + + /** + * The feature id for the '<em><b>Picklist Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int PICKLIST__PICKLIST_ID = 0; + + /** + * The feature id for the '<em><b>Picklist Roles</b></em>' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int PICKLIST__PICKLIST_ROLES = 1; + + /** + * The feature id for the '<em><b>Picklist Bins</b></em>' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int PICKLIST__PICKLIST_BINS = 2; + + /** + * The number of structural features of the '<em>Picklist</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int PICKLIST_FEATURE_COUNT = 3; + + /** + * The number of operations of the '<em>Picklist</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int PICKLIST_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl.PicklistBinImpl <em>Picklist Bin</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl.PicklistBinImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl.OFBizPackageImpl#getPicklistBin() + * @generated + */ + int PICKLIST_BIN = 1; + + /** + * The feature id for the '<em><b>Picklist Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int PICKLIST_BIN__PICKLIST_ID = 0; + + /** + * The feature id for the '<em><b>Bin Location Number</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int PICKLIST_BIN__BIN_LOCATION_NUMBER = 1; + + /** + * The feature id for the '<em><b>Picklist Items</b></em>' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int PICKLIST_BIN__PICKLIST_ITEMS = 2; + + /** + * The number of structural features of the '<em>Picklist Bin</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int PICKLIST_BIN_FEATURE_COUNT = 3; + + /** + * The number of operations of the '<em>Picklist Bin</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int PICKLIST_BIN_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl.PicklistItemImpl <em>Picklist Item</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl.PicklistItemImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl.OFBizPackageImpl#getPicklistItem() + * @generated + */ + int PICKLIST_ITEM = 2; + + /** + * The feature id for the '<em><b>Inventory Item</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int PICKLIST_ITEM__INVENTORY_ITEM = 0; + + /** + * The number of structural features of the '<em>Picklist Item</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int PICKLIST_ITEM_FEATURE_COUNT = 1; + + /** + * The number of operations of the '<em>Picklist Item</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int PICKLIST_ITEM_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl.InventoryItemImpl <em>Inventory Item</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl.InventoryItemImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl.OFBizPackageImpl#getInventoryItem() + * @generated + */ + int INVENTORY_ITEM = 3; + + /** + * The feature id for the '<em><b>Inventory Item Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int INVENTORY_ITEM__INVENTORY_ITEM_ID = 0; + + /** + * The feature id for the '<em><b>Container Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int INVENTORY_ITEM__CONTAINER_ID = 1; + + /** + * The feature id for the '<em><b>Product Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int INVENTORY_ITEM__PRODUCT_ID = 2; + + /** + * The number of structural features of the '<em>Inventory Item</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int INVENTORY_ITEM_FEATURE_COUNT = 3; + + /** + * The number of operations of the '<em>Inventory Item</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int INVENTORY_ITEM_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl.PicklistRoleImpl <em>Picklist Role</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl.PicklistRoleImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl.OFBizPackageImpl#getPicklistRole() + * @generated + */ + int PICKLIST_ROLE = 4; + + /** + * The feature id for the '<em><b>Picklist Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int PICKLIST_ROLE__PICKLIST_ID = 0; + + /** + * The feature id for the '<em><b>Party Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int PICKLIST_ROLE__PARTY_ID = 1; + + /** + * The feature id for the '<em><b>Role Type Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int PICKLIST_ROLE__ROLE_TYPE_ID = 2; + + /** + * The number of structural features of the '<em>Picklist Role</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int PICKLIST_ROLE_FEATURE_COUNT = 3; + + /** + * The number of operations of the '<em>Picklist Role</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int PICKLIST_ROLE_OPERATION_COUNT = 0; + + /** + * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.Picklist <em>Picklist</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Picklist</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.Picklist + * @generated + */ + EClass getPicklist(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.Picklist#getPicklistId <em>Picklist Id</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Picklist Id</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.Picklist#getPicklistId() + * @see #getPicklist() + * @generated + */ + EAttribute getPicklist_PicklistId(); + + /** + * Returns the meta object for the reference list '{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.Picklist#getPicklistRoles <em>Picklist Roles</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference list '<em>Picklist Roles</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.Picklist#getPicklistRoles() + * @see #getPicklist() + * @generated + */ + EReference getPicklist_PicklistRoles(); + + /** + * Returns the meta object for the reference list '{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.Picklist#getPicklistBins <em>Picklist Bins</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference list '<em>Picklist Bins</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.Picklist#getPicklistBins() + * @see #getPicklist() + * @generated + */ + EReference getPicklist_PicklistBins(); + + /** + * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.PicklistBin <em>Picklist Bin</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Picklist Bin</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.PicklistBin + * @generated + */ + EClass getPicklistBin(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.PicklistBin#getPicklistId <em>Picklist Id</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Picklist Id</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.PicklistBin#getPicklistId() + * @see #getPicklistBin() + * @generated + */ + EAttribute getPicklistBin_PicklistId(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.PicklistBin#getBinLocationNumber <em>Bin Location Number</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Bin Location Number</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.PicklistBin#getBinLocationNumber() + * @see #getPicklistBin() + * @generated + */ + EAttribute getPicklistBin_BinLocationNumber(); + + /** + * Returns the meta object for the reference list '{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.PicklistBin#getPicklistItems <em>Picklist Items</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference list '<em>Picklist Items</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.PicklistBin#getPicklistItems() + * @see #getPicklistBin() + * @generated + */ + EReference getPicklistBin_PicklistItems(); + + /** + * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.PicklistItem <em>Picklist Item</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Picklist Item</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.PicklistItem + * @generated + */ + EClass getPicklistItem(); + + /** + * Returns the meta object for the reference '{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.PicklistItem#getInventoryItem <em>Inventory Item</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference '<em>Inventory Item</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.PicklistItem#getInventoryItem() + * @see #getPicklistItem() + * @generated + */ + EReference getPicklistItem_InventoryItem(); + + /** + * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.InventoryItem <em>Inventory Item</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Inventory Item</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.InventoryItem + * @generated + */ + EClass getInventoryItem(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.InventoryItem#getInventoryItemId <em>Inventory Item Id</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Inventory Item Id</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.InventoryItem#getInventoryItemId() + * @see #getInventoryItem() + * @generated + */ + EAttribute getInventoryItem_InventoryItemId(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.InventoryItem#getContainerId <em>Container Id</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Container Id</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.InventoryItem#getContainerId() + * @see #getInventoryItem() + * @generated + */ + EAttribute getInventoryItem_ContainerId(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.InventoryItem#getProductId <em>Product Id</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Product Id</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.InventoryItem#getProductId() + * @see #getInventoryItem() + * @generated + */ + EAttribute getInventoryItem_ProductId(); + + /** + * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.PicklistRole <em>Picklist Role</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Picklist Role</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.PicklistRole + * @generated + */ + EClass getPicklistRole(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.PicklistRole#getPicklistId <em>Picklist Id</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Picklist Id</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.PicklistRole#getPicklistId() + * @see #getPicklistRole() + * @generated + */ + EAttribute getPicklistRole_PicklistId(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.PicklistRole#getPartyId <em>Party Id</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Party Id</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.PicklistRole#getPartyId() + * @see #getPicklistRole() + * @generated + */ + EAttribute getPicklistRole_PartyId(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.PicklistRole#getRoleTypeId <em>Role Type Id</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Role Type Id</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.PicklistRole#getRoleTypeId() + * @see #getPicklistRole() + * @generated + */ + EAttribute getPicklistRole_RoleTypeId(); + + /** + * Returns the factory that creates the instances of the model. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the factory that creates the instances of the model. + * @generated + */ + OFBizFactory getOFBizFactory(); + + /** + * <!-- begin-user-doc --> + * Defines literals for the meta objects that represent + * <ul> + * <li>each class,</li> + * <li>each feature of each class,</li> + * <li>each operation of each class,</li> + * <li>each enum,</li> + * <li>and each data type</li> + * </ul> + * <!-- end-user-doc --> + * @generated + */ + interface Literals { + /** + * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl.PicklistImpl <em>Picklist</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl.PicklistImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl.OFBizPackageImpl#getPicklist() + * @generated + */ + EClass PICKLIST = eINSTANCE.getPicklist(); + + /** + * The meta object literal for the '<em><b>Picklist Id</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute PICKLIST__PICKLIST_ID = eINSTANCE.getPicklist_PicklistId(); + + /** + * The meta object literal for the '<em><b>Picklist Roles</b></em>' reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference PICKLIST__PICKLIST_ROLES = eINSTANCE.getPicklist_PicklistRoles(); + + /** + * The meta object literal for the '<em><b>Picklist Bins</b></em>' reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference PICKLIST__PICKLIST_BINS = eINSTANCE.getPicklist_PicklistBins(); + + /** + * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl.PicklistBinImpl <em>Picklist Bin</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl.PicklistBinImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl.OFBizPackageImpl#getPicklistBin() + * @generated + */ + EClass PICKLIST_BIN = eINSTANCE.getPicklistBin(); + + /** + * The meta object literal for the '<em><b>Picklist Id</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute PICKLIST_BIN__PICKLIST_ID = eINSTANCE.getPicklistBin_PicklistId(); + + /** + * The meta object literal for the '<em><b>Bin Location Number</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute PICKLIST_BIN__BIN_LOCATION_NUMBER = eINSTANCE.getPicklistBin_BinLocationNumber(); + + /** + * The meta object literal for the '<em><b>Picklist Items</b></em>' reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference PICKLIST_BIN__PICKLIST_ITEMS = eINSTANCE.getPicklistBin_PicklistItems(); + + /** + * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl.PicklistItemImpl <em>Picklist Item</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl.PicklistItemImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl.OFBizPackageImpl#getPicklistItem() + * @generated + */ + EClass PICKLIST_ITEM = eINSTANCE.getPicklistItem(); + + /** + * The meta object literal for the '<em><b>Inventory Item</b></em>' reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference PICKLIST_ITEM__INVENTORY_ITEM = eINSTANCE.getPicklistItem_InventoryItem(); + + /** + * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl.InventoryItemImpl <em>Inventory Item</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl.InventoryItemImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl.OFBizPackageImpl#getInventoryItem() + * @generated + */ + EClass INVENTORY_ITEM = eINSTANCE.getInventoryItem(); + + /** + * The meta object literal for the '<em><b>Inventory Item Id</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute INVENTORY_ITEM__INVENTORY_ITEM_ID = eINSTANCE.getInventoryItem_InventoryItemId(); + + /** + * The meta object literal for the '<em><b>Container Id</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute INVENTORY_ITEM__CONTAINER_ID = eINSTANCE.getInventoryItem_ContainerId(); + + /** + * The meta object literal for the '<em><b>Product Id</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute INVENTORY_ITEM__PRODUCT_ID = eINSTANCE.getInventoryItem_ProductId(); + + /** + * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl.PicklistRoleImpl <em>Picklist Role</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl.PicklistRoleImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl.OFBizPackageImpl#getPicklistRole() + * @generated + */ + EClass PICKLIST_ROLE = eINSTANCE.getPicklistRole(); + + /** + * The meta object literal for the '<em><b>Picklist Id</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute PICKLIST_ROLE__PICKLIST_ID = eINSTANCE.getPicklistRole_PicklistId(); + + /** + * The meta object literal for the '<em><b>Party Id</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute PICKLIST_ROLE__PARTY_ID = eINSTANCE.getPicklistRole_PartyId(); + + /** + * The meta object literal for the '<em><b>Role Type Id</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute PICKLIST_ROLE__ROLE_TYPE_ID = eINSTANCE.getPicklistRole_RoleTypeId(); + + } + +} //OFBizPackage diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OFBiz/Picklist.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OFBiz/Picklist.java new file mode 100644 index 0000000000000000000000000000000000000000..7abef45d980eb8ef10f28d15c9f1a1cfe3334116 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OFBiz/Picklist.java @@ -0,0 +1,74 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.OFBiz; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Picklist</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.Picklist#getPicklistId <em>Picklist Id</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.Picklist#getPicklistRoles <em>Picklist Roles</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.Picklist#getPicklistBins <em>Picklist Bins</em>}</li> + * </ul> + * + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.OFBizPackage#getPicklist() + * @model + * @generated + */ +public interface Picklist extends EObject { + /** + * Returns the value of the '<em><b>Picklist Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Picklist Id</em>' attribute. + * @see #setPicklistId(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.OFBizPackage#getPicklist_PicklistId() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + String getPicklistId(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.Picklist#getPicklistId <em>Picklist Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Picklist Id</em>' attribute. + * @see #getPicklistId() + * @generated + */ + void setPicklistId(String value); + + /** + * Returns the value of the '<em><b>Picklist Roles</b></em>' reference list. + * The list contents are of type {@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.PicklistRole}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Picklist Roles</em>' reference list. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.OFBizPackage#getPicklist_PicklistRoles() + * @model + * @generated + */ + EList<PicklistRole> getPicklistRoles(); + + /** + * Returns the value of the '<em><b>Picklist Bins</b></em>' reference list. + * The list contents are of type {@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.PicklistBin}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Picklist Bins</em>' reference list. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.OFBizPackage#getPicklist_PicklistBins() + * @model + * @generated + */ + EList<PicklistBin> getPicklistBins(); + +} // Picklist diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OFBiz/PicklistBin.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OFBiz/PicklistBin.java new file mode 100644 index 0000000000000000000000000000000000000000..53b25f7e92586e7562b085e9b739ead9670823fa --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OFBiz/PicklistBin.java @@ -0,0 +1,84 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.OFBiz; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Picklist Bin</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.PicklistBin#getPicklistId <em>Picklist Id</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.PicklistBin#getBinLocationNumber <em>Bin Location Number</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.PicklistBin#getPicklistItems <em>Picklist Items</em>}</li> + * </ul> + * + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.OFBizPackage#getPicklistBin() + * @model + * @generated + */ +public interface PicklistBin extends EObject { + /** + * Returns the value of the '<em><b>Picklist Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Picklist Id</em>' attribute. + * @see #setPicklistId(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.OFBizPackage#getPicklistBin_PicklistId() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + String getPicklistId(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.PicklistBin#getPicklistId <em>Picklist Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Picklist Id</em>' attribute. + * @see #getPicklistId() + * @generated + */ + void setPicklistId(String value); + + /** + * Returns the value of the '<em><b>Bin Location Number</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Bin Location Number</em>' attribute. + * @see #setBinLocationNumber(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.OFBizPackage#getPicklistBin_BinLocationNumber() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + String getBinLocationNumber(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.PicklistBin#getBinLocationNumber <em>Bin Location Number</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Bin Location Number</em>' attribute. + * @see #getBinLocationNumber() + * @generated + */ + void setBinLocationNumber(String value); + + /** + * Returns the value of the '<em><b>Picklist Items</b></em>' reference list. + * The list contents are of type {@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.PicklistItem}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Picklist Items</em>' reference list. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.OFBizPackage#getPicklistBin_PicklistItems() + * @model + * @generated + */ + EList<PicklistItem> getPicklistItems(); + +} // PicklistBin diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OFBiz/PicklistItem.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OFBiz/PicklistItem.java new file mode 100644 index 0000000000000000000000000000000000000000..b2506d62ac206d71fc617dd88bb65f6815425bcb --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OFBiz/PicklistItem.java @@ -0,0 +1,46 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.OFBiz; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Picklist Item</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.PicklistItem#getInventoryItem <em>Inventory Item</em>}</li> + * </ul> + * + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.OFBizPackage#getPicklistItem() + * @model + * @generated + */ +public interface PicklistItem extends EObject { + /** + * Returns the value of the '<em><b>Inventory Item</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Inventory Item</em>' reference. + * @see #setInventoryItem(InventoryItem) + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.OFBizPackage#getPicklistItem_InventoryItem() + * @model required="true" + * @generated + */ + InventoryItem getInventoryItem(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.PicklistItem#getInventoryItem <em>Inventory Item</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Inventory Item</em>' reference. + * @see #getInventoryItem() + * @generated + */ + void setInventoryItem(InventoryItem value); + +} // PicklistItem diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OFBiz/PicklistRole.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OFBiz/PicklistRole.java new file mode 100644 index 0000000000000000000000000000000000000000..5d2c290b1394e6f6d037013c814677e8e4b7d10f --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OFBiz/PicklistRole.java @@ -0,0 +1,92 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.OFBiz; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Picklist Role</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.PicklistRole#getPicklistId <em>Picklist Id</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.PicklistRole#getPartyId <em>Party Id</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.PicklistRole#getRoleTypeId <em>Role Type Id</em>}</li> + * </ul> + * + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.OFBizPackage#getPicklistRole() + * @model + * @generated + */ +public interface PicklistRole extends EObject { + /** + * Returns the value of the '<em><b>Picklist Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Picklist Id</em>' attribute. + * @see #setPicklistId(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.OFBizPackage#getPicklistRole_PicklistId() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + String getPicklistId(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.PicklistRole#getPicklistId <em>Picklist Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Picklist Id</em>' attribute. + * @see #getPicklistId() + * @generated + */ + void setPicklistId(String value); + + /** + * Returns the value of the '<em><b>Party Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Party Id</em>' attribute. + * @see #setPartyId(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.OFBizPackage#getPicklistRole_PartyId() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + String getPartyId(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.PicklistRole#getPartyId <em>Party Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Party Id</em>' attribute. + * @see #getPartyId() + * @generated + */ + void setPartyId(String value); + + /** + * Returns the value of the '<em><b>Role Type Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Role Type Id</em>' attribute. + * @see #setRoleTypeId(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.OFBizPackage#getPicklistRole_RoleTypeId() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + String getRoleTypeId(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.PicklistRole#getRoleTypeId <em>Role Type Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Role Type Id</em>' attribute. + * @see #getRoleTypeId() + * @generated + */ + void setRoleTypeId(String value); + +} // PicklistRole diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OFBiz/impl/InventoryItemImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OFBiz/impl/InventoryItemImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..1a1e44ef790e8a6dee9c7036246e90d9925593b7 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OFBiz/impl/InventoryItemImpl.java @@ -0,0 +1,276 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl; + +import ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.InventoryItem; +import ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.OFBizPackage; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Inventory Item</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl.InventoryItemImpl#getInventoryItemId <em>Inventory Item Id</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl.InventoryItemImpl#getContainerId <em>Container Id</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl.InventoryItemImpl#getProductId <em>Product Id</em>}</li> + * </ul> + * + * @generated + */ +public class InventoryItemImpl extends MinimalEObjectImpl.Container implements InventoryItem { + /** + * The default value of the '{@link #getInventoryItemId() <em>Inventory Item Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getInventoryItemId() + * @generated + * @ordered + */ + protected static final String INVENTORY_ITEM_ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getInventoryItemId() <em>Inventory Item Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getInventoryItemId() + * @generated + * @ordered + */ + protected String inventoryItemId = INVENTORY_ITEM_ID_EDEFAULT; + + /** + * The default value of the '{@link #getContainerId() <em>Container Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getContainerId() + * @generated + * @ordered + */ + protected static final String CONTAINER_ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getContainerId() <em>Container Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getContainerId() + * @generated + * @ordered + */ + protected String containerId = CONTAINER_ID_EDEFAULT; + + /** + * The default value of the '{@link #getProductId() <em>Product Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getProductId() + * @generated + * @ordered + */ + protected static final String PRODUCT_ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getProductId() <em>Product Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getProductId() + * @generated + * @ordered + */ + protected String productId = PRODUCT_ID_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected InventoryItemImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return OFBizPackage.Literals.INVENTORY_ITEM; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getInventoryItemId() { + return inventoryItemId; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setInventoryItemId(String newInventoryItemId) { + String oldInventoryItemId = inventoryItemId; + inventoryItemId = newInventoryItemId; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, OFBizPackage.INVENTORY_ITEM__INVENTORY_ITEM_ID, + oldInventoryItemId, inventoryItemId)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getContainerId() { + return containerId; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setContainerId(String newContainerId) { + String oldContainerId = containerId; + containerId = newContainerId; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, OFBizPackage.INVENTORY_ITEM__CONTAINER_ID, + oldContainerId, containerId)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getProductId() { + return productId; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setProductId(String newProductId) { + String oldProductId = productId; + productId = newProductId; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, OFBizPackage.INVENTORY_ITEM__PRODUCT_ID, oldProductId, + productId)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case OFBizPackage.INVENTORY_ITEM__INVENTORY_ITEM_ID: + return getInventoryItemId(); + case OFBizPackage.INVENTORY_ITEM__CONTAINER_ID: + return getContainerId(); + case OFBizPackage.INVENTORY_ITEM__PRODUCT_ID: + return getProductId(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case OFBizPackage.INVENTORY_ITEM__INVENTORY_ITEM_ID: + setInventoryItemId((String) newValue); + return; + case OFBizPackage.INVENTORY_ITEM__CONTAINER_ID: + setContainerId((String) newValue); + return; + case OFBizPackage.INVENTORY_ITEM__PRODUCT_ID: + setProductId((String) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case OFBizPackage.INVENTORY_ITEM__INVENTORY_ITEM_ID: + setInventoryItemId(INVENTORY_ITEM_ID_EDEFAULT); + return; + case OFBizPackage.INVENTORY_ITEM__CONTAINER_ID: + setContainerId(CONTAINER_ID_EDEFAULT); + return; + case OFBizPackage.INVENTORY_ITEM__PRODUCT_ID: + setProductId(PRODUCT_ID_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case OFBizPackage.INVENTORY_ITEM__INVENTORY_ITEM_ID: + return INVENTORY_ITEM_ID_EDEFAULT == null ? inventoryItemId != null + : !INVENTORY_ITEM_ID_EDEFAULT.equals(inventoryItemId); + case OFBizPackage.INVENTORY_ITEM__CONTAINER_ID: + return CONTAINER_ID_EDEFAULT == null ? containerId != null : !CONTAINER_ID_EDEFAULT.equals(containerId); + case OFBizPackage.INVENTORY_ITEM__PRODUCT_ID: + return PRODUCT_ID_EDEFAULT == null ? productId != null : !PRODUCT_ID_EDEFAULT.equals(productId); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (inventoryItemId: "); + result.append(inventoryItemId); + result.append(", containerId: "); + result.append(containerId); + result.append(", productId: "); + result.append(productId); + result.append(')'); + return result.toString(); + } + +} //InventoryItemImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OFBiz/impl/OFBizFactoryImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OFBiz/impl/OFBizFactoryImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..6dc9e0b63ebbcad57c6e931855ef08f812a0a93d --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OFBiz/impl/OFBizFactoryImpl.java @@ -0,0 +1,143 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl; + +import ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.*; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EPackage; + +import org.eclipse.emf.ecore.impl.EFactoryImpl; + +import org.eclipse.emf.ecore.plugin.EcorePlugin; + +/** + * <!-- begin-user-doc --> + * An implementation of the model <b>Factory</b>. + * <!-- end-user-doc --> + * @generated + */ +public class OFBizFactoryImpl extends EFactoryImpl implements OFBizFactory { + /** + * Creates the default factory implementation. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static OFBizFactory init() { + try { + OFBizFactory theOFBizFactory = (OFBizFactory) EPackage.Registry.INSTANCE.getEFactory(OFBizPackage.eNS_URI); + if (theOFBizFactory != null) { + return theOFBizFactory; + } + } catch (Exception exception) { + EcorePlugin.INSTANCE.log(exception); + } + return new OFBizFactoryImpl(); + } + + /** + * Creates an instance of the factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public OFBizFactoryImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EObject create(EClass eClass) { + switch (eClass.getClassifierID()) { + case OFBizPackage.PICKLIST: + return createPicklist(); + case OFBizPackage.PICKLIST_BIN: + return createPicklistBin(); + case OFBizPackage.PICKLIST_ITEM: + return createPicklistItem(); + case OFBizPackage.INVENTORY_ITEM: + return createInventoryItem(); + case OFBizPackage.PICKLIST_ROLE: + return createPicklistRole(); + default: + throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); + } + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Picklist createPicklist() { + PicklistImpl picklist = new PicklistImpl(); + return picklist; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public PicklistBin createPicklistBin() { + PicklistBinImpl picklistBin = new PicklistBinImpl(); + return picklistBin; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public PicklistItem createPicklistItem() { + PicklistItemImpl picklistItem = new PicklistItemImpl(); + return picklistItem; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public InventoryItem createInventoryItem() { + InventoryItemImpl inventoryItem = new InventoryItemImpl(); + return inventoryItem; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public PicklistRole createPicklistRole() { + PicklistRoleImpl picklistRole = new PicklistRoleImpl(); + return picklistRole; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public OFBizPackage getOFBizPackage() { + return (OFBizPackage) getEPackage(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @deprecated + * @generated + */ + @Deprecated + public static OFBizPackage getPackage() { + return OFBizPackage.eINSTANCE; + } + +} //OFBizFactoryImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OFBiz/impl/OFBizPackageImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OFBiz/impl/OFBizPackageImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..ab4a32c33d916d8919959949a8b9a21c9cbc4650 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OFBiz/impl/OFBizPackageImpl.java @@ -0,0 +1,481 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl; + +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage; + +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosDevKitPackageImpl; + +import ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage; + +import ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.InventoryItem; +import ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.OFBizFactory; +import ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.OFBizPackage; +import ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.Picklist; +import ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.PicklistBin; +import ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.PicklistItem; +import ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.PicklistRole; + +import ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPackage; +import ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMPackageImpl; +import ipos.project.DataModellntegration.iPos_Datamodel.Tooz.ToozPackage; +import ipos.project.DataModellntegration.iPos_Datamodel.Tooz.impl.ToozPackageImpl; +import ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.VDA5050Package; +import ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl.VDA5050PackageImpl; +import ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl; + +import org.eclipse.emf.ecore.EAttribute; +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EPackage; +import org.eclipse.emf.ecore.EReference; + +import org.eclipse.emf.ecore.impl.EPackageImpl; + +import org.eclipse.emf.ecore.xml.type.XMLTypePackage; + +/** + * <!-- begin-user-doc --> + * An implementation of the model <b>Package</b>. + * <!-- end-user-doc --> + * @generated + */ +public class OFBizPackageImpl extends EPackageImpl implements OFBizPackage { + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass picklistEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass picklistBinEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass picklistItemEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass inventoryItemEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass picklistRoleEClass = 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 ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.OFBizPackage#eNS_URI + * @see #init() + * @generated + */ + private OFBizPackageImpl() { + super(eNS_URI, OFBizFactory.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 OFBizPackage#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 OFBizPackage init() { + if (isInited) + return (OFBizPackage) EPackage.Registry.INSTANCE.getEPackage(OFBizPackage.eNS_URI); + + // Obtain or create and register package + Object registeredOFBizPackage = EPackage.Registry.INSTANCE.get(eNS_URI); + OFBizPackageImpl theOFBizPackage = registeredOFBizPackage instanceof OFBizPackageImpl + ? (OFBizPackageImpl) registeredOFBizPackage + : new OFBizPackageImpl(); + + isInited = true; + + // Initialize simple dependencies + XMLTypePackage.eINSTANCE.eClass(); + + // Obtain or create and register interdependencies + Object registeredPackage = EPackage.Registry.INSTANCE.getEPackage(IPos_DatamodelPackage.eNS_URI); + IPos_DatamodelPackageImpl theIPos_DatamodelPackage = (IPos_DatamodelPackageImpl) (registeredPackage instanceof IPos_DatamodelPackageImpl + ? registeredPackage + : IPos_DatamodelPackage.eINSTANCE); + registeredPackage = EPackage.Registry.INSTANCE.getEPackage(IPosDevKitPackage.eNS_URI); + IPosDevKitPackageImpl theIPosDevKitPackage = (IPosDevKitPackageImpl) (registeredPackage instanceof IPosDevKitPackageImpl + ? registeredPackage + : IPosDevKitPackage.eINSTANCE); + registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ToozPackage.eNS_URI); + ToozPackageImpl theToozPackage = (ToozPackageImpl) (registeredPackage instanceof ToozPackageImpl + ? registeredPackage + : ToozPackage.eINSTANCE); + registeredPackage = EPackage.Registry.INSTANCE.getEPackage(VDA5050Package.eNS_URI); + VDA5050PackageImpl theVDA5050Package = (VDA5050PackageImpl) (registeredPackage instanceof VDA5050PackageImpl + ? registeredPackage + : VDA5050Package.eINSTANCE); + registeredPackage = EPackage.Registry.INSTANCE.getEPackage(OSMPackage.eNS_URI); + OSMPackageImpl theOSMPackage = (OSMPackageImpl) (registeredPackage instanceof OSMPackageImpl ? registeredPackage + : OSMPackage.eINSTANCE); + + // Create package meta-data objects + theOFBizPackage.createPackageContents(); + theIPos_DatamodelPackage.createPackageContents(); + theIPosDevKitPackage.createPackageContents(); + theToozPackage.createPackageContents(); + theVDA5050Package.createPackageContents(); + theOSMPackage.createPackageContents(); + + // Initialize created meta-data + theOFBizPackage.initializePackageContents(); + theIPos_DatamodelPackage.initializePackageContents(); + theIPosDevKitPackage.initializePackageContents(); + theToozPackage.initializePackageContents(); + theVDA5050Package.initializePackageContents(); + theOSMPackage.initializePackageContents(); + + // Mark meta-data to indicate it can't be changed + theOFBizPackage.freeze(); + + // Update the registry and return the package + EPackage.Registry.INSTANCE.put(OFBizPackage.eNS_URI, theOFBizPackage); + return theOFBizPackage; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getPicklist() { + return picklistEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getPicklist_PicklistId() { + return (EAttribute) picklistEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EReference getPicklist_PicklistRoles() { + return (EReference) picklistEClass.getEStructuralFeatures().get(1); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EReference getPicklist_PicklistBins() { + return (EReference) picklistEClass.getEStructuralFeatures().get(2); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getPicklistBin() { + return picklistBinEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getPicklistBin_PicklistId() { + return (EAttribute) picklistBinEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getPicklistBin_BinLocationNumber() { + return (EAttribute) picklistBinEClass.getEStructuralFeatures().get(1); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EReference getPicklistBin_PicklistItems() { + return (EReference) picklistBinEClass.getEStructuralFeatures().get(2); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getPicklistItem() { + return picklistItemEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EReference getPicklistItem_InventoryItem() { + return (EReference) picklistItemEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getInventoryItem() { + return inventoryItemEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getInventoryItem_InventoryItemId() { + return (EAttribute) inventoryItemEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getInventoryItem_ContainerId() { + return (EAttribute) inventoryItemEClass.getEStructuralFeatures().get(1); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getInventoryItem_ProductId() { + return (EAttribute) inventoryItemEClass.getEStructuralFeatures().get(2); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getPicklistRole() { + return picklistRoleEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getPicklistRole_PicklistId() { + return (EAttribute) picklistRoleEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getPicklistRole_PartyId() { + return (EAttribute) picklistRoleEClass.getEStructuralFeatures().get(1); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getPicklistRole_RoleTypeId() { + return (EAttribute) picklistRoleEClass.getEStructuralFeatures().get(2); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public OFBizFactory getOFBizFactory() { + return (OFBizFactory) 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 + picklistEClass = createEClass(PICKLIST); + createEAttribute(picklistEClass, PICKLIST__PICKLIST_ID); + createEReference(picklistEClass, PICKLIST__PICKLIST_ROLES); + createEReference(picklistEClass, PICKLIST__PICKLIST_BINS); + + picklistBinEClass = createEClass(PICKLIST_BIN); + createEAttribute(picklistBinEClass, PICKLIST_BIN__PICKLIST_ID); + createEAttribute(picklistBinEClass, PICKLIST_BIN__BIN_LOCATION_NUMBER); + createEReference(picklistBinEClass, PICKLIST_BIN__PICKLIST_ITEMS); + + picklistItemEClass = createEClass(PICKLIST_ITEM); + createEReference(picklistItemEClass, PICKLIST_ITEM__INVENTORY_ITEM); + + inventoryItemEClass = createEClass(INVENTORY_ITEM); + createEAttribute(inventoryItemEClass, INVENTORY_ITEM__INVENTORY_ITEM_ID); + createEAttribute(inventoryItemEClass, INVENTORY_ITEM__CONTAINER_ID); + createEAttribute(inventoryItemEClass, INVENTORY_ITEM__PRODUCT_ID); + + picklistRoleEClass = createEClass(PICKLIST_ROLE); + createEAttribute(picklistRoleEClass, PICKLIST_ROLE__PICKLIST_ID); + createEAttribute(picklistRoleEClass, PICKLIST_ROLE__PARTY_ID); + createEAttribute(picklistRoleEClass, PICKLIST_ROLE__ROLE_TYPE_ID); + } + + /** + * <!-- 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); + + // Obtain other dependent packages + XMLTypePackage theXMLTypePackage = (XMLTypePackage) EPackage.Registry.INSTANCE + .getEPackage(XMLTypePackage.eNS_URI); + + // Create type parameters + + // Set bounds for type parameters + + // Add supertypes to classes + + // Initialize classes, features, and operations; add parameters + initEClass(picklistEClass, Picklist.class, "Picklist", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getPicklist_PicklistId(), theXMLTypePackage.getString(), "picklistId", null, 0, 1, + Picklist.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + initEReference(getPicklist_PicklistRoles(), this.getPicklistRole(), null, "picklistRoles", null, 0, -1, + Picklist.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, + !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getPicklist_PicklistBins(), this.getPicklistBin(), null, "picklistBins", null, 0, -1, + Picklist.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, + !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(picklistBinEClass, PicklistBin.class, "PicklistBin", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getPicklistBin_PicklistId(), theXMLTypePackage.getString(), "picklistId", null, 0, 1, + PicklistBin.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + initEAttribute(getPicklistBin_BinLocationNumber(), theXMLTypePackage.getString(), "binLocationNumber", null, 0, + 1, PicklistBin.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + initEReference(getPicklistBin_PicklistItems(), this.getPicklistItem(), null, "picklistItems", null, 0, -1, + PicklistBin.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, + !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(picklistItemEClass, PicklistItem.class, "PicklistItem", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEReference(getPicklistItem_InventoryItem(), this.getInventoryItem(), null, "inventoryItem", null, 1, 1, + PicklistItem.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, + !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(inventoryItemEClass, InventoryItem.class, "InventoryItem", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getInventoryItem_InventoryItemId(), theXMLTypePackage.getString(), "inventoryItemId", null, 0, 1, + InventoryItem.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + initEAttribute(getInventoryItem_ContainerId(), theXMLTypePackage.getString(), "containerId", null, 0, 1, + InventoryItem.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + initEAttribute(getInventoryItem_ProductId(), theXMLTypePackage.getString(), "productId", null, 0, 1, + InventoryItem.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + + initEClass(picklistRoleEClass, PicklistRole.class, "PicklistRole", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getPicklistRole_PicklistId(), theXMLTypePackage.getString(), "picklistId", null, 0, 1, + PicklistRole.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + initEAttribute(getPicklistRole_PartyId(), theXMLTypePackage.getString(), "partyId", null, 0, 1, + PicklistRole.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + initEAttribute(getPicklistRole_RoleTypeId(), theXMLTypePackage.getString(), "roleTypeId", null, 0, 1, + PicklistRole.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + } + +} //OFBizPackageImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OFBiz/impl/PicklistBinImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OFBiz/impl/PicklistBinImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..87d4dfad3c2c3609fcb572768e0c1106d4e66e16 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OFBiz/impl/PicklistBinImpl.java @@ -0,0 +1,264 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl; + +import ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.OFBizPackage; +import ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.PicklistBin; +import ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.PicklistItem; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EObjectResolvingEList; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Picklist Bin</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl.PicklistBinImpl#getPicklistId <em>Picklist Id</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl.PicklistBinImpl#getBinLocationNumber <em>Bin Location Number</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl.PicklistBinImpl#getPicklistItems <em>Picklist Items</em>}</li> + * </ul> + * + * @generated + */ +public class PicklistBinImpl extends MinimalEObjectImpl.Container implements PicklistBin { + /** + * The default value of the '{@link #getPicklistId() <em>Picklist Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPicklistId() + * @generated + * @ordered + */ + protected static final String PICKLIST_ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getPicklistId() <em>Picklist Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPicklistId() + * @generated + * @ordered + */ + protected String picklistId = PICKLIST_ID_EDEFAULT; + + /** + * The default value of the '{@link #getBinLocationNumber() <em>Bin Location Number</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getBinLocationNumber() + * @generated + * @ordered + */ + protected static final String BIN_LOCATION_NUMBER_EDEFAULT = null; + + /** + * The cached value of the '{@link #getBinLocationNumber() <em>Bin Location Number</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getBinLocationNumber() + * @generated + * @ordered + */ + protected String binLocationNumber = BIN_LOCATION_NUMBER_EDEFAULT; + + /** + * The cached value of the '{@link #getPicklistItems() <em>Picklist Items</em>}' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPicklistItems() + * @generated + * @ordered + */ + protected EList<PicklistItem> picklistItems; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected PicklistBinImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return OFBizPackage.Literals.PICKLIST_BIN; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getPicklistId() { + return picklistId; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setPicklistId(String newPicklistId) { + String oldPicklistId = picklistId; + picklistId = newPicklistId; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, OFBizPackage.PICKLIST_BIN__PICKLIST_ID, oldPicklistId, + picklistId)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getBinLocationNumber() { + return binLocationNumber; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setBinLocationNumber(String newBinLocationNumber) { + String oldBinLocationNumber = binLocationNumber; + binLocationNumber = newBinLocationNumber; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, OFBizPackage.PICKLIST_BIN__BIN_LOCATION_NUMBER, + oldBinLocationNumber, binLocationNumber)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EList<PicklistItem> getPicklistItems() { + if (picklistItems == null) { + picklistItems = new EObjectResolvingEList<PicklistItem>(PicklistItem.class, this, + OFBizPackage.PICKLIST_BIN__PICKLIST_ITEMS); + } + return picklistItems; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case OFBizPackage.PICKLIST_BIN__PICKLIST_ID: + return getPicklistId(); + case OFBizPackage.PICKLIST_BIN__BIN_LOCATION_NUMBER: + return getBinLocationNumber(); + case OFBizPackage.PICKLIST_BIN__PICKLIST_ITEMS: + return getPicklistItems(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case OFBizPackage.PICKLIST_BIN__PICKLIST_ID: + setPicklistId((String) newValue); + return; + case OFBizPackage.PICKLIST_BIN__BIN_LOCATION_NUMBER: + setBinLocationNumber((String) newValue); + return; + case OFBizPackage.PICKLIST_BIN__PICKLIST_ITEMS: + getPicklistItems().clear(); + getPicklistItems().addAll((Collection<? extends PicklistItem>) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case OFBizPackage.PICKLIST_BIN__PICKLIST_ID: + setPicklistId(PICKLIST_ID_EDEFAULT); + return; + case OFBizPackage.PICKLIST_BIN__BIN_LOCATION_NUMBER: + setBinLocationNumber(BIN_LOCATION_NUMBER_EDEFAULT); + return; + case OFBizPackage.PICKLIST_BIN__PICKLIST_ITEMS: + getPicklistItems().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case OFBizPackage.PICKLIST_BIN__PICKLIST_ID: + return PICKLIST_ID_EDEFAULT == null ? picklistId != null : !PICKLIST_ID_EDEFAULT.equals(picklistId); + case OFBizPackage.PICKLIST_BIN__BIN_LOCATION_NUMBER: + return BIN_LOCATION_NUMBER_EDEFAULT == null ? binLocationNumber != null + : !BIN_LOCATION_NUMBER_EDEFAULT.equals(binLocationNumber); + case OFBizPackage.PICKLIST_BIN__PICKLIST_ITEMS: + return picklistItems != null && !picklistItems.isEmpty(); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (picklistId: "); + result.append(picklistId); + result.append(", binLocationNumber: "); + result.append(binLocationNumber); + result.append(')'); + return result.toString(); + } + +} //PicklistBinImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OFBiz/impl/PicklistImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OFBiz/impl/PicklistImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..78b0e3f6bbeed943a13d4c7a26abaaba6886c836 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OFBiz/impl/PicklistImpl.java @@ -0,0 +1,244 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl; + +import ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.OFBizPackage; +import ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.Picklist; +import ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.PicklistBin; +import ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.PicklistRole; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EObjectResolvingEList; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Picklist</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl.PicklistImpl#getPicklistId <em>Picklist Id</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl.PicklistImpl#getPicklistRoles <em>Picklist Roles</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl.PicklistImpl#getPicklistBins <em>Picklist Bins</em>}</li> + * </ul> + * + * @generated + */ +public class PicklistImpl extends MinimalEObjectImpl.Container implements Picklist { + /** + * The default value of the '{@link #getPicklistId() <em>Picklist Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPicklistId() + * @generated + * @ordered + */ + protected static final String PICKLIST_ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getPicklistId() <em>Picklist Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPicklistId() + * @generated + * @ordered + */ + protected String picklistId = PICKLIST_ID_EDEFAULT; + + /** + * The cached value of the '{@link #getPicklistRoles() <em>Picklist Roles</em>}' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPicklistRoles() + * @generated + * @ordered + */ + protected EList<PicklistRole> picklistRoles; + + /** + * The cached value of the '{@link #getPicklistBins() <em>Picklist Bins</em>}' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPicklistBins() + * @generated + * @ordered + */ + protected EList<PicklistBin> picklistBins; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected PicklistImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return OFBizPackage.Literals.PICKLIST; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getPicklistId() { + return picklistId; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setPicklistId(String newPicklistId) { + String oldPicklistId = picklistId; + picklistId = newPicklistId; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, OFBizPackage.PICKLIST__PICKLIST_ID, oldPicklistId, + picklistId)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EList<PicklistRole> getPicklistRoles() { + if (picklistRoles == null) { + picklistRoles = new EObjectResolvingEList<PicklistRole>(PicklistRole.class, this, + OFBizPackage.PICKLIST__PICKLIST_ROLES); + } + return picklistRoles; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EList<PicklistBin> getPicklistBins() { + if (picklistBins == null) { + picklistBins = new EObjectResolvingEList<PicklistBin>(PicklistBin.class, this, + OFBizPackage.PICKLIST__PICKLIST_BINS); + } + return picklistBins; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case OFBizPackage.PICKLIST__PICKLIST_ID: + return getPicklistId(); + case OFBizPackage.PICKLIST__PICKLIST_ROLES: + return getPicklistRoles(); + case OFBizPackage.PICKLIST__PICKLIST_BINS: + return getPicklistBins(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case OFBizPackage.PICKLIST__PICKLIST_ID: + setPicklistId((String) newValue); + return; + case OFBizPackage.PICKLIST__PICKLIST_ROLES: + getPicklistRoles().clear(); + getPicklistRoles().addAll((Collection<? extends PicklistRole>) newValue); + return; + case OFBizPackage.PICKLIST__PICKLIST_BINS: + getPicklistBins().clear(); + getPicklistBins().addAll((Collection<? extends PicklistBin>) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case OFBizPackage.PICKLIST__PICKLIST_ID: + setPicklistId(PICKLIST_ID_EDEFAULT); + return; + case OFBizPackage.PICKLIST__PICKLIST_ROLES: + getPicklistRoles().clear(); + return; + case OFBizPackage.PICKLIST__PICKLIST_BINS: + getPicklistBins().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case OFBizPackage.PICKLIST__PICKLIST_ID: + return PICKLIST_ID_EDEFAULT == null ? picklistId != null : !PICKLIST_ID_EDEFAULT.equals(picklistId); + case OFBizPackage.PICKLIST__PICKLIST_ROLES: + return picklistRoles != null && !picklistRoles.isEmpty(); + case OFBizPackage.PICKLIST__PICKLIST_BINS: + return picklistBins != null && !picklistBins.isEmpty(); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (picklistId: "); + result.append(picklistId); + result.append(')'); + return result.toString(); + } + +} //PicklistImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OFBiz/impl/PicklistItemImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OFBiz/impl/PicklistItemImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..0f49e427b9ec3f4c6162e24f7e7743c0998fa2cf --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OFBiz/impl/PicklistItemImpl.java @@ -0,0 +1,160 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl; + +import ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.InventoryItem; +import ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.OFBizPackage; +import ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.PicklistItem; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Picklist Item</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl.PicklistItemImpl#getInventoryItem <em>Inventory Item</em>}</li> + * </ul> + * + * @generated + */ +public class PicklistItemImpl extends MinimalEObjectImpl.Container implements PicklistItem { + /** + * The cached value of the '{@link #getInventoryItem() <em>Inventory Item</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getInventoryItem() + * @generated + * @ordered + */ + protected InventoryItem inventoryItem; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected PicklistItemImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return OFBizPackage.Literals.PICKLIST_ITEM; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public InventoryItem getInventoryItem() { + if (inventoryItem != null && inventoryItem.eIsProxy()) { + InternalEObject oldInventoryItem = (InternalEObject) inventoryItem; + inventoryItem = (InventoryItem) eResolveProxy(oldInventoryItem); + if (inventoryItem != oldInventoryItem) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, + OFBizPackage.PICKLIST_ITEM__INVENTORY_ITEM, oldInventoryItem, inventoryItem)); + } + } + return inventoryItem; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public InventoryItem basicGetInventoryItem() { + return inventoryItem; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setInventoryItem(InventoryItem newInventoryItem) { + InventoryItem oldInventoryItem = inventoryItem; + inventoryItem = newInventoryItem; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, OFBizPackage.PICKLIST_ITEM__INVENTORY_ITEM, + oldInventoryItem, inventoryItem)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case OFBizPackage.PICKLIST_ITEM__INVENTORY_ITEM: + if (resolve) + return getInventoryItem(); + return basicGetInventoryItem(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case OFBizPackage.PICKLIST_ITEM__INVENTORY_ITEM: + setInventoryItem((InventoryItem) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case OFBizPackage.PICKLIST_ITEM__INVENTORY_ITEM: + setInventoryItem((InventoryItem) null); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case OFBizPackage.PICKLIST_ITEM__INVENTORY_ITEM: + return inventoryItem != null; + } + return super.eIsSet(featureID); + } + +} //PicklistItemImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OFBiz/impl/PicklistRoleImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OFBiz/impl/PicklistRoleImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..4b3f8e8f6390c18ca41fb4cbfc93a9a0e872e45c --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OFBiz/impl/PicklistRoleImpl.java @@ -0,0 +1,275 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl; + +import ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.OFBizPackage; +import ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.PicklistRole; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Picklist Role</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl.PicklistRoleImpl#getPicklistId <em>Picklist Id</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl.PicklistRoleImpl#getPartyId <em>Party Id</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl.PicklistRoleImpl#getRoleTypeId <em>Role Type Id</em>}</li> + * </ul> + * + * @generated + */ +public class PicklistRoleImpl extends MinimalEObjectImpl.Container implements PicklistRole { + /** + * The default value of the '{@link #getPicklistId() <em>Picklist Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPicklistId() + * @generated + * @ordered + */ + protected static final String PICKLIST_ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getPicklistId() <em>Picklist Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPicklistId() + * @generated + * @ordered + */ + protected String picklistId = PICKLIST_ID_EDEFAULT; + + /** + * The default value of the '{@link #getPartyId() <em>Party Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPartyId() + * @generated + * @ordered + */ + protected static final String PARTY_ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getPartyId() <em>Party Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPartyId() + * @generated + * @ordered + */ + protected String partyId = PARTY_ID_EDEFAULT; + + /** + * The default value of the '{@link #getRoleTypeId() <em>Role Type Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRoleTypeId() + * @generated + * @ordered + */ + protected static final String ROLE_TYPE_ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getRoleTypeId() <em>Role Type Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRoleTypeId() + * @generated + * @ordered + */ + protected String roleTypeId = ROLE_TYPE_ID_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected PicklistRoleImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return OFBizPackage.Literals.PICKLIST_ROLE; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getPicklistId() { + return picklistId; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setPicklistId(String newPicklistId) { + String oldPicklistId = picklistId; + picklistId = newPicklistId; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, OFBizPackage.PICKLIST_ROLE__PICKLIST_ID, + oldPicklistId, picklistId)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getPartyId() { + return partyId; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setPartyId(String newPartyId) { + String oldPartyId = partyId; + partyId = newPartyId; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, OFBizPackage.PICKLIST_ROLE__PARTY_ID, oldPartyId, + partyId)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getRoleTypeId() { + return roleTypeId; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setRoleTypeId(String newRoleTypeId) { + String oldRoleTypeId = roleTypeId; + roleTypeId = newRoleTypeId; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, OFBizPackage.PICKLIST_ROLE__ROLE_TYPE_ID, + oldRoleTypeId, roleTypeId)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case OFBizPackage.PICKLIST_ROLE__PICKLIST_ID: + return getPicklistId(); + case OFBizPackage.PICKLIST_ROLE__PARTY_ID: + return getPartyId(); + case OFBizPackage.PICKLIST_ROLE__ROLE_TYPE_ID: + return getRoleTypeId(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case OFBizPackage.PICKLIST_ROLE__PICKLIST_ID: + setPicklistId((String) newValue); + return; + case OFBizPackage.PICKLIST_ROLE__PARTY_ID: + setPartyId((String) newValue); + return; + case OFBizPackage.PICKLIST_ROLE__ROLE_TYPE_ID: + setRoleTypeId((String) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case OFBizPackage.PICKLIST_ROLE__PICKLIST_ID: + setPicklistId(PICKLIST_ID_EDEFAULT); + return; + case OFBizPackage.PICKLIST_ROLE__PARTY_ID: + setPartyId(PARTY_ID_EDEFAULT); + return; + case OFBizPackage.PICKLIST_ROLE__ROLE_TYPE_ID: + setRoleTypeId(ROLE_TYPE_ID_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case OFBizPackage.PICKLIST_ROLE__PICKLIST_ID: + return PICKLIST_ID_EDEFAULT == null ? picklistId != null : !PICKLIST_ID_EDEFAULT.equals(picklistId); + case OFBizPackage.PICKLIST_ROLE__PARTY_ID: + return PARTY_ID_EDEFAULT == null ? partyId != null : !PARTY_ID_EDEFAULT.equals(partyId); + case OFBizPackage.PICKLIST_ROLE__ROLE_TYPE_ID: + return ROLE_TYPE_ID_EDEFAULT == null ? roleTypeId != null : !ROLE_TYPE_ID_EDEFAULT.equals(roleTypeId); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (picklistId: "); + result.append(picklistId); + result.append(", partyId: "); + result.append(partyId); + result.append(", roleTypeId: "); + result.append(roleTypeId); + result.append(')'); + return result.toString(); + } + +} //PicklistRoleImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OFBiz/util/OFBizAdapterFactory.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OFBiz/util/OFBizAdapterFactory.java new file mode 100644 index 0000000000000000000000000000000000000000..e869ae934b9e98f7d286fba3d7687805fe67ffa2 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OFBiz/util/OFBizAdapterFactory.java @@ -0,0 +1,195 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.util; + +import ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.*; + +import org.eclipse.emf.common.notify.Adapter; +import org.eclipse.emf.common.notify.Notifier; + +import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * The <b>Adapter Factory</b> for the model. + * It provides an adapter <code>createXXX</code> method for each class of the model. + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.OFBizPackage + * @generated + */ +public class OFBizAdapterFactory extends AdapterFactoryImpl { + /** + * The cached model package. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected static OFBizPackage modelPackage; + + /** + * Creates an instance of the adapter factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public OFBizAdapterFactory() { + if (modelPackage == null) { + modelPackage = OFBizPackage.eINSTANCE; + } + } + + /** + * Returns whether this factory is applicable for the type of the object. + * <!-- begin-user-doc --> + * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model. + * <!-- end-user-doc --> + * @return whether this factory is applicable for the type of the object. + * @generated + */ + @Override + public boolean isFactoryForType(Object object) { + if (object == modelPackage) { + return true; + } + if (object instanceof EObject) { + return ((EObject) object).eClass().getEPackage() == modelPackage; + } + return false; + } + + /** + * The switch that delegates to the <code>createXXX</code> methods. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected OFBizSwitch<Adapter> modelSwitch = new OFBizSwitch<Adapter>() { + @Override + public Adapter casePicklist(Picklist object) { + return createPicklistAdapter(); + } + + @Override + public Adapter casePicklistBin(PicklistBin object) { + return createPicklistBinAdapter(); + } + + @Override + public Adapter casePicklistItem(PicklistItem object) { + return createPicklistItemAdapter(); + } + + @Override + public Adapter caseInventoryItem(InventoryItem object) { + return createInventoryItemAdapter(); + } + + @Override + public Adapter casePicklistRole(PicklistRole object) { + return createPicklistRoleAdapter(); + } + + @Override + public Adapter defaultCase(EObject object) { + return createEObjectAdapter(); + } + }; + + /** + * Creates an adapter for the <code>target</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param target the object to adapt. + * @return the adapter for the <code>target</code>. + * @generated + */ + @Override + public Adapter createAdapter(Notifier target) { + return modelSwitch.doSwitch((EObject) target); + } + + /** + * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.Picklist <em>Picklist</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.Picklist + * @generated + */ + public Adapter createPicklistAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.PicklistBin <em>Picklist Bin</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.PicklistBin + * @generated + */ + public Adapter createPicklistBinAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.PicklistItem <em>Picklist Item</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.PicklistItem + * @generated + */ + public Adapter createPicklistItemAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.InventoryItem <em>Inventory Item</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.InventoryItem + * @generated + */ + public Adapter createInventoryItemAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.PicklistRole <em>Picklist Role</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.PicklistRole + * @generated + */ + public Adapter createPicklistRoleAdapter() { + return null; + } + + /** + * Creates a new adapter for the default case. + * <!-- begin-user-doc --> + * This default implementation returns null. + * <!-- end-user-doc --> + * @return the new adapter. + * @generated + */ + public Adapter createEObjectAdapter() { + return null; + } + +} //OFBizAdapterFactory diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OFBiz/util/OFBizSwitch.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OFBiz/util/OFBizSwitch.java new file mode 100644 index 0000000000000000000000000000000000000000..a276a9f3c871cc2e0893988f39f2fd6e78d3c170 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OFBiz/util/OFBizSwitch.java @@ -0,0 +1,200 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.util; + +import ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.*; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EPackage; + +import org.eclipse.emf.ecore.util.Switch; + +/** + * <!-- begin-user-doc --> + * The <b>Switch</b> for the model's inheritance hierarchy. + * It supports the call {@link #doSwitch(EObject) doSwitch(object)} + * to invoke the <code>caseXXX</code> method for each class of the model, + * starting with the actual class of the object + * and proceeding up the inheritance hierarchy + * until a non-null result is returned, + * which is the result of the switch. + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.OFBizPackage + * @generated + */ +public class OFBizSwitch<T> extends Switch<T> { + /** + * The cached model package + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected static OFBizPackage modelPackage; + + /** + * Creates an instance of the switch. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public OFBizSwitch() { + if (modelPackage == null) { + modelPackage = OFBizPackage.eINSTANCE; + } + } + + /** + * Checks whether this is a switch for the given package. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param ePackage the package in question. + * @return whether this is a switch for the given package. + * @generated + */ + @Override + protected boolean isSwitchFor(EPackage ePackage) { + return ePackage == modelPackage; + } + + /** + * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the first non-null result returned by a <code>caseXXX</code> call. + * @generated + */ + @Override + protected T doSwitch(int classifierID, EObject theEObject) { + switch (classifierID) { + case OFBizPackage.PICKLIST: { + Picklist picklist = (Picklist) theEObject; + T result = casePicklist(picklist); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case OFBizPackage.PICKLIST_BIN: { + PicklistBin picklistBin = (PicklistBin) theEObject; + T result = casePicklistBin(picklistBin); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case OFBizPackage.PICKLIST_ITEM: { + PicklistItem picklistItem = (PicklistItem) theEObject; + T result = casePicklistItem(picklistItem); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case OFBizPackage.INVENTORY_ITEM: { + InventoryItem inventoryItem = (InventoryItem) theEObject; + T result = caseInventoryItem(inventoryItem); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case OFBizPackage.PICKLIST_ROLE: { + PicklistRole picklistRole = (PicklistRole) theEObject; + T result = casePicklistRole(picklistRole); + if (result == null) + result = defaultCase(theEObject); + return result; + } + default: + return defaultCase(theEObject); + } + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Picklist</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Picklist</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T casePicklist(Picklist object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Picklist Bin</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Picklist Bin</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T casePicklistBin(PicklistBin object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Picklist Item</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Picklist Item</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T casePicklistItem(PicklistItem object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Inventory Item</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Inventory Item</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseInventoryItem(InventoryItem object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Picklist Role</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Picklist Role</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T casePicklistRole(PicklistRole object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>EObject</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch, but this is the last case anyway. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>EObject</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) + * @generated + */ + @Override + public T defaultCase(EObject object) { + return null; + } + +} //OFBizSwitch diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/OSMExtractedAttributes.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/OSMExtractedAttributes.java new file mode 100644 index 0000000000000000000000000000000000000000..04071397931082c8bbf5e4b513ac2772cc05ba2e --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/OSMExtractedAttributes.java @@ -0,0 +1,115 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.OSM; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Extracted Attributes</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMExtractedAttributes#getBatteryChargeLevel <em>Battery Charge Level</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMExtractedAttributes#getLoadedItems <em>Loaded Items</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMExtractedAttributes#getErrors <em>Errors</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMExtractedAttributes#getTheta <em>Theta</em>}</li> + * </ul> + * + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPackage#getOSMExtractedAttributes() + * @model + * @generated + */ +public interface OSMExtractedAttributes extends EObject { + /** + * Returns the value of the '<em><b>Battery Charge Level</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Battery Charge Level</em>' attribute. + * @see #setBatteryChargeLevel(float) + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPackage#getOSMExtractedAttributes_BatteryChargeLevel() + * @model + * @generated + */ + float getBatteryChargeLevel(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMExtractedAttributes#getBatteryChargeLevel <em>Battery Charge Level</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Battery Charge Level</em>' attribute. + * @see #getBatteryChargeLevel() + * @generated + */ + void setBatteryChargeLevel(float value); + + /** + * Returns the value of the '<em><b>Loaded Items</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Loaded Items</em>' attribute. + * @see #setLoadedItems(int[]) + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPackage#getOSMExtractedAttributes_LoadedItems() + * @model dataType="ipos.project.DataModellntegration.iPos_Datamodel.IntArray" + * @generated + */ + int[] getLoadedItems(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMExtractedAttributes#getLoadedItems <em>Loaded Items</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Loaded Items</em>' attribute. + * @see #getLoadedItems() + * @generated + */ + void setLoadedItems(int[] value); + + /** + * Returns the value of the '<em><b>Errors</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Errors</em>' attribute. + * @see #setErrors(int[]) + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPackage#getOSMExtractedAttributes_Errors() + * @model dataType="ipos.project.DataModellntegration.iPos_Datamodel.IntArray" + * @generated + */ + int[] getErrors(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMExtractedAttributes#getErrors <em>Errors</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Errors</em>' attribute. + * @see #getErrors() + * @generated + */ + void setErrors(int[] value); + + /** + * Returns the value of the '<em><b>Theta</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Theta</em>' attribute. + * @see #setTheta(float) + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPackage#getOSMExtractedAttributes_Theta() + * @model + * @generated + */ + float getTheta(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMExtractedAttributes#getTheta <em>Theta</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Theta</em>' attribute. + * @see #getTheta() + * @generated + */ + void setTheta(float value); + +} // OSMExtractedAttributes diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/OSMFactory.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/OSMFactory.java new file mode 100644 index 0000000000000000000000000000000000000000..3f8c7c97e3d6f90931e9cd356ef413a82056290b --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/OSMFactory.java @@ -0,0 +1,96 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.OSM; + +import org.eclipse.emf.ecore.EFactory; + +/** + * <!-- begin-user-doc --> + * The <b>Factory</b> for the model. + * It provides a create method for each non-abstract class of the model. + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPackage + * @generated + */ +public interface OSMFactory extends EFactory { + /** + * The singleton instance of the factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + OSMFactory eINSTANCE = ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMFactoryImpl.init(); + + /** + * Returns a new object of class '<em>Object</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Object</em>'. + * @generated + */ + OSMObject createOSMObject(); + + /** + * Returns a new object of class '<em>Position</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Position</em>'. + * @generated + */ + OSMPosition createOSMPosition(); + + /** + * Returns a new object of class '<em>Point</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Point</em>'. + * @generated + */ + OSMPoint createOSMPoint(); + + /** + * Returns a new object of class '<em>Orientation</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Orientation</em>'. + * @generated + */ + OSMOrientation createOSMOrientation(); + + /** + * Returns a new object of class '<em>Extracted Attributes</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Extracted Attributes</em>'. + * @generated + */ + OSMExtractedAttributes createOSMExtractedAttributes(); + + /** + * Returns a new object of class '<em>Zone Descriptor</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Zone Descriptor</em>'. + * @generated + */ + OSMZoneDescriptor createOSMZoneDescriptor(); + + /** + * Returns a new object of class '<em>Monitoring Target</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Monitoring Target</em>'. + * @generated + */ + OSMMonitoringTarget createOSMMonitoringTarget(); + + /** + * Returns the package supported by this factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the package supported by this factory. + * @generated + */ + OSMPackage getOSMPackage(); + +} //OSMFactory diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/OSMMonitoringTarget.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/OSMMonitoringTarget.java new file mode 100644 index 0000000000000000000000000000000000000000..1a15f73ef9fe1b79944dcf2fe5d0bf0d7addfaa6 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/OSMMonitoringTarget.java @@ -0,0 +1,69 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.OSM; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Monitoring Target</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMMonitoringTarget#getMonitoringTaskId <em>Monitoring Task Id</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMMonitoringTarget#getProtocol <em>Protocol</em>}</li> + * </ul> + * + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPackage#getOSMMonitoringTarget() + * @model + * @generated + */ +public interface OSMMonitoringTarget extends EObject { + /** + * Returns the value of the '<em><b>Monitoring Task Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Monitoring Task Id</em>' attribute. + * @see #setMonitoringTaskId(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPackage#getOSMMonitoringTarget_MonitoringTaskId() + * @model + * @generated + */ + String getMonitoringTaskId(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMMonitoringTarget#getMonitoringTaskId <em>Monitoring Task Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Monitoring Task Id</em>' attribute. + * @see #getMonitoringTaskId() + * @generated + */ + void setMonitoringTaskId(String value); + + /** + * Returns the value of the '<em><b>Protocol</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Protocol</em>' attribute. + * @see #setProtocol(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPackage#getOSMMonitoringTarget_Protocol() + * @model + * @generated + */ + String getProtocol(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMMonitoringTarget#getProtocol <em>Protocol</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Protocol</em>' attribute. + * @see #getProtocol() + * @generated + */ + void setProtocol(String value); + +} // OSMMonitoringTarget diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/OSMObject.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/OSMObject.java new file mode 100644 index 0000000000000000000000000000000000000000..1a6b9c540113e03e668429f0285c14b3660c962a --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/OSMObject.java @@ -0,0 +1,222 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.OSM; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Object</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMObject#getId <em>Id</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMObject#getSensorId <em>Sensor Id</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMObject#getType <em>Type</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMObject#getSensorType <em>Sensor Type</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMObject#getOsmposition <em>Osmposition</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMObject#getOsmorientation <em>Osmorientation</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMObject#getOsmextractedattributes <em>Osmextractedattributes</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMObject#getLastPosUpdate <em>Last Pos Update</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMObject#getOsmzonedescriptor <em>Osmzonedescriptor</em>}</li> + * </ul> + * + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPackage#getOSMObject() + * @model + * @generated + */ +public interface OSMObject extends EObject { + /** + * Returns the value of the '<em><b>Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Id</em>' attribute. + * @see #setId(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPackage#getOSMObject_Id() + * @model + * @generated + */ + String getId(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMObject#getId <em>Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Id</em>' attribute. + * @see #getId() + * @generated + */ + void setId(String value); + + /** + * Returns the value of the '<em><b>Sensor Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Sensor Id</em>' attribute. + * @see #setSensorId(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPackage#getOSMObject_SensorId() + * @model + * @generated + */ + String getSensorId(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMObject#getSensorId <em>Sensor Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Sensor Id</em>' attribute. + * @see #getSensorId() + * @generated + */ + void setSensorId(String value); + + /** + * Returns the value of the '<em><b>Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Type</em>' attribute. + * @see #setType(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPackage#getOSMObject_Type() + * @model + * @generated + */ + String getType(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMObject#getType <em>Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Type</em>' attribute. + * @see #getType() + * @generated + */ + void setType(String value); + + /** + * Returns the value of the '<em><b>Sensor Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Sensor Type</em>' attribute. + * @see #setSensorType(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPackage#getOSMObject_SensorType() + * @model + * @generated + */ + String getSensorType(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMObject#getSensorType <em>Sensor Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Sensor Type</em>' attribute. + * @see #getSensorType() + * @generated + */ + void setSensorType(String value); + + /** + * Returns the value of the '<em><b>Osmposition</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Osmposition</em>' reference. + * @see #setOsmposition(OSMPosition) + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPackage#getOSMObject_Osmposition() + * @model + * @generated + */ + OSMPosition getOsmposition(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMObject#getOsmposition <em>Osmposition</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Osmposition</em>' reference. + * @see #getOsmposition() + * @generated + */ + void setOsmposition(OSMPosition value); + + /** + * Returns the value of the '<em><b>Osmorientation</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Osmorientation</em>' reference. + * @see #setOsmorientation(OSMOrientation) + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPackage#getOSMObject_Osmorientation() + * @model + * @generated + */ + OSMOrientation getOsmorientation(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMObject#getOsmorientation <em>Osmorientation</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Osmorientation</em>' reference. + * @see #getOsmorientation() + * @generated + */ + void setOsmorientation(OSMOrientation value); + + /** + * Returns the value of the '<em><b>Osmextractedattributes</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Osmextractedattributes</em>' reference. + * @see #setOsmextractedattributes(OSMExtractedAttributes) + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPackage#getOSMObject_Osmextractedattributes() + * @model + * @generated + */ + OSMExtractedAttributes getOsmextractedattributes(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMObject#getOsmextractedattributes <em>Osmextractedattributes</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Osmextractedattributes</em>' reference. + * @see #getOsmextractedattributes() + * @generated + */ + void setOsmextractedattributes(OSMExtractedAttributes value); + + /** + * Returns the value of the '<em><b>Last Pos Update</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Last Pos Update</em>' attribute. + * @see #setLastPosUpdate(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPackage#getOSMObject_LastPosUpdate() + * @model + * @generated + */ + String getLastPosUpdate(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMObject#getLastPosUpdate <em>Last Pos Update</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Last Pos Update</em>' attribute. + * @see #getLastPosUpdate() + * @generated + */ + void setLastPosUpdate(String value); + + /** + * Returns the value of the '<em><b>Osmzonedescriptor</b></em>' reference list. + * The list contents are of type {@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMZoneDescriptor}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Osmzonedescriptor</em>' reference list. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPackage#getOSMObject_Osmzonedescriptor() + * @model + * @generated + */ + EList<OSMZoneDescriptor> getOsmzonedescriptor(); + +} // OSMObject diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/OSMOrientation.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/OSMOrientation.java new file mode 100644 index 0000000000000000000000000000000000000000..e47fb1230aefafc10746c90f4e939516f9866332 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/OSMOrientation.java @@ -0,0 +1,115 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.OSM; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Orientation</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMOrientation#getX <em>X</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMOrientation#getY <em>Y</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMOrientation#getZ <em>Z</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMOrientation#getW <em>W</em>}</li> + * </ul> + * + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPackage#getOSMOrientation() + * @model + * @generated + */ +public interface OSMOrientation extends EObject { + /** + * Returns the value of the '<em><b>X</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>X</em>' attribute. + * @see #setX(float) + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPackage#getOSMOrientation_X() + * @model + * @generated + */ + float getX(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMOrientation#getX <em>X</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>X</em>' attribute. + * @see #getX() + * @generated + */ + void setX(float value); + + /** + * Returns the value of the '<em><b>Y</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Y</em>' attribute. + * @see #setY(float) + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPackage#getOSMOrientation_Y() + * @model + * @generated + */ + float getY(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMOrientation#getY <em>Y</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Y</em>' attribute. + * @see #getY() + * @generated + */ + void setY(float value); + + /** + * Returns the value of the '<em><b>Z</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Z</em>' attribute. + * @see #setZ(float) + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPackage#getOSMOrientation_Z() + * @model + * @generated + */ + float getZ(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMOrientation#getZ <em>Z</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Z</em>' attribute. + * @see #getZ() + * @generated + */ + void setZ(float value); + + /** + * Returns the value of the '<em><b>W</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>W</em>' attribute. + * @see #setW(float) + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPackage#getOSMOrientation_W() + * @model + * @generated + */ + float getW(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMOrientation#getW <em>W</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>W</em>' attribute. + * @see #getW() + * @generated + */ + void setW(float value); + +} // OSMOrientation diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/OSMPackage.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/OSMPackage.java new file mode 100644 index 0000000000000000000000000000000000000000..63c47c07293887fa724166c5ad0a285ee20a4702 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/OSMPackage.java @@ -0,0 +1,1177 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.OSM; + +import org.eclipse.emf.ecore.EAttribute; +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EPackage; +import org.eclipse.emf.ecore.EReference; + +/** + * <!-- begin-user-doc --> + * The <b>Package</b> for the model. + * It contains accessors for the meta objects to represent + * <ul> + * <li>each class,</li> + * <li>each feature of each class,</li> + * <li>each operation of each class,</li> + * <li>each enum,</li> + * <li>and each data type</li> + * </ul> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMFactory + * @model kind="package" + * @generated + */ +public interface OSMPackage extends EPackage { + /** + * The package name. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + String eNAME = "OSM"; + + /** + * The package namespace URI. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + String eNS_URI = "osm"; + + /** + * The package namespace name. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + String eNS_PREFIX = "osm"; + + /** + * The singleton instance of the package. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + OSMPackage eINSTANCE = ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMPackageImpl.init(); + + /** + * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMObjectImpl <em>Object</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMObjectImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMPackageImpl#getOSMObject() + * @generated + */ + int OSM_OBJECT = 0; + + /** + * The feature id for the '<em><b>Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int OSM_OBJECT__ID = 0; + + /** + * The feature id for the '<em><b>Sensor Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int OSM_OBJECT__SENSOR_ID = 1; + + /** + * The feature id for the '<em><b>Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int OSM_OBJECT__TYPE = 2; + + /** + * The feature id for the '<em><b>Sensor Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int OSM_OBJECT__SENSOR_TYPE = 3; + + /** + * The feature id for the '<em><b>Osmposition</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int OSM_OBJECT__OSMPOSITION = 4; + + /** + * The feature id for the '<em><b>Osmorientation</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int OSM_OBJECT__OSMORIENTATION = 5; + + /** + * The feature id for the '<em><b>Osmextractedattributes</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int OSM_OBJECT__OSMEXTRACTEDATTRIBUTES = 6; + + /** + * The feature id for the '<em><b>Last Pos Update</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int OSM_OBJECT__LAST_POS_UPDATE = 7; + + /** + * The feature id for the '<em><b>Osmzonedescriptor</b></em>' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int OSM_OBJECT__OSMZONEDESCRIPTOR = 8; + + /** + * The number of structural features of the '<em>Object</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int OSM_OBJECT_FEATURE_COUNT = 9; + + /** + * The number of operations of the '<em>Object</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int OSM_OBJECT_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMPositionImpl <em>Position</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMPositionImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMPackageImpl#getOSMPosition() + * @generated + */ + int OSM_POSITION = 1; + + /** + * The feature id for the '<em><b>Ref System Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int OSM_POSITION__REF_SYSTEM_ID = 0; + + /** + * The feature id for the '<em><b>Accuracy</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int OSM_POSITION__ACCURACY = 1; + + /** + * The feature id for the '<em><b>Osmpoint</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int OSM_POSITION__OSMPOINT = 2; + + /** + * The number of structural features of the '<em>Position</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int OSM_POSITION_FEATURE_COUNT = 3; + + /** + * The number of operations of the '<em>Position</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int OSM_POSITION_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMPointImpl <em>Point</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMPointImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMPackageImpl#getOSMPoint() + * @generated + */ + int OSM_POINT = 2; + + /** + * The feature id for the '<em><b>X</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int OSM_POINT__X = 0; + + /** + * The feature id for the '<em><b>Y</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int OSM_POINT__Y = 1; + + /** + * The feature id for the '<em><b>Z</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int OSM_POINT__Z = 2; + + /** + * The number of structural features of the '<em>Point</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int OSM_POINT_FEATURE_COUNT = 3; + + /** + * The number of operations of the '<em>Point</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int OSM_POINT_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMOrientationImpl <em>Orientation</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMOrientationImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMPackageImpl#getOSMOrientation() + * @generated + */ + int OSM_ORIENTATION = 3; + + /** + * The feature id for the '<em><b>X</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int OSM_ORIENTATION__X = 0; + + /** + * The feature id for the '<em><b>Y</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int OSM_ORIENTATION__Y = 1; + + /** + * The feature id for the '<em><b>Z</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int OSM_ORIENTATION__Z = 2; + + /** + * The feature id for the '<em><b>W</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int OSM_ORIENTATION__W = 3; + + /** + * The number of structural features of the '<em>Orientation</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int OSM_ORIENTATION_FEATURE_COUNT = 4; + + /** + * The number of operations of the '<em>Orientation</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int OSM_ORIENTATION_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMExtractedAttributesImpl <em>Extracted Attributes</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMExtractedAttributesImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMPackageImpl#getOSMExtractedAttributes() + * @generated + */ + int OSM_EXTRACTED_ATTRIBUTES = 4; + + /** + * The feature id for the '<em><b>Battery Charge Level</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int OSM_EXTRACTED_ATTRIBUTES__BATTERY_CHARGE_LEVEL = 0; + + /** + * The feature id for the '<em><b>Loaded Items</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int OSM_EXTRACTED_ATTRIBUTES__LOADED_ITEMS = 1; + + /** + * The feature id for the '<em><b>Errors</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int OSM_EXTRACTED_ATTRIBUTES__ERRORS = 2; + + /** + * The feature id for the '<em><b>Theta</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int OSM_EXTRACTED_ATTRIBUTES__THETA = 3; + + /** + * The number of structural features of the '<em>Extracted Attributes</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int OSM_EXTRACTED_ATTRIBUTES_FEATURE_COUNT = 4; + + /** + * The number of operations of the '<em>Extracted Attributes</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int OSM_EXTRACTED_ATTRIBUTES_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMZoneDescriptorImpl <em>Zone Descriptor</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMZoneDescriptorImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMPackageImpl#getOSMZoneDescriptor() + * @generated + */ + int OSM_ZONE_DESCRIPTOR = 5; + + /** + * The feature id for the '<em><b>Zone Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int OSM_ZONE_DESCRIPTOR__ZONE_ID = 0; + + /** + * The feature id for the '<em><b>Notification Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int OSM_ZONE_DESCRIPTOR__NOTIFICATION_TYPE = 1; + + /** + * The number of structural features of the '<em>Zone Descriptor</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int OSM_ZONE_DESCRIPTOR_FEATURE_COUNT = 2; + + /** + * The number of operations of the '<em>Zone Descriptor</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int OSM_ZONE_DESCRIPTOR_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMMonitoringTargetImpl <em>Monitoring Target</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMMonitoringTargetImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMPackageImpl#getOSMMonitoringTarget() + * @generated + */ + int OSM_MONITORING_TARGET = 6; + + /** + * The feature id for the '<em><b>Monitoring Task Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int OSM_MONITORING_TARGET__MONITORING_TASK_ID = 0; + + /** + * The feature id for the '<em><b>Protocol</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int OSM_MONITORING_TARGET__PROTOCOL = 1; + + /** + * The number of structural features of the '<em>Monitoring Target</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int OSM_MONITORING_TARGET_FEATURE_COUNT = 2; + + /** + * The number of operations of the '<em>Monitoring Target</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int OSM_MONITORING_TARGET_OPERATION_COUNT = 0; + + /** + * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMObject <em>Object</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Object</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMObject + * @generated + */ + EClass getOSMObject(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMObject#getId <em>Id</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Id</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMObject#getId() + * @see #getOSMObject() + * @generated + */ + EAttribute getOSMObject_Id(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMObject#getSensorId <em>Sensor Id</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Sensor Id</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMObject#getSensorId() + * @see #getOSMObject() + * @generated + */ + EAttribute getOSMObject_SensorId(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMObject#getType <em>Type</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Type</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMObject#getType() + * @see #getOSMObject() + * @generated + */ + EAttribute getOSMObject_Type(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMObject#getSensorType <em>Sensor Type</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Sensor Type</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMObject#getSensorType() + * @see #getOSMObject() + * @generated + */ + EAttribute getOSMObject_SensorType(); + + /** + * Returns the meta object for the reference '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMObject#getOsmposition <em>Osmposition</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference '<em>Osmposition</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMObject#getOsmposition() + * @see #getOSMObject() + * @generated + */ + EReference getOSMObject_Osmposition(); + + /** + * Returns the meta object for the reference '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMObject#getOsmorientation <em>Osmorientation</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference '<em>Osmorientation</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMObject#getOsmorientation() + * @see #getOSMObject() + * @generated + */ + EReference getOSMObject_Osmorientation(); + + /** + * Returns the meta object for the reference '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMObject#getOsmextractedattributes <em>Osmextractedattributes</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference '<em>Osmextractedattributes</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMObject#getOsmextractedattributes() + * @see #getOSMObject() + * @generated + */ + EReference getOSMObject_Osmextractedattributes(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMObject#getLastPosUpdate <em>Last Pos Update</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Last Pos Update</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMObject#getLastPosUpdate() + * @see #getOSMObject() + * @generated + */ + EAttribute getOSMObject_LastPosUpdate(); + + /** + * Returns the meta object for the reference list '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMObject#getOsmzonedescriptor <em>Osmzonedescriptor</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference list '<em>Osmzonedescriptor</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMObject#getOsmzonedescriptor() + * @see #getOSMObject() + * @generated + */ + EReference getOSMObject_Osmzonedescriptor(); + + /** + * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPosition <em>Position</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Position</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPosition + * @generated + */ + EClass getOSMPosition(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPosition#getRefSystemId <em>Ref System Id</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Ref System Id</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPosition#getRefSystemId() + * @see #getOSMPosition() + * @generated + */ + EAttribute getOSMPosition_RefSystemId(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPosition#getAccuracy <em>Accuracy</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Accuracy</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPosition#getAccuracy() + * @see #getOSMPosition() + * @generated + */ + EAttribute getOSMPosition_Accuracy(); + + /** + * Returns the meta object for the reference '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPosition#getOsmpoint <em>Osmpoint</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference '<em>Osmpoint</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPosition#getOsmpoint() + * @see #getOSMPosition() + * @generated + */ + EReference getOSMPosition_Osmpoint(); + + /** + * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPoint <em>Point</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Point</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPoint + * @generated + */ + EClass getOSMPoint(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPoint#getX <em>X</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>X</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPoint#getX() + * @see #getOSMPoint() + * @generated + */ + EAttribute getOSMPoint_X(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPoint#getY <em>Y</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Y</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPoint#getY() + * @see #getOSMPoint() + * @generated + */ + EAttribute getOSMPoint_Y(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPoint#getZ <em>Z</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Z</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPoint#getZ() + * @see #getOSMPoint() + * @generated + */ + EAttribute getOSMPoint_Z(); + + /** + * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMOrientation <em>Orientation</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Orientation</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMOrientation + * @generated + */ + EClass getOSMOrientation(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMOrientation#getX <em>X</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>X</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMOrientation#getX() + * @see #getOSMOrientation() + * @generated + */ + EAttribute getOSMOrientation_X(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMOrientation#getY <em>Y</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Y</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMOrientation#getY() + * @see #getOSMOrientation() + * @generated + */ + EAttribute getOSMOrientation_Y(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMOrientation#getZ <em>Z</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Z</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMOrientation#getZ() + * @see #getOSMOrientation() + * @generated + */ + EAttribute getOSMOrientation_Z(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMOrientation#getW <em>W</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>W</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMOrientation#getW() + * @see #getOSMOrientation() + * @generated + */ + EAttribute getOSMOrientation_W(); + + /** + * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMExtractedAttributes <em>Extracted Attributes</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Extracted Attributes</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMExtractedAttributes + * @generated + */ + EClass getOSMExtractedAttributes(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMExtractedAttributes#getBatteryChargeLevel <em>Battery Charge Level</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Battery Charge Level</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMExtractedAttributes#getBatteryChargeLevel() + * @see #getOSMExtractedAttributes() + * @generated + */ + EAttribute getOSMExtractedAttributes_BatteryChargeLevel(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMExtractedAttributes#getLoadedItems <em>Loaded Items</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Loaded Items</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMExtractedAttributes#getLoadedItems() + * @see #getOSMExtractedAttributes() + * @generated + */ + EAttribute getOSMExtractedAttributes_LoadedItems(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMExtractedAttributes#getErrors <em>Errors</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Errors</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMExtractedAttributes#getErrors() + * @see #getOSMExtractedAttributes() + * @generated + */ + EAttribute getOSMExtractedAttributes_Errors(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMExtractedAttributes#getTheta <em>Theta</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Theta</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMExtractedAttributes#getTheta() + * @see #getOSMExtractedAttributes() + * @generated + */ + EAttribute getOSMExtractedAttributes_Theta(); + + /** + * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMZoneDescriptor <em>Zone Descriptor</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Zone Descriptor</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMZoneDescriptor + * @generated + */ + EClass getOSMZoneDescriptor(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMZoneDescriptor#getZoneId <em>Zone Id</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Zone Id</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMZoneDescriptor#getZoneId() + * @see #getOSMZoneDescriptor() + * @generated + */ + EAttribute getOSMZoneDescriptor_ZoneId(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMZoneDescriptor#getNotificationType <em>Notification Type</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Notification Type</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMZoneDescriptor#getNotificationType() + * @see #getOSMZoneDescriptor() + * @generated + */ + EAttribute getOSMZoneDescriptor_NotificationType(); + + /** + * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMMonitoringTarget <em>Monitoring Target</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Monitoring Target</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMMonitoringTarget + * @generated + */ + EClass getOSMMonitoringTarget(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMMonitoringTarget#getMonitoringTaskId <em>Monitoring Task Id</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Monitoring Task Id</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMMonitoringTarget#getMonitoringTaskId() + * @see #getOSMMonitoringTarget() + * @generated + */ + EAttribute getOSMMonitoringTarget_MonitoringTaskId(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMMonitoringTarget#getProtocol <em>Protocol</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Protocol</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMMonitoringTarget#getProtocol() + * @see #getOSMMonitoringTarget() + * @generated + */ + EAttribute getOSMMonitoringTarget_Protocol(); + + /** + * Returns the factory that creates the instances of the model. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the factory that creates the instances of the model. + * @generated + */ + OSMFactory getOSMFactory(); + + /** + * <!-- begin-user-doc --> + * Defines literals for the meta objects that represent + * <ul> + * <li>each class,</li> + * <li>each feature of each class,</li> + * <li>each operation of each class,</li> + * <li>each enum,</li> + * <li>and each data type</li> + * </ul> + * <!-- end-user-doc --> + * @generated + */ + interface Literals { + /** + * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMObjectImpl <em>Object</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMObjectImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMPackageImpl#getOSMObject() + * @generated + */ + EClass OSM_OBJECT = eINSTANCE.getOSMObject(); + + /** + * The meta object literal for the '<em><b>Id</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute OSM_OBJECT__ID = eINSTANCE.getOSMObject_Id(); + + /** + * The meta object literal for the '<em><b>Sensor Id</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute OSM_OBJECT__SENSOR_ID = eINSTANCE.getOSMObject_SensorId(); + + /** + * The meta object literal for the '<em><b>Type</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute OSM_OBJECT__TYPE = eINSTANCE.getOSMObject_Type(); + + /** + * The meta object literal for the '<em><b>Sensor Type</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute OSM_OBJECT__SENSOR_TYPE = eINSTANCE.getOSMObject_SensorType(); + + /** + * The meta object literal for the '<em><b>Osmposition</b></em>' reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference OSM_OBJECT__OSMPOSITION = eINSTANCE.getOSMObject_Osmposition(); + + /** + * The meta object literal for the '<em><b>Osmorientation</b></em>' reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference OSM_OBJECT__OSMORIENTATION = eINSTANCE.getOSMObject_Osmorientation(); + + /** + * The meta object literal for the '<em><b>Osmextractedattributes</b></em>' reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference OSM_OBJECT__OSMEXTRACTEDATTRIBUTES = eINSTANCE.getOSMObject_Osmextractedattributes(); + + /** + * The meta object literal for the '<em><b>Last Pos Update</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute OSM_OBJECT__LAST_POS_UPDATE = eINSTANCE.getOSMObject_LastPosUpdate(); + + /** + * The meta object literal for the '<em><b>Osmzonedescriptor</b></em>' reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference OSM_OBJECT__OSMZONEDESCRIPTOR = eINSTANCE.getOSMObject_Osmzonedescriptor(); + + /** + * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMPositionImpl <em>Position</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMPositionImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMPackageImpl#getOSMPosition() + * @generated + */ + EClass OSM_POSITION = eINSTANCE.getOSMPosition(); + + /** + * The meta object literal for the '<em><b>Ref System Id</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute OSM_POSITION__REF_SYSTEM_ID = eINSTANCE.getOSMPosition_RefSystemId(); + + /** + * The meta object literal for the '<em><b>Accuracy</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute OSM_POSITION__ACCURACY = eINSTANCE.getOSMPosition_Accuracy(); + + /** + * The meta object literal for the '<em><b>Osmpoint</b></em>' reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference OSM_POSITION__OSMPOINT = eINSTANCE.getOSMPosition_Osmpoint(); + + /** + * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMPointImpl <em>Point</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMPointImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMPackageImpl#getOSMPoint() + * @generated + */ + EClass OSM_POINT = eINSTANCE.getOSMPoint(); + + /** + * The meta object literal for the '<em><b>X</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute OSM_POINT__X = eINSTANCE.getOSMPoint_X(); + + /** + * The meta object literal for the '<em><b>Y</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute OSM_POINT__Y = eINSTANCE.getOSMPoint_Y(); + + /** + * The meta object literal for the '<em><b>Z</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute OSM_POINT__Z = eINSTANCE.getOSMPoint_Z(); + + /** + * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMOrientationImpl <em>Orientation</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMOrientationImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMPackageImpl#getOSMOrientation() + * @generated + */ + EClass OSM_ORIENTATION = eINSTANCE.getOSMOrientation(); + + /** + * The meta object literal for the '<em><b>X</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute OSM_ORIENTATION__X = eINSTANCE.getOSMOrientation_X(); + + /** + * The meta object literal for the '<em><b>Y</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute OSM_ORIENTATION__Y = eINSTANCE.getOSMOrientation_Y(); + + /** + * The meta object literal for the '<em><b>Z</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute OSM_ORIENTATION__Z = eINSTANCE.getOSMOrientation_Z(); + + /** + * The meta object literal for the '<em><b>W</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute OSM_ORIENTATION__W = eINSTANCE.getOSMOrientation_W(); + + /** + * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMExtractedAttributesImpl <em>Extracted Attributes</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMExtractedAttributesImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMPackageImpl#getOSMExtractedAttributes() + * @generated + */ + EClass OSM_EXTRACTED_ATTRIBUTES = eINSTANCE.getOSMExtractedAttributes(); + + /** + * The meta object literal for the '<em><b>Battery Charge Level</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute OSM_EXTRACTED_ATTRIBUTES__BATTERY_CHARGE_LEVEL = eINSTANCE + .getOSMExtractedAttributes_BatteryChargeLevel(); + + /** + * The meta object literal for the '<em><b>Loaded Items</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute OSM_EXTRACTED_ATTRIBUTES__LOADED_ITEMS = eINSTANCE.getOSMExtractedAttributes_LoadedItems(); + + /** + * The meta object literal for the '<em><b>Errors</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute OSM_EXTRACTED_ATTRIBUTES__ERRORS = eINSTANCE.getOSMExtractedAttributes_Errors(); + + /** + * The meta object literal for the '<em><b>Theta</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute OSM_EXTRACTED_ATTRIBUTES__THETA = eINSTANCE.getOSMExtractedAttributes_Theta(); + + /** + * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMZoneDescriptorImpl <em>Zone Descriptor</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMZoneDescriptorImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMPackageImpl#getOSMZoneDescriptor() + * @generated + */ + EClass OSM_ZONE_DESCRIPTOR = eINSTANCE.getOSMZoneDescriptor(); + + /** + * The meta object literal for the '<em><b>Zone Id</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute OSM_ZONE_DESCRIPTOR__ZONE_ID = eINSTANCE.getOSMZoneDescriptor_ZoneId(); + + /** + * The meta object literal for the '<em><b>Notification Type</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute OSM_ZONE_DESCRIPTOR__NOTIFICATION_TYPE = eINSTANCE.getOSMZoneDescriptor_NotificationType(); + + /** + * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMMonitoringTargetImpl <em>Monitoring Target</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMMonitoringTargetImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMPackageImpl#getOSMMonitoringTarget() + * @generated + */ + EClass OSM_MONITORING_TARGET = eINSTANCE.getOSMMonitoringTarget(); + + /** + * The meta object literal for the '<em><b>Monitoring Task Id</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute OSM_MONITORING_TARGET__MONITORING_TASK_ID = eINSTANCE.getOSMMonitoringTarget_MonitoringTaskId(); + + /** + * The meta object literal for the '<em><b>Protocol</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute OSM_MONITORING_TARGET__PROTOCOL = eINSTANCE.getOSMMonitoringTarget_Protocol(); + + } + +} //OSMPackage diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/OSMPoint.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/OSMPoint.java new file mode 100644 index 0000000000000000000000000000000000000000..6613f90cbbbe1c2c5840f70bd659744cd3257c70 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/OSMPoint.java @@ -0,0 +1,92 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.OSM; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Point</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPoint#getX <em>X</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPoint#getY <em>Y</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPoint#getZ <em>Z</em>}</li> + * </ul> + * + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPackage#getOSMPoint() + * @model + * @generated + */ +public interface OSMPoint extends EObject { + /** + * Returns the value of the '<em><b>X</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>X</em>' attribute. + * @see #setX(float) + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPackage#getOSMPoint_X() + * @model + * @generated + */ + float getX(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPoint#getX <em>X</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>X</em>' attribute. + * @see #getX() + * @generated + */ + void setX(float value); + + /** + * Returns the value of the '<em><b>Y</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Y</em>' attribute. + * @see #setY(float) + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPackage#getOSMPoint_Y() + * @model + * @generated + */ + float getY(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPoint#getY <em>Y</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Y</em>' attribute. + * @see #getY() + * @generated + */ + void setY(float value); + + /** + * Returns the value of the '<em><b>Z</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Z</em>' attribute. + * @see #setZ(float) + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPackage#getOSMPoint_Z() + * @model + * @generated + */ + float getZ(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPoint#getZ <em>Z</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Z</em>' attribute. + * @see #getZ() + * @generated + */ + void setZ(float value); + +} // OSMPoint diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/OSMPosition.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/OSMPosition.java new file mode 100644 index 0000000000000000000000000000000000000000..44164cbdd3f572835b204de2f0669fa7bf98a289 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/OSMPosition.java @@ -0,0 +1,92 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.OSM; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Position</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPosition#getRefSystemId <em>Ref System Id</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPosition#getAccuracy <em>Accuracy</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPosition#getOsmpoint <em>Osmpoint</em>}</li> + * </ul> + * + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPackage#getOSMPosition() + * @model + * @generated + */ +public interface OSMPosition extends EObject { + /** + * Returns the value of the '<em><b>Ref System Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Ref System Id</em>' attribute. + * @see #setRefSystemId(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPackage#getOSMPosition_RefSystemId() + * @model + * @generated + */ + String getRefSystemId(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPosition#getRefSystemId <em>Ref System Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Ref System Id</em>' attribute. + * @see #getRefSystemId() + * @generated + */ + void setRefSystemId(String value); + + /** + * Returns the value of the '<em><b>Accuracy</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Accuracy</em>' attribute. + * @see #setAccuracy(float) + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPackage#getOSMPosition_Accuracy() + * @model + * @generated + */ + float getAccuracy(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPosition#getAccuracy <em>Accuracy</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Accuracy</em>' attribute. + * @see #getAccuracy() + * @generated + */ + void setAccuracy(float value); + + /** + * Returns the value of the '<em><b>Osmpoint</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Osmpoint</em>' reference. + * @see #setOsmpoint(OSMPoint) + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPackage#getOSMPosition_Osmpoint() + * @model + * @generated + */ + OSMPoint getOsmpoint(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPosition#getOsmpoint <em>Osmpoint</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Osmpoint</em>' reference. + * @see #getOsmpoint() + * @generated + */ + void setOsmpoint(OSMPoint value); + +} // OSMPosition diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/OSMZoneDescriptor.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/OSMZoneDescriptor.java new file mode 100644 index 0000000000000000000000000000000000000000..0f210c3202db33debb45a857f78559e8eb4be12b --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/OSMZoneDescriptor.java @@ -0,0 +1,69 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.OSM; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Zone Descriptor</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMZoneDescriptor#getZoneId <em>Zone Id</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMZoneDescriptor#getNotificationType <em>Notification Type</em>}</li> + * </ul> + * + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPackage#getOSMZoneDescriptor() + * @model + * @generated + */ +public interface OSMZoneDescriptor extends EObject { + /** + * Returns the value of the '<em><b>Zone Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Zone Id</em>' attribute. + * @see #setZoneId(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPackage#getOSMZoneDescriptor_ZoneId() + * @model + * @generated + */ + String getZoneId(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMZoneDescriptor#getZoneId <em>Zone Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Zone Id</em>' attribute. + * @see #getZoneId() + * @generated + */ + void setZoneId(String value); + + /** + * Returns the value of the '<em><b>Notification Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Notification Type</em>' attribute. + * @see #setNotificationType(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPackage#getOSMZoneDescriptor_NotificationType() + * @model + * @generated + */ + String getNotificationType(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMZoneDescriptor#getNotificationType <em>Notification Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Notification Type</em>' attribute. + * @see #getNotificationType() + * @generated + */ + void setNotificationType(String value); + +} // OSMZoneDescriptor diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/impl/OSMExtractedAttributesImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/impl/OSMExtractedAttributesImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..6aa60226162496942c3e6ac7d4228604dadada25 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/impl/OSMExtractedAttributesImpl.java @@ -0,0 +1,331 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl; + +import ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMExtractedAttributes; +import ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPackage; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Extracted Attributes</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMExtractedAttributesImpl#getBatteryChargeLevel <em>Battery Charge Level</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMExtractedAttributesImpl#getLoadedItems <em>Loaded Items</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMExtractedAttributesImpl#getErrors <em>Errors</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMExtractedAttributesImpl#getTheta <em>Theta</em>}</li> + * </ul> + * + * @generated + */ +public class OSMExtractedAttributesImpl extends MinimalEObjectImpl.Container implements OSMExtractedAttributes { + /** + * The default value of the '{@link #getBatteryChargeLevel() <em>Battery Charge Level</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getBatteryChargeLevel() + * @generated + * @ordered + */ + protected static final float BATTERY_CHARGE_LEVEL_EDEFAULT = 0.0F; + + /** + * The cached value of the '{@link #getBatteryChargeLevel() <em>Battery Charge Level</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getBatteryChargeLevel() + * @generated + * @ordered + */ + protected float batteryChargeLevel = BATTERY_CHARGE_LEVEL_EDEFAULT; + + /** + * The default value of the '{@link #getLoadedItems() <em>Loaded Items</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getLoadedItems() + * @generated + * @ordered + */ + protected static final int[] LOADED_ITEMS_EDEFAULT = null; + + /** + * The cached value of the '{@link #getLoadedItems() <em>Loaded Items</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getLoadedItems() + * @generated + * @ordered + */ + protected int[] loadedItems = LOADED_ITEMS_EDEFAULT; + + /** + * The default value of the '{@link #getErrors() <em>Errors</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getErrors() + * @generated + * @ordered + */ + protected static final int[] ERRORS_EDEFAULT = null; + + /** + * The cached value of the '{@link #getErrors() <em>Errors</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getErrors() + * @generated + * @ordered + */ + protected int[] errors = ERRORS_EDEFAULT; + + /** + * The default value of the '{@link #getTheta() <em>Theta</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTheta() + * @generated + * @ordered + */ + protected static final float THETA_EDEFAULT = 0.0F; + + /** + * The cached value of the '{@link #getTheta() <em>Theta</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTheta() + * @generated + * @ordered + */ + protected float theta = THETA_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected OSMExtractedAttributesImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return OSMPackage.Literals.OSM_EXTRACTED_ATTRIBUTES; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public float getBatteryChargeLevel() { + return batteryChargeLevel; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setBatteryChargeLevel(float newBatteryChargeLevel) { + float oldBatteryChargeLevel = batteryChargeLevel; + batteryChargeLevel = newBatteryChargeLevel; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, + OSMPackage.OSM_EXTRACTED_ATTRIBUTES__BATTERY_CHARGE_LEVEL, oldBatteryChargeLevel, + batteryChargeLevel)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public int[] getLoadedItems() { + return loadedItems; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setLoadedItems(int[] newLoadedItems) { + int[] oldLoadedItems = loadedItems; + loadedItems = newLoadedItems; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, OSMPackage.OSM_EXTRACTED_ATTRIBUTES__LOADED_ITEMS, + oldLoadedItems, loadedItems)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public int[] getErrors() { + return errors; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setErrors(int[] newErrors) { + int[] oldErrors = errors; + errors = newErrors; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, OSMPackage.OSM_EXTRACTED_ATTRIBUTES__ERRORS, + oldErrors, errors)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public float getTheta() { + return theta; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setTheta(float newTheta) { + float oldTheta = theta; + theta = newTheta; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, OSMPackage.OSM_EXTRACTED_ATTRIBUTES__THETA, oldTheta, + theta)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case OSMPackage.OSM_EXTRACTED_ATTRIBUTES__BATTERY_CHARGE_LEVEL: + return getBatteryChargeLevel(); + case OSMPackage.OSM_EXTRACTED_ATTRIBUTES__LOADED_ITEMS: + return getLoadedItems(); + case OSMPackage.OSM_EXTRACTED_ATTRIBUTES__ERRORS: + return getErrors(); + case OSMPackage.OSM_EXTRACTED_ATTRIBUTES__THETA: + return getTheta(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case OSMPackage.OSM_EXTRACTED_ATTRIBUTES__BATTERY_CHARGE_LEVEL: + setBatteryChargeLevel((Float) newValue); + return; + case OSMPackage.OSM_EXTRACTED_ATTRIBUTES__LOADED_ITEMS: + setLoadedItems((int[]) newValue); + return; + case OSMPackage.OSM_EXTRACTED_ATTRIBUTES__ERRORS: + setErrors((int[]) newValue); + return; + case OSMPackage.OSM_EXTRACTED_ATTRIBUTES__THETA: + setTheta((Float) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case OSMPackage.OSM_EXTRACTED_ATTRIBUTES__BATTERY_CHARGE_LEVEL: + setBatteryChargeLevel(BATTERY_CHARGE_LEVEL_EDEFAULT); + return; + case OSMPackage.OSM_EXTRACTED_ATTRIBUTES__LOADED_ITEMS: + setLoadedItems(LOADED_ITEMS_EDEFAULT); + return; + case OSMPackage.OSM_EXTRACTED_ATTRIBUTES__ERRORS: + setErrors(ERRORS_EDEFAULT); + return; + case OSMPackage.OSM_EXTRACTED_ATTRIBUTES__THETA: + setTheta(THETA_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case OSMPackage.OSM_EXTRACTED_ATTRIBUTES__BATTERY_CHARGE_LEVEL: + return batteryChargeLevel != BATTERY_CHARGE_LEVEL_EDEFAULT; + case OSMPackage.OSM_EXTRACTED_ATTRIBUTES__LOADED_ITEMS: + return LOADED_ITEMS_EDEFAULT == null ? loadedItems != null : !LOADED_ITEMS_EDEFAULT.equals(loadedItems); + case OSMPackage.OSM_EXTRACTED_ATTRIBUTES__ERRORS: + return ERRORS_EDEFAULT == null ? errors != null : !ERRORS_EDEFAULT.equals(errors); + case OSMPackage.OSM_EXTRACTED_ATTRIBUTES__THETA: + return theta != THETA_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (batteryChargeLevel: "); + result.append(batteryChargeLevel); + result.append(", loadedItems: "); + result.append(loadedItems); + result.append(", errors: "); + result.append(errors); + result.append(", theta: "); + result.append(theta); + result.append(')'); + return result.toString(); + } + +} //OSMExtractedAttributesImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/impl/OSMFactoryImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/impl/OSMFactoryImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..e249f328fc4d57cd986a292660202d2518f94785 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/impl/OSMFactoryImpl.java @@ -0,0 +1,167 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl; + +import ipos.project.DataModellntegration.iPos_Datamodel.OSM.*; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EPackage; + +import org.eclipse.emf.ecore.impl.EFactoryImpl; + +import org.eclipse.emf.ecore.plugin.EcorePlugin; + +/** + * <!-- begin-user-doc --> + * An implementation of the model <b>Factory</b>. + * <!-- end-user-doc --> + * @generated + */ +public class OSMFactoryImpl extends EFactoryImpl implements OSMFactory { + /** + * Creates the default factory implementation. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static OSMFactory init() { + try { + OSMFactory theOSMFactory = (OSMFactory) EPackage.Registry.INSTANCE.getEFactory(OSMPackage.eNS_URI); + if (theOSMFactory != null) { + return theOSMFactory; + } + } catch (Exception exception) { + EcorePlugin.INSTANCE.log(exception); + } + return new OSMFactoryImpl(); + } + + /** + * Creates an instance of the factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public OSMFactoryImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EObject create(EClass eClass) { + switch (eClass.getClassifierID()) { + case OSMPackage.OSM_OBJECT: + return createOSMObject(); + case OSMPackage.OSM_POSITION: + return createOSMPosition(); + case OSMPackage.OSM_POINT: + return createOSMPoint(); + case OSMPackage.OSM_ORIENTATION: + return createOSMOrientation(); + case OSMPackage.OSM_EXTRACTED_ATTRIBUTES: + return createOSMExtractedAttributes(); + case OSMPackage.OSM_ZONE_DESCRIPTOR: + return createOSMZoneDescriptor(); + case OSMPackage.OSM_MONITORING_TARGET: + return createOSMMonitoringTarget(); + default: + throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); + } + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public OSMObject createOSMObject() { + OSMObjectImpl osmObject = new OSMObjectImpl(); + return osmObject; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public OSMPosition createOSMPosition() { + OSMPositionImpl osmPosition = new OSMPositionImpl(); + return osmPosition; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public OSMPoint createOSMPoint() { + OSMPointImpl osmPoint = new OSMPointImpl(); + return osmPoint; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public OSMOrientation createOSMOrientation() { + OSMOrientationImpl osmOrientation = new OSMOrientationImpl(); + return osmOrientation; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public OSMExtractedAttributes createOSMExtractedAttributes() { + OSMExtractedAttributesImpl osmExtractedAttributes = new OSMExtractedAttributesImpl(); + return osmExtractedAttributes; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public OSMZoneDescriptor createOSMZoneDescriptor() { + OSMZoneDescriptorImpl osmZoneDescriptor = new OSMZoneDescriptorImpl(); + return osmZoneDescriptor; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public OSMMonitoringTarget createOSMMonitoringTarget() { + OSMMonitoringTargetImpl osmMonitoringTarget = new OSMMonitoringTargetImpl(); + return osmMonitoringTarget; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public OSMPackage getOSMPackage() { + return (OSMPackage) getEPackage(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @deprecated + * @generated + */ + @Deprecated + public static OSMPackage getPackage() { + return OSMPackage.eINSTANCE; + } + +} //OSMFactoryImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/impl/OSMMonitoringTargetImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/impl/OSMMonitoringTargetImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..6b102aa3730d3412c2cc08628010546d101039a1 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/impl/OSMMonitoringTargetImpl.java @@ -0,0 +1,221 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl; + +import ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMMonitoringTarget; +import ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPackage; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Monitoring Target</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMMonitoringTargetImpl#getMonitoringTaskId <em>Monitoring Task Id</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMMonitoringTargetImpl#getProtocol <em>Protocol</em>}</li> + * </ul> + * + * @generated + */ +public class OSMMonitoringTargetImpl extends MinimalEObjectImpl.Container implements OSMMonitoringTarget { + /** + * The default value of the '{@link #getMonitoringTaskId() <em>Monitoring Task Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMonitoringTaskId() + * @generated + * @ordered + */ + protected static final String MONITORING_TASK_ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getMonitoringTaskId() <em>Monitoring Task Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMonitoringTaskId() + * @generated + * @ordered + */ + protected String monitoringTaskId = MONITORING_TASK_ID_EDEFAULT; + + /** + * The default value of the '{@link #getProtocol() <em>Protocol</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getProtocol() + * @generated + * @ordered + */ + protected static final String PROTOCOL_EDEFAULT = null; + + /** + * The cached value of the '{@link #getProtocol() <em>Protocol</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getProtocol() + * @generated + * @ordered + */ + protected String protocol = PROTOCOL_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected OSMMonitoringTargetImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return OSMPackage.Literals.OSM_MONITORING_TARGET; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getMonitoringTaskId() { + return monitoringTaskId; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setMonitoringTaskId(String newMonitoringTaskId) { + String oldMonitoringTaskId = monitoringTaskId; + monitoringTaskId = newMonitoringTaskId; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, OSMPackage.OSM_MONITORING_TARGET__MONITORING_TASK_ID, + oldMonitoringTaskId, monitoringTaskId)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getProtocol() { + return protocol; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setProtocol(String newProtocol) { + String oldProtocol = protocol; + protocol = newProtocol; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, OSMPackage.OSM_MONITORING_TARGET__PROTOCOL, + oldProtocol, protocol)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case OSMPackage.OSM_MONITORING_TARGET__MONITORING_TASK_ID: + return getMonitoringTaskId(); + case OSMPackage.OSM_MONITORING_TARGET__PROTOCOL: + return getProtocol(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case OSMPackage.OSM_MONITORING_TARGET__MONITORING_TASK_ID: + setMonitoringTaskId((String) newValue); + return; + case OSMPackage.OSM_MONITORING_TARGET__PROTOCOL: + setProtocol((String) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case OSMPackage.OSM_MONITORING_TARGET__MONITORING_TASK_ID: + setMonitoringTaskId(MONITORING_TASK_ID_EDEFAULT); + return; + case OSMPackage.OSM_MONITORING_TARGET__PROTOCOL: + setProtocol(PROTOCOL_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case OSMPackage.OSM_MONITORING_TARGET__MONITORING_TASK_ID: + return MONITORING_TASK_ID_EDEFAULT == null ? monitoringTaskId != null + : !MONITORING_TASK_ID_EDEFAULT.equals(monitoringTaskId); + case OSMPackage.OSM_MONITORING_TARGET__PROTOCOL: + return PROTOCOL_EDEFAULT == null ? protocol != null : !PROTOCOL_EDEFAULT.equals(protocol); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (monitoringTaskId: "); + result.append(monitoringTaskId); + result.append(", protocol: "); + result.append(protocol); + result.append(')'); + return result.toString(); + } + +} //OSMMonitoringTargetImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/impl/OSMObjectImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/impl/OSMObjectImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..25d6ccda80dddc67ef77fd9c38925c7b8695b648 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/impl/OSMObjectImpl.java @@ -0,0 +1,621 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl; + +import ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMExtractedAttributes; +import ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMObject; +import ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMOrientation; +import ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPackage; +import ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPosition; +import ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMZoneDescriptor; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EObjectResolvingEList; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Object</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMObjectImpl#getId <em>Id</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMObjectImpl#getSensorId <em>Sensor Id</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMObjectImpl#getType <em>Type</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMObjectImpl#getSensorType <em>Sensor Type</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMObjectImpl#getOsmposition <em>Osmposition</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMObjectImpl#getOsmorientation <em>Osmorientation</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMObjectImpl#getOsmextractedattributes <em>Osmextractedattributes</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMObjectImpl#getLastPosUpdate <em>Last Pos Update</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMObjectImpl#getOsmzonedescriptor <em>Osmzonedescriptor</em>}</li> + * </ul> + * + * @generated + */ +public class OSMObjectImpl extends MinimalEObjectImpl.Container implements OSMObject { + /** + * The default value of the '{@link #getId() <em>Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getId() + * @generated + * @ordered + */ + protected static final String ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getId() <em>Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getId() + * @generated + * @ordered + */ + protected String id = ID_EDEFAULT; + + /** + * The default value of the '{@link #getSensorId() <em>Sensor Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSensorId() + * @generated + * @ordered + */ + protected static final String SENSOR_ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getSensorId() <em>Sensor Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSensorId() + * @generated + * @ordered + */ + protected String sensorId = SENSOR_ID_EDEFAULT; + + /** + * The default value of the '{@link #getType() <em>Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getType() + * @generated + * @ordered + */ + protected static final String TYPE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getType() <em>Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getType() + * @generated + * @ordered + */ + protected String type = TYPE_EDEFAULT; + + /** + * The default value of the '{@link #getSensorType() <em>Sensor Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSensorType() + * @generated + * @ordered + */ + protected static final String SENSOR_TYPE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getSensorType() <em>Sensor Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSensorType() + * @generated + * @ordered + */ + protected String sensorType = SENSOR_TYPE_EDEFAULT; + + /** + * The cached value of the '{@link #getOsmposition() <em>Osmposition</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getOsmposition() + * @generated + * @ordered + */ + protected OSMPosition osmposition; + + /** + * The cached value of the '{@link #getOsmorientation() <em>Osmorientation</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getOsmorientation() + * @generated + * @ordered + */ + protected OSMOrientation osmorientation; + + /** + * The cached value of the '{@link #getOsmextractedattributes() <em>Osmextractedattributes</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getOsmextractedattributes() + * @generated + * @ordered + */ + protected OSMExtractedAttributes osmextractedattributes; + + /** + * The default value of the '{@link #getLastPosUpdate() <em>Last Pos Update</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getLastPosUpdate() + * @generated + * @ordered + */ + protected static final String LAST_POS_UPDATE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getLastPosUpdate() <em>Last Pos Update</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getLastPosUpdate() + * @generated + * @ordered + */ + protected String lastPosUpdate = LAST_POS_UPDATE_EDEFAULT; + + /** + * The cached value of the '{@link #getOsmzonedescriptor() <em>Osmzonedescriptor</em>}' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getOsmzonedescriptor() + * @generated + * @ordered + */ + protected EList<OSMZoneDescriptor> osmzonedescriptor; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected OSMObjectImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return OSMPackage.Literals.OSM_OBJECT; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getId() { + return id; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setId(String newId) { + String oldId = id; + id = newId; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, OSMPackage.OSM_OBJECT__ID, oldId, id)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getSensorId() { + return sensorId; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setSensorId(String newSensorId) { + String oldSensorId = sensorId; + sensorId = newSensorId; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, OSMPackage.OSM_OBJECT__SENSOR_ID, oldSensorId, + sensorId)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getType() { + return type; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setType(String newType) { + String oldType = type; + type = newType; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, OSMPackage.OSM_OBJECT__TYPE, oldType, type)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getSensorType() { + return sensorType; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setSensorType(String newSensorType) { + String oldSensorType = sensorType; + sensorType = newSensorType; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, OSMPackage.OSM_OBJECT__SENSOR_TYPE, oldSensorType, + sensorType)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public OSMPosition getOsmposition() { + if (osmposition != null && osmposition.eIsProxy()) { + InternalEObject oldOsmposition = (InternalEObject) osmposition; + osmposition = (OSMPosition) eResolveProxy(oldOsmposition); + if (osmposition != oldOsmposition) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, OSMPackage.OSM_OBJECT__OSMPOSITION, + oldOsmposition, osmposition)); + } + } + return osmposition; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public OSMPosition basicGetOsmposition() { + return osmposition; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setOsmposition(OSMPosition newOsmposition) { + OSMPosition oldOsmposition = osmposition; + osmposition = newOsmposition; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, OSMPackage.OSM_OBJECT__OSMPOSITION, oldOsmposition, + osmposition)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public OSMOrientation getOsmorientation() { + if (osmorientation != null && osmorientation.eIsProxy()) { + InternalEObject oldOsmorientation = (InternalEObject) osmorientation; + osmorientation = (OSMOrientation) eResolveProxy(oldOsmorientation); + if (osmorientation != oldOsmorientation) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, OSMPackage.OSM_OBJECT__OSMORIENTATION, + oldOsmorientation, osmorientation)); + } + } + return osmorientation; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public OSMOrientation basicGetOsmorientation() { + return osmorientation; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setOsmorientation(OSMOrientation newOsmorientation) { + OSMOrientation oldOsmorientation = osmorientation; + osmorientation = newOsmorientation; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, OSMPackage.OSM_OBJECT__OSMORIENTATION, + oldOsmorientation, osmorientation)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public OSMExtractedAttributes getOsmextractedattributes() { + if (osmextractedattributes != null && osmextractedattributes.eIsProxy()) { + InternalEObject oldOsmextractedattributes = (InternalEObject) osmextractedattributes; + osmextractedattributes = (OSMExtractedAttributes) eResolveProxy(oldOsmextractedattributes); + if (osmextractedattributes != oldOsmextractedattributes) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, + OSMPackage.OSM_OBJECT__OSMEXTRACTEDATTRIBUTES, oldOsmextractedattributes, + osmextractedattributes)); + } + } + return osmextractedattributes; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public OSMExtractedAttributes basicGetOsmextractedattributes() { + return osmextractedattributes; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setOsmextractedattributes(OSMExtractedAttributes newOsmextractedattributes) { + OSMExtractedAttributes oldOsmextractedattributes = osmextractedattributes; + osmextractedattributes = newOsmextractedattributes; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, OSMPackage.OSM_OBJECT__OSMEXTRACTEDATTRIBUTES, + oldOsmextractedattributes, osmextractedattributes)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getLastPosUpdate() { + return lastPosUpdate; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setLastPosUpdate(String newLastPosUpdate) { + String oldLastPosUpdate = lastPosUpdate; + lastPosUpdate = newLastPosUpdate; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, OSMPackage.OSM_OBJECT__LAST_POS_UPDATE, + oldLastPosUpdate, lastPosUpdate)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EList<OSMZoneDescriptor> getOsmzonedescriptor() { + if (osmzonedescriptor == null) { + osmzonedescriptor = new EObjectResolvingEList<OSMZoneDescriptor>(OSMZoneDescriptor.class, this, + OSMPackage.OSM_OBJECT__OSMZONEDESCRIPTOR); + } + return osmzonedescriptor; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case OSMPackage.OSM_OBJECT__ID: + return getId(); + case OSMPackage.OSM_OBJECT__SENSOR_ID: + return getSensorId(); + case OSMPackage.OSM_OBJECT__TYPE: + return getType(); + case OSMPackage.OSM_OBJECT__SENSOR_TYPE: + return getSensorType(); + case OSMPackage.OSM_OBJECT__OSMPOSITION: + if (resolve) + return getOsmposition(); + return basicGetOsmposition(); + case OSMPackage.OSM_OBJECT__OSMORIENTATION: + if (resolve) + return getOsmorientation(); + return basicGetOsmorientation(); + case OSMPackage.OSM_OBJECT__OSMEXTRACTEDATTRIBUTES: + if (resolve) + return getOsmextractedattributes(); + return basicGetOsmextractedattributes(); + case OSMPackage.OSM_OBJECT__LAST_POS_UPDATE: + return getLastPosUpdate(); + case OSMPackage.OSM_OBJECT__OSMZONEDESCRIPTOR: + return getOsmzonedescriptor(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case OSMPackage.OSM_OBJECT__ID: + setId((String) newValue); + return; + case OSMPackage.OSM_OBJECT__SENSOR_ID: + setSensorId((String) newValue); + return; + case OSMPackage.OSM_OBJECT__TYPE: + setType((String) newValue); + return; + case OSMPackage.OSM_OBJECT__SENSOR_TYPE: + setSensorType((String) newValue); + return; + case OSMPackage.OSM_OBJECT__OSMPOSITION: + setOsmposition((OSMPosition) newValue); + return; + case OSMPackage.OSM_OBJECT__OSMORIENTATION: + setOsmorientation((OSMOrientation) newValue); + return; + case OSMPackage.OSM_OBJECT__OSMEXTRACTEDATTRIBUTES: + setOsmextractedattributes((OSMExtractedAttributes) newValue); + return; + case OSMPackage.OSM_OBJECT__LAST_POS_UPDATE: + setLastPosUpdate((String) newValue); + return; + case OSMPackage.OSM_OBJECT__OSMZONEDESCRIPTOR: + getOsmzonedescriptor().clear(); + getOsmzonedescriptor().addAll((Collection<? extends OSMZoneDescriptor>) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case OSMPackage.OSM_OBJECT__ID: + setId(ID_EDEFAULT); + return; + case OSMPackage.OSM_OBJECT__SENSOR_ID: + setSensorId(SENSOR_ID_EDEFAULT); + return; + case OSMPackage.OSM_OBJECT__TYPE: + setType(TYPE_EDEFAULT); + return; + case OSMPackage.OSM_OBJECT__SENSOR_TYPE: + setSensorType(SENSOR_TYPE_EDEFAULT); + return; + case OSMPackage.OSM_OBJECT__OSMPOSITION: + setOsmposition((OSMPosition) null); + return; + case OSMPackage.OSM_OBJECT__OSMORIENTATION: + setOsmorientation((OSMOrientation) null); + return; + case OSMPackage.OSM_OBJECT__OSMEXTRACTEDATTRIBUTES: + setOsmextractedattributes((OSMExtractedAttributes) null); + return; + case OSMPackage.OSM_OBJECT__LAST_POS_UPDATE: + setLastPosUpdate(LAST_POS_UPDATE_EDEFAULT); + return; + case OSMPackage.OSM_OBJECT__OSMZONEDESCRIPTOR: + getOsmzonedescriptor().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case OSMPackage.OSM_OBJECT__ID: + return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id); + case OSMPackage.OSM_OBJECT__SENSOR_ID: + return SENSOR_ID_EDEFAULT == null ? sensorId != null : !SENSOR_ID_EDEFAULT.equals(sensorId); + case OSMPackage.OSM_OBJECT__TYPE: + return TYPE_EDEFAULT == null ? type != null : !TYPE_EDEFAULT.equals(type); + case OSMPackage.OSM_OBJECT__SENSOR_TYPE: + return SENSOR_TYPE_EDEFAULT == null ? sensorType != null : !SENSOR_TYPE_EDEFAULT.equals(sensorType); + case OSMPackage.OSM_OBJECT__OSMPOSITION: + return osmposition != null; + case OSMPackage.OSM_OBJECT__OSMORIENTATION: + return osmorientation != null; + case OSMPackage.OSM_OBJECT__OSMEXTRACTEDATTRIBUTES: + return osmextractedattributes != null; + case OSMPackage.OSM_OBJECT__LAST_POS_UPDATE: + return LAST_POS_UPDATE_EDEFAULT == null ? lastPosUpdate != null + : !LAST_POS_UPDATE_EDEFAULT.equals(lastPosUpdate); + case OSMPackage.OSM_OBJECT__OSMZONEDESCRIPTOR: + return osmzonedescriptor != null && !osmzonedescriptor.isEmpty(); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (id: "); + result.append(id); + result.append(", sensorId: "); + result.append(sensorId); + result.append(", type: "); + result.append(type); + result.append(", sensorType: "); + result.append(sensorType); + result.append(", lastPosUpdate: "); + result.append(lastPosUpdate); + result.append(')'); + return result.toString(); + } + +} //OSMObjectImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/impl/OSMOrientationImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/impl/OSMOrientationImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..13dfd0b54c2d30371322b4dc91bd61466eafe136 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/impl/OSMOrientationImpl.java @@ -0,0 +1,326 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl; + +import ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMOrientation; +import ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPackage; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Orientation</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMOrientationImpl#getX <em>X</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMOrientationImpl#getY <em>Y</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMOrientationImpl#getZ <em>Z</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMOrientationImpl#getW <em>W</em>}</li> + * </ul> + * + * @generated + */ +public class OSMOrientationImpl extends MinimalEObjectImpl.Container implements OSMOrientation { + /** + * The default value of the '{@link #getX() <em>X</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getX() + * @generated + * @ordered + */ + protected static final float X_EDEFAULT = 0.0F; + + /** + * The cached value of the '{@link #getX() <em>X</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getX() + * @generated + * @ordered + */ + protected float x = X_EDEFAULT; + + /** + * The default value of the '{@link #getY() <em>Y</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getY() + * @generated + * @ordered + */ + protected static final float Y_EDEFAULT = 0.0F; + + /** + * The cached value of the '{@link #getY() <em>Y</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getY() + * @generated + * @ordered + */ + protected float y = Y_EDEFAULT; + + /** + * The default value of the '{@link #getZ() <em>Z</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getZ() + * @generated + * @ordered + */ + protected static final float Z_EDEFAULT = 0.0F; + + /** + * The cached value of the '{@link #getZ() <em>Z</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getZ() + * @generated + * @ordered + */ + protected float z = Z_EDEFAULT; + + /** + * The default value of the '{@link #getW() <em>W</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getW() + * @generated + * @ordered + */ + protected static final float W_EDEFAULT = 0.0F; + + /** + * The cached value of the '{@link #getW() <em>W</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getW() + * @generated + * @ordered + */ + protected float w = W_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected OSMOrientationImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return OSMPackage.Literals.OSM_ORIENTATION; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public float getX() { + return x; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setX(float newX) { + float oldX = x; + x = newX; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, OSMPackage.OSM_ORIENTATION__X, oldX, x)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public float getY() { + return y; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setY(float newY) { + float oldY = y; + y = newY; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, OSMPackage.OSM_ORIENTATION__Y, oldY, y)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public float getZ() { + return z; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setZ(float newZ) { + float oldZ = z; + z = newZ; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, OSMPackage.OSM_ORIENTATION__Z, oldZ, z)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public float getW() { + return w; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setW(float newW) { + float oldW = w; + w = newW; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, OSMPackage.OSM_ORIENTATION__W, oldW, w)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case OSMPackage.OSM_ORIENTATION__X: + return getX(); + case OSMPackage.OSM_ORIENTATION__Y: + return getY(); + case OSMPackage.OSM_ORIENTATION__Z: + return getZ(); + case OSMPackage.OSM_ORIENTATION__W: + return getW(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case OSMPackage.OSM_ORIENTATION__X: + setX((Float) newValue); + return; + case OSMPackage.OSM_ORIENTATION__Y: + setY((Float) newValue); + return; + case OSMPackage.OSM_ORIENTATION__Z: + setZ((Float) newValue); + return; + case OSMPackage.OSM_ORIENTATION__W: + setW((Float) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case OSMPackage.OSM_ORIENTATION__X: + setX(X_EDEFAULT); + return; + case OSMPackage.OSM_ORIENTATION__Y: + setY(Y_EDEFAULT); + return; + case OSMPackage.OSM_ORIENTATION__Z: + setZ(Z_EDEFAULT); + return; + case OSMPackage.OSM_ORIENTATION__W: + setW(W_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case OSMPackage.OSM_ORIENTATION__X: + return x != X_EDEFAULT; + case OSMPackage.OSM_ORIENTATION__Y: + return y != Y_EDEFAULT; + case OSMPackage.OSM_ORIENTATION__Z: + return z != Z_EDEFAULT; + case OSMPackage.OSM_ORIENTATION__W: + return w != W_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (x: "); + result.append(x); + result.append(", y: "); + result.append(y); + result.append(", z: "); + result.append(z); + result.append(", w: "); + result.append(w); + result.append(')'); + return result.toString(); + } + +} //OSMOrientationImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/impl/OSMPackageImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/impl/OSMPackageImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..6ff26b2c30bb1271002fa15fa35184aa7dcccba6 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/impl/OSMPackageImpl.java @@ -0,0 +1,697 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl; + +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage; + +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosDevKitPackageImpl; + +import ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage; + +import ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.OFBizPackage; + +import ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl.OFBizPackageImpl; + +import ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMExtractedAttributes; +import ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMFactory; +import ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMMonitoringTarget; +import ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMObject; +import ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMOrientation; +import ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPackage; +import ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPoint; +import ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPosition; +import ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMZoneDescriptor; + +import ipos.project.DataModellntegration.iPos_Datamodel.Tooz.ToozPackage; + +import ipos.project.DataModellntegration.iPos_Datamodel.Tooz.impl.ToozPackageImpl; + +import ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.VDA5050Package; + +import ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl.VDA5050PackageImpl; + +import ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl; + +import org.eclipse.emf.ecore.EAttribute; +import org.eclipse.emf.ecore.EClass; +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 OSMPackageImpl extends EPackageImpl implements OSMPackage { + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass osmObjectEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass osmPositionEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass osmPointEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass osmOrientationEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass osmExtractedAttributesEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass osmZoneDescriptorEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass osmMonitoringTargetEClass = 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 ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPackage#eNS_URI + * @see #init() + * @generated + */ + private OSMPackageImpl() { + super(eNS_URI, OSMFactory.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 OSMPackage#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 OSMPackage init() { + if (isInited) + return (OSMPackage) EPackage.Registry.INSTANCE.getEPackage(OSMPackage.eNS_URI); + + // Obtain or create and register package + Object registeredOSMPackage = EPackage.Registry.INSTANCE.get(eNS_URI); + OSMPackageImpl theOSMPackage = registeredOSMPackage instanceof OSMPackageImpl + ? (OSMPackageImpl) registeredOSMPackage + : new OSMPackageImpl(); + + isInited = true; + + // Obtain or create and register interdependencies + Object registeredPackage = EPackage.Registry.INSTANCE.getEPackage(IPos_DatamodelPackage.eNS_URI); + IPos_DatamodelPackageImpl theIPos_DatamodelPackage = (IPos_DatamodelPackageImpl) (registeredPackage instanceof IPos_DatamodelPackageImpl + ? registeredPackage + : IPos_DatamodelPackage.eINSTANCE); + registeredPackage = EPackage.Registry.INSTANCE.getEPackage(OFBizPackage.eNS_URI); + OFBizPackageImpl theOFBizPackage = (OFBizPackageImpl) (registeredPackage instanceof OFBizPackageImpl + ? registeredPackage + : OFBizPackage.eINSTANCE); + registeredPackage = EPackage.Registry.INSTANCE.getEPackage(IPosDevKitPackage.eNS_URI); + IPosDevKitPackageImpl theIPosDevKitPackage = (IPosDevKitPackageImpl) (registeredPackage instanceof IPosDevKitPackageImpl + ? registeredPackage + : IPosDevKitPackage.eINSTANCE); + registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ToozPackage.eNS_URI); + ToozPackageImpl theToozPackage = (ToozPackageImpl) (registeredPackage instanceof ToozPackageImpl + ? registeredPackage + : ToozPackage.eINSTANCE); + registeredPackage = EPackage.Registry.INSTANCE.getEPackage(VDA5050Package.eNS_URI); + VDA5050PackageImpl theVDA5050Package = (VDA5050PackageImpl) (registeredPackage instanceof VDA5050PackageImpl + ? registeredPackage + : VDA5050Package.eINSTANCE); + + // Create package meta-data objects + theOSMPackage.createPackageContents(); + theIPos_DatamodelPackage.createPackageContents(); + theOFBizPackage.createPackageContents(); + theIPosDevKitPackage.createPackageContents(); + theToozPackage.createPackageContents(); + theVDA5050Package.createPackageContents(); + + // Initialize created meta-data + theOSMPackage.initializePackageContents(); + theIPos_DatamodelPackage.initializePackageContents(); + theOFBizPackage.initializePackageContents(); + theIPosDevKitPackage.initializePackageContents(); + theToozPackage.initializePackageContents(); + theVDA5050Package.initializePackageContents(); + + // Mark meta-data to indicate it can't be changed + theOSMPackage.freeze(); + + // Update the registry and return the package + EPackage.Registry.INSTANCE.put(OSMPackage.eNS_URI, theOSMPackage); + return theOSMPackage; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getOSMObject() { + return osmObjectEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getOSMObject_Id() { + return (EAttribute) osmObjectEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getOSMObject_SensorId() { + return (EAttribute) osmObjectEClass.getEStructuralFeatures().get(1); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getOSMObject_Type() { + return (EAttribute) osmObjectEClass.getEStructuralFeatures().get(2); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getOSMObject_SensorType() { + return (EAttribute) osmObjectEClass.getEStructuralFeatures().get(3); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EReference getOSMObject_Osmposition() { + return (EReference) osmObjectEClass.getEStructuralFeatures().get(4); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EReference getOSMObject_Osmorientation() { + return (EReference) osmObjectEClass.getEStructuralFeatures().get(5); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EReference getOSMObject_Osmextractedattributes() { + return (EReference) osmObjectEClass.getEStructuralFeatures().get(6); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getOSMObject_LastPosUpdate() { + return (EAttribute) osmObjectEClass.getEStructuralFeatures().get(7); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EReference getOSMObject_Osmzonedescriptor() { + return (EReference) osmObjectEClass.getEStructuralFeatures().get(8); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getOSMPosition() { + return osmPositionEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getOSMPosition_RefSystemId() { + return (EAttribute) osmPositionEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getOSMPosition_Accuracy() { + return (EAttribute) osmPositionEClass.getEStructuralFeatures().get(1); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EReference getOSMPosition_Osmpoint() { + return (EReference) osmPositionEClass.getEStructuralFeatures().get(2); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getOSMPoint() { + return osmPointEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getOSMPoint_X() { + return (EAttribute) osmPointEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getOSMPoint_Y() { + return (EAttribute) osmPointEClass.getEStructuralFeatures().get(1); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getOSMPoint_Z() { + return (EAttribute) osmPointEClass.getEStructuralFeatures().get(2); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getOSMOrientation() { + return osmOrientationEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getOSMOrientation_X() { + return (EAttribute) osmOrientationEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getOSMOrientation_Y() { + return (EAttribute) osmOrientationEClass.getEStructuralFeatures().get(1); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getOSMOrientation_Z() { + return (EAttribute) osmOrientationEClass.getEStructuralFeatures().get(2); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getOSMOrientation_W() { + return (EAttribute) osmOrientationEClass.getEStructuralFeatures().get(3); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getOSMExtractedAttributes() { + return osmExtractedAttributesEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getOSMExtractedAttributes_BatteryChargeLevel() { + return (EAttribute) osmExtractedAttributesEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getOSMExtractedAttributes_LoadedItems() { + return (EAttribute) osmExtractedAttributesEClass.getEStructuralFeatures().get(1); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getOSMExtractedAttributes_Errors() { + return (EAttribute) osmExtractedAttributesEClass.getEStructuralFeatures().get(2); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getOSMExtractedAttributes_Theta() { + return (EAttribute) osmExtractedAttributesEClass.getEStructuralFeatures().get(3); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getOSMZoneDescriptor() { + return osmZoneDescriptorEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getOSMZoneDescriptor_ZoneId() { + return (EAttribute) osmZoneDescriptorEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getOSMZoneDescriptor_NotificationType() { + return (EAttribute) osmZoneDescriptorEClass.getEStructuralFeatures().get(1); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getOSMMonitoringTarget() { + return osmMonitoringTargetEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getOSMMonitoringTarget_MonitoringTaskId() { + return (EAttribute) osmMonitoringTargetEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getOSMMonitoringTarget_Protocol() { + return (EAttribute) osmMonitoringTargetEClass.getEStructuralFeatures().get(1); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public OSMFactory getOSMFactory() { + return (OSMFactory) 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 + osmObjectEClass = createEClass(OSM_OBJECT); + createEAttribute(osmObjectEClass, OSM_OBJECT__ID); + createEAttribute(osmObjectEClass, OSM_OBJECT__SENSOR_ID); + createEAttribute(osmObjectEClass, OSM_OBJECT__TYPE); + createEAttribute(osmObjectEClass, OSM_OBJECT__SENSOR_TYPE); + createEReference(osmObjectEClass, OSM_OBJECT__OSMPOSITION); + createEReference(osmObjectEClass, OSM_OBJECT__OSMORIENTATION); + createEReference(osmObjectEClass, OSM_OBJECT__OSMEXTRACTEDATTRIBUTES); + createEAttribute(osmObjectEClass, OSM_OBJECT__LAST_POS_UPDATE); + createEReference(osmObjectEClass, OSM_OBJECT__OSMZONEDESCRIPTOR); + + osmPositionEClass = createEClass(OSM_POSITION); + createEAttribute(osmPositionEClass, OSM_POSITION__REF_SYSTEM_ID); + createEAttribute(osmPositionEClass, OSM_POSITION__ACCURACY); + createEReference(osmPositionEClass, OSM_POSITION__OSMPOINT); + + osmPointEClass = createEClass(OSM_POINT); + createEAttribute(osmPointEClass, OSM_POINT__X); + createEAttribute(osmPointEClass, OSM_POINT__Y); + createEAttribute(osmPointEClass, OSM_POINT__Z); + + osmOrientationEClass = createEClass(OSM_ORIENTATION); + createEAttribute(osmOrientationEClass, OSM_ORIENTATION__X); + createEAttribute(osmOrientationEClass, OSM_ORIENTATION__Y); + createEAttribute(osmOrientationEClass, OSM_ORIENTATION__Z); + createEAttribute(osmOrientationEClass, OSM_ORIENTATION__W); + + osmExtractedAttributesEClass = createEClass(OSM_EXTRACTED_ATTRIBUTES); + createEAttribute(osmExtractedAttributesEClass, OSM_EXTRACTED_ATTRIBUTES__BATTERY_CHARGE_LEVEL); + createEAttribute(osmExtractedAttributesEClass, OSM_EXTRACTED_ATTRIBUTES__LOADED_ITEMS); + createEAttribute(osmExtractedAttributesEClass, OSM_EXTRACTED_ATTRIBUTES__ERRORS); + createEAttribute(osmExtractedAttributesEClass, OSM_EXTRACTED_ATTRIBUTES__THETA); + + osmZoneDescriptorEClass = createEClass(OSM_ZONE_DESCRIPTOR); + createEAttribute(osmZoneDescriptorEClass, OSM_ZONE_DESCRIPTOR__ZONE_ID); + createEAttribute(osmZoneDescriptorEClass, OSM_ZONE_DESCRIPTOR__NOTIFICATION_TYPE); + + osmMonitoringTargetEClass = createEClass(OSM_MONITORING_TARGET); + createEAttribute(osmMonitoringTargetEClass, OSM_MONITORING_TARGET__MONITORING_TASK_ID); + createEAttribute(osmMonitoringTargetEClass, OSM_MONITORING_TARGET__PROTOCOL); + } + + /** + * <!-- 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); + + // Obtain other dependent packages + IPos_DatamodelPackage theIPos_DatamodelPackage = (IPos_DatamodelPackage) EPackage.Registry.INSTANCE + .getEPackage(IPos_DatamodelPackage.eNS_URI); + + // Create type parameters + + // Set bounds for type parameters + + // Add supertypes to classes + + // Initialize classes, features, and operations; add parameters + initEClass(osmObjectEClass, OSMObject.class, "OSMObject", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getOSMObject_Id(), ecorePackage.getEString(), "id", null, 0, 1, OSMObject.class, !IS_TRANSIENT, + !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getOSMObject_SensorId(), ecorePackage.getEString(), "sensorId", null, 0, 1, OSMObject.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getOSMObject_Type(), ecorePackage.getEString(), "type", null, 0, 1, OSMObject.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getOSMObject_SensorType(), ecorePackage.getEString(), "sensorType", null, 0, 1, OSMObject.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getOSMObject_Osmposition(), this.getOSMPosition(), null, "osmposition", null, 0, 1, + OSMObject.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, + !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getOSMObject_Osmorientation(), this.getOSMOrientation(), null, "osmorientation", null, 0, 1, + OSMObject.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, + !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getOSMObject_Osmextractedattributes(), this.getOSMExtractedAttributes(), null, + "osmextractedattributes", null, 0, 1, OSMObject.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, + !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getOSMObject_LastPosUpdate(), ecorePackage.getEString(), "lastPosUpdate", null, 0, 1, + OSMObject.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + initEReference(getOSMObject_Osmzonedescriptor(), this.getOSMZoneDescriptor(), null, "osmzonedescriptor", null, + 0, -1, OSMObject.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, + !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(osmPositionEClass, OSMPosition.class, "OSMPosition", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getOSMPosition_RefSystemId(), ecorePackage.getEString(), "refSystemId", null, 0, 1, + OSMPosition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + initEAttribute(getOSMPosition_Accuracy(), ecorePackage.getEFloat(), "accuracy", null, 0, 1, OSMPosition.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getOSMPosition_Osmpoint(), this.getOSMPoint(), null, "osmpoint", null, 0, 1, OSMPosition.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(osmPointEClass, OSMPoint.class, "OSMPoint", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getOSMPoint_X(), ecorePackage.getEFloat(), "x", null, 0, 1, OSMPoint.class, !IS_TRANSIENT, + !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getOSMPoint_Y(), ecorePackage.getEFloat(), "y", null, 0, 1, OSMPoint.class, !IS_TRANSIENT, + !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getOSMPoint_Z(), ecorePackage.getEFloat(), "z", null, 0, 1, OSMPoint.class, !IS_TRANSIENT, + !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(osmOrientationEClass, OSMOrientation.class, "OSMOrientation", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getOSMOrientation_X(), ecorePackage.getEFloat(), "x", null, 0, 1, OSMOrientation.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getOSMOrientation_Y(), ecorePackage.getEFloat(), "y", null, 0, 1, OSMOrientation.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getOSMOrientation_Z(), ecorePackage.getEFloat(), "z", null, 0, 1, OSMOrientation.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getOSMOrientation_W(), ecorePackage.getEFloat(), "w", null, 0, 1, OSMOrientation.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(osmExtractedAttributesEClass, OSMExtractedAttributes.class, "OSMExtractedAttributes", !IS_ABSTRACT, + !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getOSMExtractedAttributes_BatteryChargeLevel(), ecorePackage.getEFloat(), "batteryChargeLevel", + null, 0, 1, OSMExtractedAttributes.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, + !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getOSMExtractedAttributes_LoadedItems(), theIPos_DatamodelPackage.getIntArray(), "loadedItems", + null, 0, 1, OSMExtractedAttributes.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, + !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getOSMExtractedAttributes_Errors(), theIPos_DatamodelPackage.getIntArray(), "errors", null, 0, 1, + OSMExtractedAttributes.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getOSMExtractedAttributes_Theta(), ecorePackage.getEFloat(), "theta", null, 0, 1, + OSMExtractedAttributes.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(osmZoneDescriptorEClass, OSMZoneDescriptor.class, "OSMZoneDescriptor", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getOSMZoneDescriptor_ZoneId(), ecorePackage.getEString(), "zoneId", null, 0, 1, + OSMZoneDescriptor.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + initEAttribute(getOSMZoneDescriptor_NotificationType(), ecorePackage.getEString(), "notificationType", null, 0, + 1, OSMZoneDescriptor.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(osmMonitoringTargetEClass, OSMMonitoringTarget.class, "OSMMonitoringTarget", !IS_ABSTRACT, + !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getOSMMonitoringTarget_MonitoringTaskId(), ecorePackage.getEString(), "monitoringTaskId", null, + 0, 1, OSMMonitoringTarget.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getOSMMonitoringTarget_Protocol(), ecorePackage.getEString(), "protocol", null, 0, 1, + OSMMonitoringTarget.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + } + +} //OSMPackageImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/impl/OSMPointImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/impl/OSMPointImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..95333bc3182b0c5366fed90ca5654400b6690813 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/impl/OSMPointImpl.java @@ -0,0 +1,272 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl; + +import ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPackage; +import ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPoint; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Point</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMPointImpl#getX <em>X</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMPointImpl#getY <em>Y</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMPointImpl#getZ <em>Z</em>}</li> + * </ul> + * + * @generated + */ +public class OSMPointImpl extends MinimalEObjectImpl.Container implements OSMPoint { + /** + * The default value of the '{@link #getX() <em>X</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getX() + * @generated + * @ordered + */ + protected static final float X_EDEFAULT = 0.0F; + + /** + * The cached value of the '{@link #getX() <em>X</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getX() + * @generated + * @ordered + */ + protected float x = X_EDEFAULT; + + /** + * The default value of the '{@link #getY() <em>Y</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getY() + * @generated + * @ordered + */ + protected static final float Y_EDEFAULT = 0.0F; + + /** + * The cached value of the '{@link #getY() <em>Y</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getY() + * @generated + * @ordered + */ + protected float y = Y_EDEFAULT; + + /** + * The default value of the '{@link #getZ() <em>Z</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getZ() + * @generated + * @ordered + */ + protected static final float Z_EDEFAULT = 0.0F; + + /** + * The cached value of the '{@link #getZ() <em>Z</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getZ() + * @generated + * @ordered + */ + protected float z = Z_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected OSMPointImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return OSMPackage.Literals.OSM_POINT; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public float getX() { + return x; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setX(float newX) { + float oldX = x; + x = newX; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, OSMPackage.OSM_POINT__X, oldX, x)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public float getY() { + return y; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setY(float newY) { + float oldY = y; + y = newY; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, OSMPackage.OSM_POINT__Y, oldY, y)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public float getZ() { + return z; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setZ(float newZ) { + float oldZ = z; + z = newZ; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, OSMPackage.OSM_POINT__Z, oldZ, z)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case OSMPackage.OSM_POINT__X: + return getX(); + case OSMPackage.OSM_POINT__Y: + return getY(); + case OSMPackage.OSM_POINT__Z: + return getZ(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case OSMPackage.OSM_POINT__X: + setX((Float) newValue); + return; + case OSMPackage.OSM_POINT__Y: + setY((Float) newValue); + return; + case OSMPackage.OSM_POINT__Z: + setZ((Float) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case OSMPackage.OSM_POINT__X: + setX(X_EDEFAULT); + return; + case OSMPackage.OSM_POINT__Y: + setY(Y_EDEFAULT); + return; + case OSMPackage.OSM_POINT__Z: + setZ(Z_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case OSMPackage.OSM_POINT__X: + return x != X_EDEFAULT; + case OSMPackage.OSM_POINT__Y: + return y != Y_EDEFAULT; + case OSMPackage.OSM_POINT__Z: + return z != Z_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (x: "); + result.append(x); + result.append(", y: "); + result.append(y); + result.append(", z: "); + result.append(z); + result.append(')'); + return result.toString(); + } + +} //OSMPointImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/impl/OSMPositionImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/impl/OSMPositionImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..5521ed37093ec4819d8766ec4974813305d487a9 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/impl/OSMPositionImpl.java @@ -0,0 +1,285 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl; + +import ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPackage; +import ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPoint; +import ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPosition; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Position</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMPositionImpl#getRefSystemId <em>Ref System Id</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMPositionImpl#getAccuracy <em>Accuracy</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMPositionImpl#getOsmpoint <em>Osmpoint</em>}</li> + * </ul> + * + * @generated + */ +public class OSMPositionImpl extends MinimalEObjectImpl.Container implements OSMPosition { + /** + * The default value of the '{@link #getRefSystemId() <em>Ref System Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRefSystemId() + * @generated + * @ordered + */ + protected static final String REF_SYSTEM_ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getRefSystemId() <em>Ref System Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRefSystemId() + * @generated + * @ordered + */ + protected String refSystemId = REF_SYSTEM_ID_EDEFAULT; + + /** + * The default value of the '{@link #getAccuracy() <em>Accuracy</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getAccuracy() + * @generated + * @ordered + */ + protected static final float ACCURACY_EDEFAULT = 0.0F; + + /** + * The cached value of the '{@link #getAccuracy() <em>Accuracy</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getAccuracy() + * @generated + * @ordered + */ + protected float accuracy = ACCURACY_EDEFAULT; + + /** + * The cached value of the '{@link #getOsmpoint() <em>Osmpoint</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getOsmpoint() + * @generated + * @ordered + */ + protected OSMPoint osmpoint; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected OSMPositionImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return OSMPackage.Literals.OSM_POSITION; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getRefSystemId() { + return refSystemId; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setRefSystemId(String newRefSystemId) { + String oldRefSystemId = refSystemId; + refSystemId = newRefSystemId; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, OSMPackage.OSM_POSITION__REF_SYSTEM_ID, + oldRefSystemId, refSystemId)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public float getAccuracy() { + return accuracy; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setAccuracy(float newAccuracy) { + float oldAccuracy = accuracy; + accuracy = newAccuracy; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, OSMPackage.OSM_POSITION__ACCURACY, oldAccuracy, + accuracy)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public OSMPoint getOsmpoint() { + if (osmpoint != null && osmpoint.eIsProxy()) { + InternalEObject oldOsmpoint = (InternalEObject) osmpoint; + osmpoint = (OSMPoint) eResolveProxy(oldOsmpoint); + if (osmpoint != oldOsmpoint) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, OSMPackage.OSM_POSITION__OSMPOINT, + oldOsmpoint, osmpoint)); + } + } + return osmpoint; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public OSMPoint basicGetOsmpoint() { + return osmpoint; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setOsmpoint(OSMPoint newOsmpoint) { + OSMPoint oldOsmpoint = osmpoint; + osmpoint = newOsmpoint; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, OSMPackage.OSM_POSITION__OSMPOINT, oldOsmpoint, + osmpoint)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case OSMPackage.OSM_POSITION__REF_SYSTEM_ID: + return getRefSystemId(); + case OSMPackage.OSM_POSITION__ACCURACY: + return getAccuracy(); + case OSMPackage.OSM_POSITION__OSMPOINT: + if (resolve) + return getOsmpoint(); + return basicGetOsmpoint(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case OSMPackage.OSM_POSITION__REF_SYSTEM_ID: + setRefSystemId((String) newValue); + return; + case OSMPackage.OSM_POSITION__ACCURACY: + setAccuracy((Float) newValue); + return; + case OSMPackage.OSM_POSITION__OSMPOINT: + setOsmpoint((OSMPoint) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case OSMPackage.OSM_POSITION__REF_SYSTEM_ID: + setRefSystemId(REF_SYSTEM_ID_EDEFAULT); + return; + case OSMPackage.OSM_POSITION__ACCURACY: + setAccuracy(ACCURACY_EDEFAULT); + return; + case OSMPackage.OSM_POSITION__OSMPOINT: + setOsmpoint((OSMPoint) null); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case OSMPackage.OSM_POSITION__REF_SYSTEM_ID: + return REF_SYSTEM_ID_EDEFAULT == null ? refSystemId != null : !REF_SYSTEM_ID_EDEFAULT.equals(refSystemId); + case OSMPackage.OSM_POSITION__ACCURACY: + return accuracy != ACCURACY_EDEFAULT; + case OSMPackage.OSM_POSITION__OSMPOINT: + return osmpoint != null; + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (refSystemId: "); + result.append(refSystemId); + result.append(", accuracy: "); + result.append(accuracy); + result.append(')'); + return result.toString(); + } + +} //OSMPositionImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/impl/OSMZoneDescriptorImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/impl/OSMZoneDescriptorImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..dd272e6ab66bd9d0f064eb2123f31a8886939ac2 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/impl/OSMZoneDescriptorImpl.java @@ -0,0 +1,221 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl; + +import ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPackage; +import ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMZoneDescriptor; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Zone Descriptor</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMZoneDescriptorImpl#getZoneId <em>Zone Id</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMZoneDescriptorImpl#getNotificationType <em>Notification Type</em>}</li> + * </ul> + * + * @generated + */ +public class OSMZoneDescriptorImpl extends MinimalEObjectImpl.Container implements OSMZoneDescriptor { + /** + * The default value of the '{@link #getZoneId() <em>Zone Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getZoneId() + * @generated + * @ordered + */ + protected static final String ZONE_ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getZoneId() <em>Zone Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getZoneId() + * @generated + * @ordered + */ + protected String zoneId = ZONE_ID_EDEFAULT; + + /** + * The default value of the '{@link #getNotificationType() <em>Notification Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getNotificationType() + * @generated + * @ordered + */ + protected static final String NOTIFICATION_TYPE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getNotificationType() <em>Notification Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getNotificationType() + * @generated + * @ordered + */ + protected String notificationType = NOTIFICATION_TYPE_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected OSMZoneDescriptorImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return OSMPackage.Literals.OSM_ZONE_DESCRIPTOR; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getZoneId() { + return zoneId; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setZoneId(String newZoneId) { + String oldZoneId = zoneId; + zoneId = newZoneId; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, OSMPackage.OSM_ZONE_DESCRIPTOR__ZONE_ID, oldZoneId, + zoneId)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getNotificationType() { + return notificationType; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setNotificationType(String newNotificationType) { + String oldNotificationType = notificationType; + notificationType = newNotificationType; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, OSMPackage.OSM_ZONE_DESCRIPTOR__NOTIFICATION_TYPE, + oldNotificationType, notificationType)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case OSMPackage.OSM_ZONE_DESCRIPTOR__ZONE_ID: + return getZoneId(); + case OSMPackage.OSM_ZONE_DESCRIPTOR__NOTIFICATION_TYPE: + return getNotificationType(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case OSMPackage.OSM_ZONE_DESCRIPTOR__ZONE_ID: + setZoneId((String) newValue); + return; + case OSMPackage.OSM_ZONE_DESCRIPTOR__NOTIFICATION_TYPE: + setNotificationType((String) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case OSMPackage.OSM_ZONE_DESCRIPTOR__ZONE_ID: + setZoneId(ZONE_ID_EDEFAULT); + return; + case OSMPackage.OSM_ZONE_DESCRIPTOR__NOTIFICATION_TYPE: + setNotificationType(NOTIFICATION_TYPE_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case OSMPackage.OSM_ZONE_DESCRIPTOR__ZONE_ID: + return ZONE_ID_EDEFAULT == null ? zoneId != null : !ZONE_ID_EDEFAULT.equals(zoneId); + case OSMPackage.OSM_ZONE_DESCRIPTOR__NOTIFICATION_TYPE: + return NOTIFICATION_TYPE_EDEFAULT == null ? notificationType != null + : !NOTIFICATION_TYPE_EDEFAULT.equals(notificationType); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (zoneId: "); + result.append(zoneId); + result.append(", notificationType: "); + result.append(notificationType); + result.append(')'); + return result.toString(); + } + +} //OSMZoneDescriptorImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/util/OSMAdapterFactory.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/util/OSMAdapterFactory.java new file mode 100644 index 0000000000000000000000000000000000000000..53bb46ee8029476e87ba47f9b334045c43a27a70 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/util/OSMAdapterFactory.java @@ -0,0 +1,233 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.OSM.util; + +import ipos.project.DataModellntegration.iPos_Datamodel.OSM.*; + +import org.eclipse.emf.common.notify.Adapter; +import org.eclipse.emf.common.notify.Notifier; + +import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * The <b>Adapter Factory</b> for the model. + * It provides an adapter <code>createXXX</code> method for each class of the model. + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPackage + * @generated + */ +public class OSMAdapterFactory extends AdapterFactoryImpl { + /** + * The cached model package. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected static OSMPackage modelPackage; + + /** + * Creates an instance of the adapter factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public OSMAdapterFactory() { + if (modelPackage == null) { + modelPackage = OSMPackage.eINSTANCE; + } + } + + /** + * Returns whether this factory is applicable for the type of the object. + * <!-- begin-user-doc --> + * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model. + * <!-- end-user-doc --> + * @return whether this factory is applicable for the type of the object. + * @generated + */ + @Override + public boolean isFactoryForType(Object object) { + if (object == modelPackage) { + return true; + } + if (object instanceof EObject) { + return ((EObject) object).eClass().getEPackage() == modelPackage; + } + return false; + } + + /** + * The switch that delegates to the <code>createXXX</code> methods. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected OSMSwitch<Adapter> modelSwitch = new OSMSwitch<Adapter>() { + @Override + public Adapter caseOSMObject(OSMObject object) { + return createOSMObjectAdapter(); + } + + @Override + public Adapter caseOSMPosition(OSMPosition object) { + return createOSMPositionAdapter(); + } + + @Override + public Adapter caseOSMPoint(OSMPoint object) { + return createOSMPointAdapter(); + } + + @Override + public Adapter caseOSMOrientation(OSMOrientation object) { + return createOSMOrientationAdapter(); + } + + @Override + public Adapter caseOSMExtractedAttributes(OSMExtractedAttributes object) { + return createOSMExtractedAttributesAdapter(); + } + + @Override + public Adapter caseOSMZoneDescriptor(OSMZoneDescriptor object) { + return createOSMZoneDescriptorAdapter(); + } + + @Override + public Adapter caseOSMMonitoringTarget(OSMMonitoringTarget object) { + return createOSMMonitoringTargetAdapter(); + } + + @Override + public Adapter defaultCase(EObject object) { + return createEObjectAdapter(); + } + }; + + /** + * Creates an adapter for the <code>target</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param target the object to adapt. + * @return the adapter for the <code>target</code>. + * @generated + */ + @Override + public Adapter createAdapter(Notifier target) { + return modelSwitch.doSwitch((EObject) target); + } + + /** + * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMObject <em>Object</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMObject + * @generated + */ + public Adapter createOSMObjectAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPosition <em>Position</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPosition + * @generated + */ + public Adapter createOSMPositionAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPoint <em>Point</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPoint + * @generated + */ + public Adapter createOSMPointAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMOrientation <em>Orientation</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMOrientation + * @generated + */ + public Adapter createOSMOrientationAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMExtractedAttributes <em>Extracted Attributes</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMExtractedAttributes + * @generated + */ + public Adapter createOSMExtractedAttributesAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMZoneDescriptor <em>Zone Descriptor</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMZoneDescriptor + * @generated + */ + public Adapter createOSMZoneDescriptorAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMMonitoringTarget <em>Monitoring Target</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMMonitoringTarget + * @generated + */ + public Adapter createOSMMonitoringTargetAdapter() { + return null; + } + + /** + * Creates a new adapter for the default case. + * <!-- begin-user-doc --> + * This default implementation returns null. + * <!-- end-user-doc --> + * @return the new adapter. + * @generated + */ + public Adapter createEObjectAdapter() { + return null; + } + +} //OSMAdapterFactory diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/util/OSMSwitch.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/util/OSMSwitch.java new file mode 100644 index 0000000000000000000000000000000000000000..e58ce5eee2f654ea7e18750a54d986ea53313047 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OSM/util/OSMSwitch.java @@ -0,0 +1,244 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.OSM.util; + +import ipos.project.DataModellntegration.iPos_Datamodel.OSM.*; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EPackage; + +import org.eclipse.emf.ecore.util.Switch; + +/** + * <!-- begin-user-doc --> + * The <b>Switch</b> for the model's inheritance hierarchy. + * It supports the call {@link #doSwitch(EObject) doSwitch(object)} + * to invoke the <code>caseXXX</code> method for each class of the model, + * starting with the actual class of the object + * and proceeding up the inheritance hierarchy + * until a non-null result is returned, + * which is the result of the switch. + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPackage + * @generated + */ +public class OSMSwitch<T> extends Switch<T> { + /** + * The cached model package + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected static OSMPackage modelPackage; + + /** + * Creates an instance of the switch. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public OSMSwitch() { + if (modelPackage == null) { + modelPackage = OSMPackage.eINSTANCE; + } + } + + /** + * Checks whether this is a switch for the given package. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param ePackage the package in question. + * @return whether this is a switch for the given package. + * @generated + */ + @Override + protected boolean isSwitchFor(EPackage ePackage) { + return ePackage == modelPackage; + } + + /** + * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the first non-null result returned by a <code>caseXXX</code> call. + * @generated + */ + @Override + protected T doSwitch(int classifierID, EObject theEObject) { + switch (classifierID) { + case OSMPackage.OSM_OBJECT: { + OSMObject osmObject = (OSMObject) theEObject; + T result = caseOSMObject(osmObject); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case OSMPackage.OSM_POSITION: { + OSMPosition osmPosition = (OSMPosition) theEObject; + T result = caseOSMPosition(osmPosition); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case OSMPackage.OSM_POINT: { + OSMPoint osmPoint = (OSMPoint) theEObject; + T result = caseOSMPoint(osmPoint); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case OSMPackage.OSM_ORIENTATION: { + OSMOrientation osmOrientation = (OSMOrientation) theEObject; + T result = caseOSMOrientation(osmOrientation); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case OSMPackage.OSM_EXTRACTED_ATTRIBUTES: { + OSMExtractedAttributes osmExtractedAttributes = (OSMExtractedAttributes) theEObject; + T result = caseOSMExtractedAttributes(osmExtractedAttributes); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case OSMPackage.OSM_ZONE_DESCRIPTOR: { + OSMZoneDescriptor osmZoneDescriptor = (OSMZoneDescriptor) theEObject; + T result = caseOSMZoneDescriptor(osmZoneDescriptor); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case OSMPackage.OSM_MONITORING_TARGET: { + OSMMonitoringTarget osmMonitoringTarget = (OSMMonitoringTarget) theEObject; + T result = caseOSMMonitoringTarget(osmMonitoringTarget); + if (result == null) + result = defaultCase(theEObject); + return result; + } + default: + return defaultCase(theEObject); + } + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Object</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Object</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseOSMObject(OSMObject object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Position</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Position</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseOSMPosition(OSMPosition object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Point</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Point</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseOSMPoint(OSMPoint object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Orientation</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Orientation</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseOSMOrientation(OSMOrientation object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Extracted Attributes</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Extracted Attributes</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseOSMExtractedAttributes(OSMExtractedAttributes object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Zone Descriptor</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Zone Descriptor</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseOSMZoneDescriptor(OSMZoneDescriptor object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Monitoring Target</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Monitoring Target</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseOSMMonitoringTarget(OSMMonitoringTarget object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>EObject</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch, but this is the last case anyway. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>EObject</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) + * @generated + */ + @Override + public T defaultCase(EObject object) { + return null; + } + +} //OSMSwitch diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OtherBeacon.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OtherBeacon.java index 74d0a12f7b2dee85c162262a541fdc380417d0ce..988f7d6f294c409ae56726a19f7f6558c810fdee 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OtherBeacon.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OtherBeacon.java @@ -4,8 +4,6 @@ package ipos.project.DataModellntegration.iPos_Datamodel; import java.util.Map; -import org.eclipse.emf.ecore.EObject; - /** * <!-- begin-user-doc --> * A representation of the model object '<em><b>Other Beacon</b></em>'. @@ -33,7 +31,7 @@ public interface OtherBeacon extends Beacon { * @model transient="true" * @generated */ - Map<String, EObject> getData(); + Map<String, Object> getData(); /** * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OtherBeacon#getData <em>Data</em>}' attribute. @@ -43,6 +41,6 @@ public interface OtherBeacon extends Beacon { * @see #getData() * @generated */ - void setData(Map<String, EObject> value); + void setData(Map<String, Object> value); } // OtherBeacon diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OtherProx.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OtherProx.java index b9c2f3d197768647087d6571e4de6abec2314c51..9ce0bf7e2a8508584f380d027f533a49f7554c1b 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OtherProx.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/OtherProx.java @@ -4,8 +4,6 @@ package ipos.project.DataModellntegration.iPos_Datamodel; import java.util.Map; -import org.eclipse.emf.ecore.EObject; - /** * <!-- begin-user-doc --> * A representation of the model object '<em><b>Other Prox</b></em>'. @@ -33,7 +31,7 @@ public interface OtherProx extends Proximity { * @model transient="true" * @generated */ - Map<String, EObject> getData(); + Map<String, Object> getData(); /** * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.OtherProx#getData <em>Data</em>}' attribute. @@ -43,6 +41,6 @@ public interface OtherProx extends Proximity { * @see #getData() * @generated */ - void setData(Map<String, EObject> value); + void setData(Map<String, Object> value); } // OtherProx diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/POI.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/POI.java new file mode 100644 index 0000000000000000000000000000000000000000..25040df3cdf2ed316645bb74918ef3bac4e2925b --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/POI.java @@ -0,0 +1,117 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel; + +import java.util.Map; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>POI</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.POI#getPlacing <em>Placing</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.POI#getDescription <em>Description</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.POI#getData <em>Data</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.POI#getId <em>Id</em>}</li> + * </ul> + * + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getPOI() + * @model + * @generated + */ +public interface POI extends EObject { + /** + * Returns the value of the '<em><b>Placing</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Placing</em>' reference. + * @see #setPlacing(Placing) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getPOI_Placing() + * @model required="true" + * @generated + */ + Placing getPlacing(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.POI#getPlacing <em>Placing</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Placing</em>' reference. + * @see #getPlacing() + * @generated + */ + void setPlacing(Placing value); + + /** + * Returns the value of the '<em><b>Description</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Description</em>' attribute. + * @see #setDescription(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getPOI_Description() + * @model + * @generated + */ + String getDescription(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.POI#getDescription <em>Description</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Description</em>' attribute. + * @see #getDescription() + * @generated + */ + void setDescription(String value); + + /** + * Returns the value of the '<em><b>Data</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Data</em>' attribute. + * @see #setData(Map) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getPOI_Data() + * @model transient="true" + * @generated + */ + Map<String, String> getData(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.POI#getData <em>Data</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Data</em>' attribute. + * @see #getData() + * @generated + */ + void setData(Map<String, String> value); + + /** + * Returns the value of the '<em><b>Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Id</em>' attribute. + * @see #setId(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getPOI_Id() + * @model + * @generated + */ + String getId(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.POI#getId <em>Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Id</em>' attribute. + * @see #getId() + * @generated + */ + void setId(String value); + +} // POI diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Placing.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Placing.java index 81fb9f5faa186259ca7bb5139f5dc4d92363ad48..18eedf86ad18897d63c188974dde5513cd6edbd5 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Placing.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Placing.java @@ -13,7 +13,6 @@ import org.eclipse.emf.ecore.EObject; * The following features are supported: * </p> * <ul> - * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.Placing#getLObject <em>LObject</em>}</li> * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.Placing#getPosition <em>Position</em>}</li> * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.Placing#getOrientation <em>Orientation</em>}</li> * </ul> @@ -23,30 +22,6 @@ import org.eclipse.emf.ecore.EObject; * @generated */ public interface Placing extends EObject { - /** - * Returns the value of the '<em><b>LObject</b></em>' reference. - * It is bidirectional and its opposite is '{@link ipos.project.DataModellntegration.iPos_Datamodel.LocalizableObject#getCurrentPlacing <em>Current Placing</em>}'. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return the value of the '<em>LObject</em>' reference. - * @see #setLObject(LocalizableObject) - * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getPlacing_LObject() - * @see ipos.project.DataModellntegration.iPos_Datamodel.LocalizableObject#getCurrentPlacing - * @model opposite="currentPlacing" required="true" - * @generated - */ - LocalizableObject getLObject(); - - /** - * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.Placing#getLObject <em>LObject</em>}' reference. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @param value the new value of the '<em>LObject</em>' reference. - * @see #getLObject() - * @generated - */ - void setLObject(LocalizableObject value); - /** * Returns the value of the '<em><b>Position</b></em>' reference. * <!-- begin-user-doc --> diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Position.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Position.java index 0ed379361752903e5ae08fedcb57daa967c5acd2..b784864d369c6904614178da1b4969bca389654d 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Position.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Position.java @@ -14,6 +14,8 @@ import org.eclipse.emf.ecore.EObject; * </p> * <ul> * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.Position#getAccuracy <em>Accuracy</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.Position#getPoint <em>Point</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.Position#getReferenceSystem <em>Reference System</em>}</li> * </ul> * * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getPosition() @@ -43,4 +45,48 @@ public interface Position extends EObject { */ void setAccuracy(Accuracy value); + /** + * Returns the value of the '<em><b>Point</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Point</em>' reference. + * @see #setPoint(Point) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getPosition_Point() + * @model required="true" + * @generated + */ + Point getPoint(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.Position#getPoint <em>Point</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Point</em>' reference. + * @see #getPoint() + * @generated + */ + void setPoint(Point value); + + /** + * Returns the value of the '<em><b>Reference System</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Reference System</em>' reference. + * @see #setReferenceSystem(ReferenceSystem) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getPosition_ReferenceSystem() + * @model required="true" + * @generated + */ + ReferenceSystem getReferenceSystem(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.Position#getReferenceSystem <em>Reference System</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Reference System</em>' reference. + * @see #getReferenceSystem() + * @generated + */ + void setReferenceSystem(ReferenceSystem value); + } // Position diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/PositionEvent.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/PositionEvent.java index d1179c497fbb0a8f578f5035261a438af9b92f9a..ab6af1cfa47b712f7b5d9ece5883050dd9625a8d 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/PositionEvent.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/PositionEvent.java @@ -2,6 +2,8 @@ */ package ipos.project.DataModellntegration.iPos_Datamodel; +import org.eclipse.emf.common.util.EList; + import org.eclipse.emf.ecore.EObject; /** @@ -13,8 +15,10 @@ import org.eclipse.emf.ecore.EObject; * The following features are supported: * </p> * <ul> - * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.PositionEvent#getPlacing <em>Placing</em>}</li> * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.PositionEvent#getTimeStamp <em>Time Stamp</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.PositionEvent#getLObjectId <em>LObject Id</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.PositionEvent#getZonedescriptors <em>Zonedescriptors</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.PositionEvent#getPlacing <em>Placing</em>}</li> * </ul> * * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getPositionEvent() @@ -66,4 +70,38 @@ public interface PositionEvent extends EObject { */ void setTimeStamp(String value); + /** + * Returns the value of the '<em><b>LObject Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>LObject Id</em>' attribute. + * @see #setLObjectId(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getPositionEvent_LObjectId() + * @model + * @generated + */ + String getLObjectId(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.PositionEvent#getLObjectId <em>LObject Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>LObject Id</em>' attribute. + * @see #getLObjectId() + * @generated + */ + void setLObjectId(String value); + + /** + * Returns the value of the '<em><b>Zonedescriptors</b></em>' reference list. + * The list contents are of type {@link ipos.project.DataModellntegration.iPos_Datamodel.ZoneDescriptor}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Zonedescriptors</em>' reference list. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getPositionEvent_Zonedescriptors() + * @model + * @generated + */ + EList<ZoneDescriptor> getZonedescriptors(); + } // PositionEvent diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/PositionSensor.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/PositionSensor.java deleted file mode 100644 index 4f3a5bfc3d9bdadd7a504e41833a15193947ff6b..0000000000000000000000000000000000000000 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/PositionSensor.java +++ /dev/null @@ -1,90 +0,0 @@ -/** - */ -package ipos.project.DataModellntegration.iPos_Datamodel; - -/** - * <!-- begin-user-doc --> - * A representation of the model object '<em><b>Position Sensor</b></em>'. - * <!-- end-user-doc --> - * - * <p> - * The following features are supported: - * </p> - * <ul> - * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.PositionSensor#getAgent <em>Agent</em>}</li> - * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.PositionSensor#getLObject <em>LObject</em>}</li> - * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.PositionSensor#getType <em>Type</em>}</li> - * </ul> - * - * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getPositionSensor() - * @model - * @generated - */ -public interface PositionSensor extends Entity { - /** - * Returns the value of the '<em><b>Agent</b></em>' reference. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return the value of the '<em>Agent</em>' reference. - * @see #setAgent(Agent) - * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getPositionSensor_Agent() - * @model - * @generated - */ - Agent getAgent(); - - /** - * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.PositionSensor#getAgent <em>Agent</em>}' reference. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @param value the new value of the '<em>Agent</em>' reference. - * @see #getAgent() - * @generated - */ - void setAgent(Agent value); - - /** - * Returns the value of the '<em><b>LObject</b></em>' reference. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return the value of the '<em>LObject</em>' reference. - * @see #setLObject(LocalizableObject) - * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getPositionSensor_LObject() - * @model - * @generated - */ - LocalizableObject getLObject(); - - /** - * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.PositionSensor#getLObject <em>LObject</em>}' reference. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @param value the new value of the '<em>LObject</em>' reference. - * @see #getLObject() - * @generated - */ - void setLObject(LocalizableObject value); - - /** - * Returns the value of the '<em><b>Type</b></em>' attribute. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return the value of the '<em>Type</em>' attribute. - * @see #setType(String) - * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getPositionSensor_Type() - * @model - * @generated - */ - String getType(); - - /** - * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.PositionSensor#getType <em>Type</em>}' attribute. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @param value the new value of the '<em>Type</em>' attribute. - * @see #getType() - * @generated - */ - void setType(String value); - -} // PositionSensor diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Proximity.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Proximity.java index 1df80c851275daabb139689363d44d21dcef2339..3947b0ec5aec0c92f5331769c0b003626396d888 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Proximity.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Proximity.java @@ -20,7 +20,7 @@ package ipos.project.DataModellntegration.iPos_Datamodel; * @model * @generated */ -public interface Proximity extends Rawdata { +public interface Proximity extends RawdataEvent { /** * Returns the value of the '<em><b>Tag Id</b></em>' attribute. * <!-- begin-user-doc --> diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Rawdata.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Rawdata.java deleted file mode 100644 index 7d56da6457a051b047c910ec2227916687098f4b..0000000000000000000000000000000000000000 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Rawdata.java +++ /dev/null @@ -1,46 +0,0 @@ -/** - */ -package ipos.project.DataModellntegration.iPos_Datamodel; - -import org.eclipse.emf.ecore.EObject; - -/** - * <!-- begin-user-doc --> - * A representation of the model object '<em><b>Rawdata</b></em>'. - * <!-- end-user-doc --> - * - * <p> - * The following features are supported: - * </p> - * <ul> - * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.Rawdata#getSensorId <em>Sensor Id</em>}</li> - * </ul> - * - * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getRawdata() - * @model abstract="true" - * @generated - */ -public interface Rawdata extends EObject { - /** - * Returns the value of the '<em><b>Sensor Id</b></em>' attribute. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return the value of the '<em>Sensor Id</em>' attribute. - * @see #setSensorId(String) - * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getRawdata_SensorId() - * @model - * @generated - */ - String getSensorId(); - - /** - * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.Rawdata#getSensorId <em>Sensor Id</em>}' attribute. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @param value the new value of the '<em>Sensor Id</em>' attribute. - * @see #getSensorId() - * @generated - */ - void setSensorId(String value); - -} // Rawdata diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/RawdataEvent.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/RawdataEvent.java index fc288704b7602e883f6311192c8d7ac984de37a8..384eaf4a03b692ea7196ef6373e9a7e67ec77e0a 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/RawdataEvent.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/RawdataEvent.java @@ -2,8 +2,6 @@ */ package ipos.project.DataModellntegration.iPos_Datamodel; -import org.eclipse.emf.common.util.EList; - import org.eclipse.emf.ecore.EObject; /** @@ -15,7 +13,7 @@ import org.eclipse.emf.ecore.EObject; * The following features are supported: * </p> * <ul> - * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.RawdataEvent#getRawdata <em>Rawdata</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.RawdataEvent#getTimeStamp <em>Time Stamp</em>}</li> * </ul> * * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getRawdataEvent() @@ -24,15 +22,25 @@ import org.eclipse.emf.ecore.EObject; */ public interface RawdataEvent extends EObject { /** - * Returns the value of the '<em><b>Rawdata</b></em>' reference list. - * The list contents are of type {@link ipos.project.DataModellntegration.iPos_Datamodel.Rawdata}. + * Returns the value of the '<em><b>Time Stamp</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Time Stamp</em>' attribute. + * @see #setTimeStamp(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getRawdataEvent_TimeStamp() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + String getTimeStamp(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.RawdataEvent#getTimeStamp <em>Time Stamp</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @return the value of the '<em>Rawdata</em>' reference list. - * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getRawdataEvent_Rawdata() - * @model required="true" + * @param value the new value of the '<em>Time Stamp</em>' attribute. + * @see #getTimeStamp() * @generated */ - EList<Rawdata> getRawdata(); + void setTimeStamp(String value); } // RawdataEvent diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/ReferencePosition.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/ReferencePosition.java deleted file mode 100644 index 042dc989a82c26f0b06baf2b67b5a01e2a94d0ef..0000000000000000000000000000000000000000 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/ReferencePosition.java +++ /dev/null @@ -1,69 +0,0 @@ -/** - */ -package ipos.project.DataModellntegration.iPos_Datamodel; - -import org.eclipse.emf.ecore.EObject; - -/** - * <!-- begin-user-doc --> - * A representation of the model object '<em><b>Reference Position</b></em>'. - * <!-- end-user-doc --> - * - * <p> - * The following features are supported: - * </p> - * <ul> - * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.ReferencePosition#getPosition <em>Position</em>}</li> - * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.ReferencePosition#getId <em>Id</em>}</li> - * </ul> - * - * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getReferencePosition() - * @model - * @generated - */ -public interface ReferencePosition extends EObject { - /** - * Returns the value of the '<em><b>Position</b></em>' reference. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return the value of the '<em>Position</em>' reference. - * @see #setPosition(Position) - * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getReferencePosition_Position() - * @model required="true" - * @generated - */ - Position getPosition(); - - /** - * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.ReferencePosition#getPosition <em>Position</em>}' reference. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @param value the new value of the '<em>Position</em>' reference. - * @see #getPosition() - * @generated - */ - void setPosition(Position value); - - /** - * Returns the value of the '<em><b>Id</b></em>' attribute. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return the value of the '<em>Id</em>' attribute. - * @see #setId(String) - * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getReferencePosition_Id() - * @model - * @generated - */ - String getId(); - - /** - * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.ReferencePosition#getId <em>Id</em>}' attribute. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @param value the new value of the '<em>Id</em>' attribute. - * @see #getId() - * @generated - */ - void setId(String value); - -} // ReferencePosition diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/ReferenceSystem.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/ReferenceSystem.java index 211d2443208bb3a12d926f8c1ca7ef28734aec7a..449528a95ca8e9f1952afe73e210e0f6ae3f4fc0 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/ReferenceSystem.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/ReferenceSystem.java @@ -30,7 +30,7 @@ public interface ReferenceSystem extends EObject { * @return the value of the '<em>Origin</em>' reference. * @see #setOrigin(Placing) * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getReferenceSystem_Origin() - * @model required="true" + * @model * @generated */ Placing getOrigin(); diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/RelativePosition.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/RelativePosition.java deleted file mode 100644 index 1603702d0dbcf5472d7f3c0bb396222b2f910453..0000000000000000000000000000000000000000 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/RelativePosition.java +++ /dev/null @@ -1,67 +0,0 @@ -/** - */ -package ipos.project.DataModellntegration.iPos_Datamodel; - -/** - * <!-- begin-user-doc --> - * A representation of the model object '<em><b>Relative Position</b></em>'. - * <!-- end-user-doc --> - * - * <p> - * The following features are supported: - * </p> - * <ul> - * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.RelativePosition#getReference <em>Reference</em>}</li> - * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.RelativePosition#getPoint <em>Point</em>}</li> - * </ul> - * - * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getRelativePosition() - * @model - * @generated - */ -public interface RelativePosition extends Position { - /** - * Returns the value of the '<em><b>Reference</b></em>' reference. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return the value of the '<em>Reference</em>' reference. - * @see #setReference(ReferenceSystem) - * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getRelativePosition_Reference() - * @model required="true" - * @generated - */ - ReferenceSystem getReference(); - - /** - * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.RelativePosition#getReference <em>Reference</em>}' reference. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @param value the new value of the '<em>Reference</em>' reference. - * @see #getReference() - * @generated - */ - void setReference(ReferenceSystem value); - - /** - * Returns the value of the '<em><b>Point</b></em>' reference. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @return the value of the '<em>Point</em>' reference. - * @see #setPoint(Point) - * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getRelativePosition_Point() - * @model required="true" - * @generated - */ - Point getPoint(); - - /** - * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.RelativePosition#getPoint <em>Point</em>}' reference. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @param value the new value of the '<em>Point</em>' reference. - * @see #getPoint() - * @generated - */ - void setPoint(Point value); - -} // RelativePosition diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Space.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Space.java index e4cfc98aa5987ec0a408614f518af5aed2d3d289..50f91b531c225b7247ac1e176f66cf02675051cd 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Space.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Space.java @@ -16,6 +16,7 @@ import org.eclipse.emf.ecore.EObject; * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.Space#getX <em>X</em>}</li> * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.Space#getY <em>Y</em>}</li> * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.Space#getZ <em>Z</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.Space#getCentrePoint <em>Centre Point</em>}</li> * </ul> * * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getSpace() @@ -89,4 +90,26 @@ public interface Space extends EObject { */ void setZ(float value); + /** + * Returns the value of the '<em><b>Centre Point</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Centre Point</em>' reference. + * @see #setCentrePoint(Placing) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getSpace_CentrePoint() + * @model required="true" + * @generated + */ + Placing getCentrePoint(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.Space#getCentrePoint <em>Centre Point</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Centre Point</em>' reference. + * @see #getCentrePoint() + * @generated + */ + void setCentrePoint(Placing value); + } // Space diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Tooz/DistantEntity.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Tooz/DistantEntity.java new file mode 100644 index 0000000000000000000000000000000000000000..1732ed8f847f3c58b244ef07a1521b6d32d9f8fe --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Tooz/DistantEntity.java @@ -0,0 +1,186 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.Tooz; + +import java.util.Map; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Distant Entity</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.Tooz.DistantEntity#getLocalSensorId <em>Local Sensor Id</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.Tooz.DistantEntity#getLocalAgentId <em>Local Agent Id</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.Tooz.DistantEntity#getDistantEntityId <em>Distant Entity Id</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.Tooz.DistantEntity#getDistance <em>Distance</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.Tooz.DistantEntity#getProximityIndex <em>Proximity Index</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.Tooz.DistantEntity#getEntityData <em>Entity Data</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.Tooz.DistantEntity#getTimeStamp <em>Time Stamp</em>}</li> + * </ul> + * + * @see ipos.project.DataModellntegration.iPos_Datamodel.Tooz.ToozPackage#getDistantEntity() + * @model + * @generated + */ +public interface DistantEntity extends EObject { + /** + * Returns the value of the '<em><b>Local Sensor Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Local Sensor Id</em>' attribute. + * @see #setLocalSensorId(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.Tooz.ToozPackage#getDistantEntity_LocalSensorId() + * @model + * @generated + */ + String getLocalSensorId(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.Tooz.DistantEntity#getLocalSensorId <em>Local Sensor Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Local Sensor Id</em>' attribute. + * @see #getLocalSensorId() + * @generated + */ + void setLocalSensorId(String value); + + /** + * Returns the value of the '<em><b>Local Agent Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Local Agent Id</em>' attribute. + * @see #setLocalAgentId(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.Tooz.ToozPackage#getDistantEntity_LocalAgentId() + * @model + * @generated + */ + String getLocalAgentId(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.Tooz.DistantEntity#getLocalAgentId <em>Local Agent Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Local Agent Id</em>' attribute. + * @see #getLocalAgentId() + * @generated + */ + void setLocalAgentId(String value); + + /** + * Returns the value of the '<em><b>Distant Entity Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Distant Entity Id</em>' attribute. + * @see #setDistantEntityId(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.Tooz.ToozPackage#getDistantEntity_DistantEntityId() + * @model + * @generated + */ + String getDistantEntityId(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.Tooz.DistantEntity#getDistantEntityId <em>Distant Entity Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Distant Entity Id</em>' attribute. + * @see #getDistantEntityId() + * @generated + */ + void setDistantEntityId(String value); + + /** + * Returns the value of the '<em><b>Distance</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Distance</em>' attribute. + * @see #setDistance(double) + * @see ipos.project.DataModellntegration.iPos_Datamodel.Tooz.ToozPackage#getDistantEntity_Distance() + * @model dataType="org.eclipse.emf.ecore.xml.type.Double" + * @generated + */ + double getDistance(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.Tooz.DistantEntity#getDistance <em>Distance</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Distance</em>' attribute. + * @see #getDistance() + * @generated + */ + void setDistance(double value); + + /** + * Returns the value of the '<em><b>Proximity Index</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Proximity Index</em>' attribute. + * @see #setProximityIndex(int) + * @see ipos.project.DataModellntegration.iPos_Datamodel.Tooz.ToozPackage#getDistantEntity_ProximityIndex() + * @model dataType="org.eclipse.emf.ecore.xml.type.Int" + * @generated + */ + int getProximityIndex(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.Tooz.DistantEntity#getProximityIndex <em>Proximity Index</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Proximity Index</em>' attribute. + * @see #getProximityIndex() + * @generated + */ + void setProximityIndex(int value); + + /** + * Returns the value of the '<em><b>Entity Data</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Entity Data</em>' attribute. + * @see #setEntityData(Map) + * @see ipos.project.DataModellntegration.iPos_Datamodel.Tooz.ToozPackage#getDistantEntity_EntityData() + * @model transient="true" + * @generated + */ + Map<String, String> getEntityData(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.Tooz.DistantEntity#getEntityData <em>Entity Data</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Entity Data</em>' attribute. + * @see #getEntityData() + * @generated + */ + void setEntityData(Map<String, String> value); + + /** + * Returns the value of the '<em><b>Time Stamp</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Time Stamp</em>' attribute. + * @see #setTimeStamp(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.Tooz.ToozPackage#getDistantEntity_TimeStamp() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + String getTimeStamp(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.Tooz.DistantEntity#getTimeStamp <em>Time Stamp</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Time Stamp</em>' attribute. + * @see #getTimeStamp() + * @generated + */ + void setTimeStamp(String value); + +} // DistantEntity diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Tooz/MonitoringTarget.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Tooz/MonitoringTarget.java new file mode 100644 index 0000000000000000000000000000000000000000..6cc4dc9bb9bb0c171d3c0ed287185de294b73462 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Tooz/MonitoringTarget.java @@ -0,0 +1,46 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.Tooz; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Monitoring Target</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.Tooz.MonitoringTarget#getTargetSensorId <em>Target Sensor Id</em>}</li> + * </ul> + * + * @see ipos.project.DataModellntegration.iPos_Datamodel.Tooz.ToozPackage#getMonitoringTarget() + * @model + * @generated + */ +public interface MonitoringTarget extends EObject { + /** + * Returns the value of the '<em><b>Target Sensor Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Target Sensor Id</em>' attribute. + * @see #setTargetSensorId(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.Tooz.ToozPackage#getMonitoringTarget_TargetSensorId() + * @model + * @generated + */ + String getTargetSensorId(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.Tooz.MonitoringTarget#getTargetSensorId <em>Target Sensor Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Target Sensor Id</em>' attribute. + * @see #getTargetSensorId() + * @generated + */ + void setTargetSensorId(String value); + +} // MonitoringTarget diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Tooz/ToozFactory.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Tooz/ToozFactory.java new file mode 100644 index 0000000000000000000000000000000000000000..0a450c96cbec603e11f8302ab822eb49b3ed8019 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Tooz/ToozFactory.java @@ -0,0 +1,51 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.Tooz; + +import org.eclipse.emf.ecore.EFactory; + +/** + * <!-- begin-user-doc --> + * The <b>Factory</b> for the model. + * It provides a create method for each non-abstract class of the model. + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.Tooz.ToozPackage + * @generated + */ +public interface ToozFactory extends EFactory { + /** + * The singleton instance of the factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + ToozFactory eINSTANCE = ipos.project.DataModellntegration.iPos_Datamodel.Tooz.impl.ToozFactoryImpl.init(); + + /** + * Returns a new object of class '<em>Monitoring Target</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Monitoring Target</em>'. + * @generated + */ + MonitoringTarget createMonitoringTarget(); + + /** + * Returns a new object of class '<em>Distant Entity</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Distant Entity</em>'. + * @generated + */ + DistantEntity createDistantEntity(); + + /** + * Returns the package supported by this factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the package supported by this factory. + * @generated + */ + ToozPackage getToozPackage(); + +} //ToozFactory diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Tooz/ToozPackage.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Tooz/ToozPackage.java new file mode 100644 index 0000000000000000000000000000000000000000..2256759b60a215e40866e0458f4d836b975b3d4c --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Tooz/ToozPackage.java @@ -0,0 +1,403 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.Tooz; + +import org.eclipse.emf.ecore.EAttribute; +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EPackage; + +/** + * <!-- begin-user-doc --> + * The <b>Package</b> for the model. + * It contains accessors for the meta objects to represent + * <ul> + * <li>each class,</li> + * <li>each feature of each class,</li> + * <li>each operation of each class,</li> + * <li>each enum,</li> + * <li>and each data type</li> + * </ul> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.Tooz.ToozFactory + * @model kind="package" + * @generated + */ +public interface ToozPackage extends EPackage { + /** + * The package name. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + String eNAME = "Tooz"; + + /** + * The package namespace URI. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + String eNS_URI = "tooz"; + + /** + * The package namespace name. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + String eNS_PREFIX = "tooz"; + + /** + * The singleton instance of the package. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + ToozPackage eINSTANCE = ipos.project.DataModellntegration.iPos_Datamodel.Tooz.impl.ToozPackageImpl.init(); + + /** + * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.Tooz.impl.MonitoringTargetImpl <em>Monitoring Target</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.Tooz.impl.MonitoringTargetImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.Tooz.impl.ToozPackageImpl#getMonitoringTarget() + * @generated + */ + int MONITORING_TARGET = 0; + + /** + * The feature id for the '<em><b>Target Sensor Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int MONITORING_TARGET__TARGET_SENSOR_ID = 0; + + /** + * The number of structural features of the '<em>Monitoring Target</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int MONITORING_TARGET_FEATURE_COUNT = 1; + + /** + * The number of operations of the '<em>Monitoring Target</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int MONITORING_TARGET_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.Tooz.impl.DistantEntityImpl <em>Distant Entity</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.Tooz.impl.DistantEntityImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.Tooz.impl.ToozPackageImpl#getDistantEntity() + * @generated + */ + int DISTANT_ENTITY = 1; + + /** + * The feature id for the '<em><b>Local Sensor Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int DISTANT_ENTITY__LOCAL_SENSOR_ID = 0; + + /** + * The feature id for the '<em><b>Local Agent Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int DISTANT_ENTITY__LOCAL_AGENT_ID = 1; + + /** + * The feature id for the '<em><b>Distant Entity Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int DISTANT_ENTITY__DISTANT_ENTITY_ID = 2; + + /** + * The feature id for the '<em><b>Distance</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int DISTANT_ENTITY__DISTANCE = 3; + + /** + * The feature id for the '<em><b>Proximity Index</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int DISTANT_ENTITY__PROXIMITY_INDEX = 4; + + /** + * The feature id for the '<em><b>Entity Data</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int DISTANT_ENTITY__ENTITY_DATA = 5; + + /** + * The feature id for the '<em><b>Time Stamp</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int DISTANT_ENTITY__TIME_STAMP = 6; + + /** + * The number of structural features of the '<em>Distant Entity</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int DISTANT_ENTITY_FEATURE_COUNT = 7; + + /** + * The number of operations of the '<em>Distant Entity</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int DISTANT_ENTITY_OPERATION_COUNT = 0; + + /** + * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.Tooz.MonitoringTarget <em>Monitoring Target</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Monitoring Target</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.Tooz.MonitoringTarget + * @generated + */ + EClass getMonitoringTarget(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.Tooz.MonitoringTarget#getTargetSensorId <em>Target Sensor Id</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Target Sensor Id</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.Tooz.MonitoringTarget#getTargetSensorId() + * @see #getMonitoringTarget() + * @generated + */ + EAttribute getMonitoringTarget_TargetSensorId(); + + /** + * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.Tooz.DistantEntity <em>Distant Entity</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Distant Entity</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.Tooz.DistantEntity + * @generated + */ + EClass getDistantEntity(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.Tooz.DistantEntity#getLocalSensorId <em>Local Sensor Id</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Local Sensor Id</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.Tooz.DistantEntity#getLocalSensorId() + * @see #getDistantEntity() + * @generated + */ + EAttribute getDistantEntity_LocalSensorId(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.Tooz.DistantEntity#getLocalAgentId <em>Local Agent Id</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Local Agent Id</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.Tooz.DistantEntity#getLocalAgentId() + * @see #getDistantEntity() + * @generated + */ + EAttribute getDistantEntity_LocalAgentId(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.Tooz.DistantEntity#getDistantEntityId <em>Distant Entity Id</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Distant Entity Id</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.Tooz.DistantEntity#getDistantEntityId() + * @see #getDistantEntity() + * @generated + */ + EAttribute getDistantEntity_DistantEntityId(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.Tooz.DistantEntity#getDistance <em>Distance</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Distance</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.Tooz.DistantEntity#getDistance() + * @see #getDistantEntity() + * @generated + */ + EAttribute getDistantEntity_Distance(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.Tooz.DistantEntity#getProximityIndex <em>Proximity Index</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Proximity Index</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.Tooz.DistantEntity#getProximityIndex() + * @see #getDistantEntity() + * @generated + */ + EAttribute getDistantEntity_ProximityIndex(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.Tooz.DistantEntity#getEntityData <em>Entity Data</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Entity Data</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.Tooz.DistantEntity#getEntityData() + * @see #getDistantEntity() + * @generated + */ + EAttribute getDistantEntity_EntityData(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.Tooz.DistantEntity#getTimeStamp <em>Time Stamp</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Time Stamp</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.Tooz.DistantEntity#getTimeStamp() + * @see #getDistantEntity() + * @generated + */ + EAttribute getDistantEntity_TimeStamp(); + + /** + * Returns the factory that creates the instances of the model. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the factory that creates the instances of the model. + * @generated + */ + ToozFactory getToozFactory(); + + /** + * <!-- begin-user-doc --> + * Defines literals for the meta objects that represent + * <ul> + * <li>each class,</li> + * <li>each feature of each class,</li> + * <li>each operation of each class,</li> + * <li>each enum,</li> + * <li>and each data type</li> + * </ul> + * <!-- end-user-doc --> + * @generated + */ + interface Literals { + /** + * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.Tooz.impl.MonitoringTargetImpl <em>Monitoring Target</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.Tooz.impl.MonitoringTargetImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.Tooz.impl.ToozPackageImpl#getMonitoringTarget() + * @generated + */ + EClass MONITORING_TARGET = eINSTANCE.getMonitoringTarget(); + + /** + * The meta object literal for the '<em><b>Target Sensor Id</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute MONITORING_TARGET__TARGET_SENSOR_ID = eINSTANCE.getMonitoringTarget_TargetSensorId(); + + /** + * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.Tooz.impl.DistantEntityImpl <em>Distant Entity</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.Tooz.impl.DistantEntityImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.Tooz.impl.ToozPackageImpl#getDistantEntity() + * @generated + */ + EClass DISTANT_ENTITY = eINSTANCE.getDistantEntity(); + + /** + * The meta object literal for the '<em><b>Local Sensor Id</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute DISTANT_ENTITY__LOCAL_SENSOR_ID = eINSTANCE.getDistantEntity_LocalSensorId(); + + /** + * The meta object literal for the '<em><b>Local Agent Id</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute DISTANT_ENTITY__LOCAL_AGENT_ID = eINSTANCE.getDistantEntity_LocalAgentId(); + + /** + * The meta object literal for the '<em><b>Distant Entity Id</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute DISTANT_ENTITY__DISTANT_ENTITY_ID = eINSTANCE.getDistantEntity_DistantEntityId(); + + /** + * The meta object literal for the '<em><b>Distance</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute DISTANT_ENTITY__DISTANCE = eINSTANCE.getDistantEntity_Distance(); + + /** + * The meta object literal for the '<em><b>Proximity Index</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute DISTANT_ENTITY__PROXIMITY_INDEX = eINSTANCE.getDistantEntity_ProximityIndex(); + + /** + * The meta object literal for the '<em><b>Entity Data</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute DISTANT_ENTITY__ENTITY_DATA = eINSTANCE.getDistantEntity_EntityData(); + + /** + * The meta object literal for the '<em><b>Time Stamp</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute DISTANT_ENTITY__TIME_STAMP = eINSTANCE.getDistantEntity_TimeStamp(); + + } + +} //ToozPackage diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Tooz/impl/DistantEntityImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Tooz/impl/DistantEntityImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..08f71161267c3c744dedd60c74f0c98a638c3d31 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Tooz/impl/DistantEntityImpl.java @@ -0,0 +1,491 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.Tooz.impl; + +import ipos.project.DataModellntegration.iPos_Datamodel.Tooz.DistantEntity; +import ipos.project.DataModellntegration.iPos_Datamodel.Tooz.ToozPackage; + +import java.util.Map; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Distant Entity</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.Tooz.impl.DistantEntityImpl#getLocalSensorId <em>Local Sensor Id</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.Tooz.impl.DistantEntityImpl#getLocalAgentId <em>Local Agent Id</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.Tooz.impl.DistantEntityImpl#getDistantEntityId <em>Distant Entity Id</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.Tooz.impl.DistantEntityImpl#getDistance <em>Distance</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.Tooz.impl.DistantEntityImpl#getProximityIndex <em>Proximity Index</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.Tooz.impl.DistantEntityImpl#getEntityData <em>Entity Data</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.Tooz.impl.DistantEntityImpl#getTimeStamp <em>Time Stamp</em>}</li> + * </ul> + * + * @generated + */ +public class DistantEntityImpl extends MinimalEObjectImpl.Container implements DistantEntity { + /** + * The default value of the '{@link #getLocalSensorId() <em>Local Sensor Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getLocalSensorId() + * @generated + * @ordered + */ + protected static final String LOCAL_SENSOR_ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getLocalSensorId() <em>Local Sensor Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getLocalSensorId() + * @generated + * @ordered + */ + protected String localSensorId = LOCAL_SENSOR_ID_EDEFAULT; + + /** + * The default value of the '{@link #getLocalAgentId() <em>Local Agent Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getLocalAgentId() + * @generated + * @ordered + */ + protected static final String LOCAL_AGENT_ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getLocalAgentId() <em>Local Agent Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getLocalAgentId() + * @generated + * @ordered + */ + protected String localAgentId = LOCAL_AGENT_ID_EDEFAULT; + + /** + * The default value of the '{@link #getDistantEntityId() <em>Distant Entity Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDistantEntityId() + * @generated + * @ordered + */ + protected static final String DISTANT_ENTITY_ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getDistantEntityId() <em>Distant Entity Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDistantEntityId() + * @generated + * @ordered + */ + protected String distantEntityId = DISTANT_ENTITY_ID_EDEFAULT; + + /** + * The default value of the '{@link #getDistance() <em>Distance</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDistance() + * @generated + * @ordered + */ + protected static final double DISTANCE_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getDistance() <em>Distance</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDistance() + * @generated + * @ordered + */ + protected double distance = DISTANCE_EDEFAULT; + + /** + * The default value of the '{@link #getProximityIndex() <em>Proximity Index</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getProximityIndex() + * @generated + * @ordered + */ + protected static final int PROXIMITY_INDEX_EDEFAULT = 0; + + /** + * The cached value of the '{@link #getProximityIndex() <em>Proximity Index</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getProximityIndex() + * @generated + * @ordered + */ + protected int proximityIndex = PROXIMITY_INDEX_EDEFAULT; + + /** + * The cached value of the '{@link #getEntityData() <em>Entity Data</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getEntityData() + * @generated + * @ordered + */ + protected Map<String, String> entityData; + + /** + * The default value of the '{@link #getTimeStamp() <em>Time Stamp</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTimeStamp() + * @generated + * @ordered + */ + protected static final String TIME_STAMP_EDEFAULT = null; + + /** + * The cached value of the '{@link #getTimeStamp() <em>Time Stamp</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTimeStamp() + * @generated + * @ordered + */ + protected String timeStamp = TIME_STAMP_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected DistantEntityImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return ToozPackage.Literals.DISTANT_ENTITY; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getLocalSensorId() { + return localSensorId; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setLocalSensorId(String newLocalSensorId) { + String oldLocalSensorId = localSensorId; + localSensorId = newLocalSensorId; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, ToozPackage.DISTANT_ENTITY__LOCAL_SENSOR_ID, + oldLocalSensorId, localSensorId)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getLocalAgentId() { + return localAgentId; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setLocalAgentId(String newLocalAgentId) { + String oldLocalAgentId = localAgentId; + localAgentId = newLocalAgentId; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, ToozPackage.DISTANT_ENTITY__LOCAL_AGENT_ID, + oldLocalAgentId, localAgentId)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getDistantEntityId() { + return distantEntityId; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setDistantEntityId(String newDistantEntityId) { + String oldDistantEntityId = distantEntityId; + distantEntityId = newDistantEntityId; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, ToozPackage.DISTANT_ENTITY__DISTANT_ENTITY_ID, + oldDistantEntityId, distantEntityId)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public double getDistance() { + return distance; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setDistance(double newDistance) { + double oldDistance = distance; + distance = newDistance; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, ToozPackage.DISTANT_ENTITY__DISTANCE, oldDistance, + distance)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public int getProximityIndex() { + return proximityIndex; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setProximityIndex(int newProximityIndex) { + int oldProximityIndex = proximityIndex; + proximityIndex = newProximityIndex; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, ToozPackage.DISTANT_ENTITY__PROXIMITY_INDEX, + oldProximityIndex, proximityIndex)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Map<String, String> getEntityData() { + return entityData; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setEntityData(Map<String, String> newEntityData) { + Map<String, String> oldEntityData = entityData; + entityData = newEntityData; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, ToozPackage.DISTANT_ENTITY__ENTITY_DATA, + oldEntityData, entityData)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getTimeStamp() { + return timeStamp; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setTimeStamp(String newTimeStamp) { + String oldTimeStamp = timeStamp; + timeStamp = newTimeStamp; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, ToozPackage.DISTANT_ENTITY__TIME_STAMP, oldTimeStamp, + timeStamp)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case ToozPackage.DISTANT_ENTITY__LOCAL_SENSOR_ID: + return getLocalSensorId(); + case ToozPackage.DISTANT_ENTITY__LOCAL_AGENT_ID: + return getLocalAgentId(); + case ToozPackage.DISTANT_ENTITY__DISTANT_ENTITY_ID: + return getDistantEntityId(); + case ToozPackage.DISTANT_ENTITY__DISTANCE: + return getDistance(); + case ToozPackage.DISTANT_ENTITY__PROXIMITY_INDEX: + return getProximityIndex(); + case ToozPackage.DISTANT_ENTITY__ENTITY_DATA: + return getEntityData(); + case ToozPackage.DISTANT_ENTITY__TIME_STAMP: + return getTimeStamp(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case ToozPackage.DISTANT_ENTITY__LOCAL_SENSOR_ID: + setLocalSensorId((String) newValue); + return; + case ToozPackage.DISTANT_ENTITY__LOCAL_AGENT_ID: + setLocalAgentId((String) newValue); + return; + case ToozPackage.DISTANT_ENTITY__DISTANT_ENTITY_ID: + setDistantEntityId((String) newValue); + return; + case ToozPackage.DISTANT_ENTITY__DISTANCE: + setDistance((Double) newValue); + return; + case ToozPackage.DISTANT_ENTITY__PROXIMITY_INDEX: + setProximityIndex((Integer) newValue); + return; + case ToozPackage.DISTANT_ENTITY__ENTITY_DATA: + setEntityData((Map<String, String>) newValue); + return; + case ToozPackage.DISTANT_ENTITY__TIME_STAMP: + setTimeStamp((String) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case ToozPackage.DISTANT_ENTITY__LOCAL_SENSOR_ID: + setLocalSensorId(LOCAL_SENSOR_ID_EDEFAULT); + return; + case ToozPackage.DISTANT_ENTITY__LOCAL_AGENT_ID: + setLocalAgentId(LOCAL_AGENT_ID_EDEFAULT); + return; + case ToozPackage.DISTANT_ENTITY__DISTANT_ENTITY_ID: + setDistantEntityId(DISTANT_ENTITY_ID_EDEFAULT); + return; + case ToozPackage.DISTANT_ENTITY__DISTANCE: + setDistance(DISTANCE_EDEFAULT); + return; + case ToozPackage.DISTANT_ENTITY__PROXIMITY_INDEX: + setProximityIndex(PROXIMITY_INDEX_EDEFAULT); + return; + case ToozPackage.DISTANT_ENTITY__ENTITY_DATA: + setEntityData((Map<String, String>) null); + return; + case ToozPackage.DISTANT_ENTITY__TIME_STAMP: + setTimeStamp(TIME_STAMP_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case ToozPackage.DISTANT_ENTITY__LOCAL_SENSOR_ID: + return LOCAL_SENSOR_ID_EDEFAULT == null ? localSensorId != null + : !LOCAL_SENSOR_ID_EDEFAULT.equals(localSensorId); + case ToozPackage.DISTANT_ENTITY__LOCAL_AGENT_ID: + return LOCAL_AGENT_ID_EDEFAULT == null ? localAgentId != null + : !LOCAL_AGENT_ID_EDEFAULT.equals(localAgentId); + case ToozPackage.DISTANT_ENTITY__DISTANT_ENTITY_ID: + return DISTANT_ENTITY_ID_EDEFAULT == null ? distantEntityId != null + : !DISTANT_ENTITY_ID_EDEFAULT.equals(distantEntityId); + case ToozPackage.DISTANT_ENTITY__DISTANCE: + return distance != DISTANCE_EDEFAULT; + case ToozPackage.DISTANT_ENTITY__PROXIMITY_INDEX: + return proximityIndex != PROXIMITY_INDEX_EDEFAULT; + case ToozPackage.DISTANT_ENTITY__ENTITY_DATA: + return entityData != null; + case ToozPackage.DISTANT_ENTITY__TIME_STAMP: + return TIME_STAMP_EDEFAULT == null ? timeStamp != null : !TIME_STAMP_EDEFAULT.equals(timeStamp); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (localSensorId: "); + result.append(localSensorId); + result.append(", localAgentId: "); + result.append(localAgentId); + result.append(", distantEntityId: "); + result.append(distantEntityId); + result.append(", distance: "); + result.append(distance); + result.append(", proximityIndex: "); + result.append(proximityIndex); + result.append(", entityData: "); + result.append(entityData); + result.append(", timeStamp: "); + result.append(timeStamp); + result.append(')'); + return result.toString(); + } + +} //DistantEntityImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Tooz/impl/MonitoringTargetImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Tooz/impl/MonitoringTargetImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..26eaa0e7ec64259b5b032a12eb09d2aff82b2926 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Tooz/impl/MonitoringTargetImpl.java @@ -0,0 +1,166 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.Tooz.impl; + +import ipos.project.DataModellntegration.iPos_Datamodel.Tooz.MonitoringTarget; +import ipos.project.DataModellntegration.iPos_Datamodel.Tooz.ToozPackage; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Monitoring Target</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.Tooz.impl.MonitoringTargetImpl#getTargetSensorId <em>Target Sensor Id</em>}</li> + * </ul> + * + * @generated + */ +public class MonitoringTargetImpl extends MinimalEObjectImpl.Container implements MonitoringTarget { + /** + * The default value of the '{@link #getTargetSensorId() <em>Target Sensor Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTargetSensorId() + * @generated + * @ordered + */ + protected static final String TARGET_SENSOR_ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getTargetSensorId() <em>Target Sensor Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTargetSensorId() + * @generated + * @ordered + */ + protected String targetSensorId = TARGET_SENSOR_ID_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected MonitoringTargetImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return ToozPackage.Literals.MONITORING_TARGET; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getTargetSensorId() { + return targetSensorId; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setTargetSensorId(String newTargetSensorId) { + String oldTargetSensorId = targetSensorId; + targetSensorId = newTargetSensorId; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, ToozPackage.MONITORING_TARGET__TARGET_SENSOR_ID, + oldTargetSensorId, targetSensorId)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case ToozPackage.MONITORING_TARGET__TARGET_SENSOR_ID: + return getTargetSensorId(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case ToozPackage.MONITORING_TARGET__TARGET_SENSOR_ID: + setTargetSensorId((String) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case ToozPackage.MONITORING_TARGET__TARGET_SENSOR_ID: + setTargetSensorId(TARGET_SENSOR_ID_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case ToozPackage.MONITORING_TARGET__TARGET_SENSOR_ID: + return TARGET_SENSOR_ID_EDEFAULT == null ? targetSensorId != null + : !TARGET_SENSOR_ID_EDEFAULT.equals(targetSensorId); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (targetSensorId: "); + result.append(targetSensorId); + result.append(')'); + return result.toString(); + } + +} //MonitoringTargetImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Tooz/impl/ToozFactoryImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Tooz/impl/ToozFactoryImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..7d98372bb0f29bfdc007eee69b729e8493510750 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Tooz/impl/ToozFactoryImpl.java @@ -0,0 +1,107 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.Tooz.impl; + +import ipos.project.DataModellntegration.iPos_Datamodel.Tooz.*; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EPackage; + +import org.eclipse.emf.ecore.impl.EFactoryImpl; + +import org.eclipse.emf.ecore.plugin.EcorePlugin; + +/** + * <!-- begin-user-doc --> + * An implementation of the model <b>Factory</b>. + * <!-- end-user-doc --> + * @generated + */ +public class ToozFactoryImpl extends EFactoryImpl implements ToozFactory { + /** + * Creates the default factory implementation. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static ToozFactory init() { + try { + ToozFactory theToozFactory = (ToozFactory) EPackage.Registry.INSTANCE.getEFactory(ToozPackage.eNS_URI); + if (theToozFactory != null) { + return theToozFactory; + } + } catch (Exception exception) { + EcorePlugin.INSTANCE.log(exception); + } + return new ToozFactoryImpl(); + } + + /** + * Creates an instance of the factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public ToozFactoryImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EObject create(EClass eClass) { + switch (eClass.getClassifierID()) { + case ToozPackage.MONITORING_TARGET: + return createMonitoringTarget(); + case ToozPackage.DISTANT_ENTITY: + return createDistantEntity(); + default: + throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); + } + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public MonitoringTarget createMonitoringTarget() { + MonitoringTargetImpl monitoringTarget = new MonitoringTargetImpl(); + return monitoringTarget; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public DistantEntity createDistantEntity() { + DistantEntityImpl distantEntity = new DistantEntityImpl(); + return distantEntity; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public ToozPackage getToozPackage() { + return (ToozPackage) getEPackage(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @deprecated + * @generated + */ + @Deprecated + public static ToozPackage getPackage() { + return ToozPackage.eINSTANCE; + } + +} //ToozFactoryImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Tooz/impl/ToozPackageImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Tooz/impl/ToozPackageImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..ea2bed7cffc2a1b77ddb502230b60f98c0fde590 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Tooz/impl/ToozPackageImpl.java @@ -0,0 +1,356 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.Tooz.impl; + +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage; + +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosDevKitPackageImpl; + +import ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage; + +import ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.OFBizPackage; + +import ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl.OFBizPackageImpl; + +import ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPackage; +import ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMPackageImpl; +import ipos.project.DataModellntegration.iPos_Datamodel.Tooz.DistantEntity; +import ipos.project.DataModellntegration.iPos_Datamodel.Tooz.MonitoringTarget; +import ipos.project.DataModellntegration.iPos_Datamodel.Tooz.ToozFactory; +import ipos.project.DataModellntegration.iPos_Datamodel.Tooz.ToozPackage; + +import ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.VDA5050Package; +import ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl.VDA5050PackageImpl; +import ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl; + +import org.eclipse.emf.ecore.EAttribute; +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EGenericType; +import org.eclipse.emf.ecore.EPackage; + +import org.eclipse.emf.ecore.impl.EPackageImpl; + +import org.eclipse.emf.ecore.xml.type.XMLTypePackage; + +/** + * <!-- begin-user-doc --> + * An implementation of the model <b>Package</b>. + * <!-- end-user-doc --> + * @generated + */ +public class ToozPackageImpl extends EPackageImpl implements ToozPackage { + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass monitoringTargetEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass distantEntityEClass = 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 ipos.project.DataModellntegration.iPos_Datamodel.Tooz.ToozPackage#eNS_URI + * @see #init() + * @generated + */ + private ToozPackageImpl() { + super(eNS_URI, ToozFactory.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 ToozPackage#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 ToozPackage init() { + if (isInited) + return (ToozPackage) EPackage.Registry.INSTANCE.getEPackage(ToozPackage.eNS_URI); + + // Obtain or create and register package + Object registeredToozPackage = EPackage.Registry.INSTANCE.get(eNS_URI); + ToozPackageImpl theToozPackage = registeredToozPackage instanceof ToozPackageImpl + ? (ToozPackageImpl) registeredToozPackage + : new ToozPackageImpl(); + + isInited = true; + + // Initialize simple dependencies + XMLTypePackage.eINSTANCE.eClass(); + + // Obtain or create and register interdependencies + Object registeredPackage = EPackage.Registry.INSTANCE.getEPackage(IPos_DatamodelPackage.eNS_URI); + IPos_DatamodelPackageImpl theIPos_DatamodelPackage = (IPos_DatamodelPackageImpl) (registeredPackage instanceof IPos_DatamodelPackageImpl + ? registeredPackage + : IPos_DatamodelPackage.eINSTANCE); + registeredPackage = EPackage.Registry.INSTANCE.getEPackage(OFBizPackage.eNS_URI); + OFBizPackageImpl theOFBizPackage = (OFBizPackageImpl) (registeredPackage instanceof OFBizPackageImpl + ? registeredPackage + : OFBizPackage.eINSTANCE); + registeredPackage = EPackage.Registry.INSTANCE.getEPackage(IPosDevKitPackage.eNS_URI); + IPosDevKitPackageImpl theIPosDevKitPackage = (IPosDevKitPackageImpl) (registeredPackage instanceof IPosDevKitPackageImpl + ? registeredPackage + : IPosDevKitPackage.eINSTANCE); + registeredPackage = EPackage.Registry.INSTANCE.getEPackage(VDA5050Package.eNS_URI); + VDA5050PackageImpl theVDA5050Package = (VDA5050PackageImpl) (registeredPackage instanceof VDA5050PackageImpl + ? registeredPackage + : VDA5050Package.eINSTANCE); + registeredPackage = EPackage.Registry.INSTANCE.getEPackage(OSMPackage.eNS_URI); + OSMPackageImpl theOSMPackage = (OSMPackageImpl) (registeredPackage instanceof OSMPackageImpl ? registeredPackage + : OSMPackage.eINSTANCE); + + // Create package meta-data objects + theToozPackage.createPackageContents(); + theIPos_DatamodelPackage.createPackageContents(); + theOFBizPackage.createPackageContents(); + theIPosDevKitPackage.createPackageContents(); + theVDA5050Package.createPackageContents(); + theOSMPackage.createPackageContents(); + + // Initialize created meta-data + theToozPackage.initializePackageContents(); + theIPos_DatamodelPackage.initializePackageContents(); + theOFBizPackage.initializePackageContents(); + theIPosDevKitPackage.initializePackageContents(); + theVDA5050Package.initializePackageContents(); + theOSMPackage.initializePackageContents(); + + // Mark meta-data to indicate it can't be changed + theToozPackage.freeze(); + + // Update the registry and return the package + EPackage.Registry.INSTANCE.put(ToozPackage.eNS_URI, theToozPackage); + return theToozPackage; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getMonitoringTarget() { + return monitoringTargetEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getMonitoringTarget_TargetSensorId() { + return (EAttribute) monitoringTargetEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getDistantEntity() { + return distantEntityEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getDistantEntity_LocalSensorId() { + return (EAttribute) distantEntityEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getDistantEntity_LocalAgentId() { + return (EAttribute) distantEntityEClass.getEStructuralFeatures().get(1); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getDistantEntity_DistantEntityId() { + return (EAttribute) distantEntityEClass.getEStructuralFeatures().get(2); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getDistantEntity_Distance() { + return (EAttribute) distantEntityEClass.getEStructuralFeatures().get(3); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getDistantEntity_ProximityIndex() { + return (EAttribute) distantEntityEClass.getEStructuralFeatures().get(4); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getDistantEntity_EntityData() { + return (EAttribute) distantEntityEClass.getEStructuralFeatures().get(5); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getDistantEntity_TimeStamp() { + return (EAttribute) distantEntityEClass.getEStructuralFeatures().get(6); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public ToozFactory getToozFactory() { + return (ToozFactory) 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 + monitoringTargetEClass = createEClass(MONITORING_TARGET); + createEAttribute(monitoringTargetEClass, MONITORING_TARGET__TARGET_SENSOR_ID); + + distantEntityEClass = createEClass(DISTANT_ENTITY); + createEAttribute(distantEntityEClass, DISTANT_ENTITY__LOCAL_SENSOR_ID); + createEAttribute(distantEntityEClass, DISTANT_ENTITY__LOCAL_AGENT_ID); + createEAttribute(distantEntityEClass, DISTANT_ENTITY__DISTANT_ENTITY_ID); + createEAttribute(distantEntityEClass, DISTANT_ENTITY__DISTANCE); + createEAttribute(distantEntityEClass, DISTANT_ENTITY__PROXIMITY_INDEX); + createEAttribute(distantEntityEClass, DISTANT_ENTITY__ENTITY_DATA); + createEAttribute(distantEntityEClass, DISTANT_ENTITY__TIME_STAMP); + } + + /** + * <!-- 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); + + // Obtain other dependent packages + XMLTypePackage theXMLTypePackage = (XMLTypePackage) EPackage.Registry.INSTANCE + .getEPackage(XMLTypePackage.eNS_URI); + + // Create type parameters + + // Set bounds for type parameters + + // Add supertypes to classes + + // Initialize classes, features, and operations; add parameters + initEClass(monitoringTargetEClass, MonitoringTarget.class, "MonitoringTarget", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getMonitoringTarget_TargetSensorId(), ecorePackage.getEString(), "targetSensorId", null, 0, 1, + MonitoringTarget.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + + initEClass(distantEntityEClass, DistantEntity.class, "DistantEntity", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getDistantEntity_LocalSensorId(), ecorePackage.getEString(), "localSensorId", null, 0, 1, + DistantEntity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + initEAttribute(getDistantEntity_LocalAgentId(), ecorePackage.getEString(), "localAgentId", null, 0, 1, + DistantEntity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + initEAttribute(getDistantEntity_DistantEntityId(), ecorePackage.getEString(), "distantEntityId", null, 0, 1, + DistantEntity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + initEAttribute(getDistantEntity_Distance(), theXMLTypePackage.getDouble(), "distance", null, 0, 1, + DistantEntity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + initEAttribute(getDistantEntity_ProximityIndex(), theXMLTypePackage.getInt(), "proximityIndex", null, 0, 1, + DistantEntity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + EGenericType g1 = createEGenericType(ecorePackage.getEMap()); + EGenericType g2 = createEGenericType(ecorePackage.getEString()); + g1.getETypeArguments().add(g2); + g2 = createEGenericType(ecorePackage.getEString()); + g1.getETypeArguments().add(g2); + initEAttribute(getDistantEntity_EntityData(), g1, "entityData", null, 0, 1, DistantEntity.class, IS_TRANSIENT, + !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getDistantEntity_TimeStamp(), theXMLTypePackage.getString(), "timeStamp", null, 0, 1, + DistantEntity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + } + +} //ToozPackageImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Tooz/util/ToozAdapterFactory.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Tooz/util/ToozAdapterFactory.java new file mode 100644 index 0000000000000000000000000000000000000000..7ae63c55670acf2dbede9bebf65e473649351290 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Tooz/util/ToozAdapterFactory.java @@ -0,0 +1,138 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.Tooz.util; + +import ipos.project.DataModellntegration.iPos_Datamodel.Tooz.*; + +import org.eclipse.emf.common.notify.Adapter; +import org.eclipse.emf.common.notify.Notifier; + +import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * The <b>Adapter Factory</b> for the model. + * It provides an adapter <code>createXXX</code> method for each class of the model. + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.Tooz.ToozPackage + * @generated + */ +public class ToozAdapterFactory extends AdapterFactoryImpl { + /** + * The cached model package. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected static ToozPackage modelPackage; + + /** + * Creates an instance of the adapter factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public ToozAdapterFactory() { + if (modelPackage == null) { + modelPackage = ToozPackage.eINSTANCE; + } + } + + /** + * Returns whether this factory is applicable for the type of the object. + * <!-- begin-user-doc --> + * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model. + * <!-- end-user-doc --> + * @return whether this factory is applicable for the type of the object. + * @generated + */ + @Override + public boolean isFactoryForType(Object object) { + if (object == modelPackage) { + return true; + } + if (object instanceof EObject) { + return ((EObject) object).eClass().getEPackage() == modelPackage; + } + return false; + } + + /** + * The switch that delegates to the <code>createXXX</code> methods. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected ToozSwitch<Adapter> modelSwitch = new ToozSwitch<Adapter>() { + @Override + public Adapter caseMonitoringTarget(MonitoringTarget object) { + return createMonitoringTargetAdapter(); + } + + @Override + public Adapter caseDistantEntity(DistantEntity object) { + return createDistantEntityAdapter(); + } + + @Override + public Adapter defaultCase(EObject object) { + return createEObjectAdapter(); + } + }; + + /** + * Creates an adapter for the <code>target</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param target the object to adapt. + * @return the adapter for the <code>target</code>. + * @generated + */ + @Override + public Adapter createAdapter(Notifier target) { + return modelSwitch.doSwitch((EObject) target); + } + + /** + * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.Tooz.MonitoringTarget <em>Monitoring Target</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see ipos.project.DataModellntegration.iPos_Datamodel.Tooz.MonitoringTarget + * @generated + */ + public Adapter createMonitoringTargetAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.Tooz.DistantEntity <em>Distant Entity</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see ipos.project.DataModellntegration.iPos_Datamodel.Tooz.DistantEntity + * @generated + */ + public Adapter createDistantEntityAdapter() { + return null; + } + + /** + * Creates a new adapter for the default case. + * <!-- begin-user-doc --> + * This default implementation returns null. + * <!-- end-user-doc --> + * @return the new adapter. + * @generated + */ + public Adapter createEObjectAdapter() { + return null; + } + +} //ToozAdapterFactory diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Tooz/util/ToozSwitch.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Tooz/util/ToozSwitch.java new file mode 100644 index 0000000000000000000000000000000000000000..be97d77ff11b3c0fa0eafd7769c1fa217c2e694f --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Tooz/util/ToozSwitch.java @@ -0,0 +1,134 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.Tooz.util; + +import ipos.project.DataModellntegration.iPos_Datamodel.Tooz.*; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EPackage; + +import org.eclipse.emf.ecore.util.Switch; + +/** + * <!-- begin-user-doc --> + * The <b>Switch</b> for the model's inheritance hierarchy. + * It supports the call {@link #doSwitch(EObject) doSwitch(object)} + * to invoke the <code>caseXXX</code> method for each class of the model, + * starting with the actual class of the object + * and proceeding up the inheritance hierarchy + * until a non-null result is returned, + * which is the result of the switch. + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.Tooz.ToozPackage + * @generated + */ +public class ToozSwitch<T> extends Switch<T> { + /** + * The cached model package + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected static ToozPackage modelPackage; + + /** + * Creates an instance of the switch. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public ToozSwitch() { + if (modelPackage == null) { + modelPackage = ToozPackage.eINSTANCE; + } + } + + /** + * Checks whether this is a switch for the given package. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param ePackage the package in question. + * @return whether this is a switch for the given package. + * @generated + */ + @Override + protected boolean isSwitchFor(EPackage ePackage) { + return ePackage == modelPackage; + } + + /** + * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the first non-null result returned by a <code>caseXXX</code> call. + * @generated + */ + @Override + protected T doSwitch(int classifierID, EObject theEObject) { + switch (classifierID) { + case ToozPackage.MONITORING_TARGET: { + MonitoringTarget monitoringTarget = (MonitoringTarget) theEObject; + T result = caseMonitoringTarget(monitoringTarget); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case ToozPackage.DISTANT_ENTITY: { + DistantEntity distantEntity = (DistantEntity) theEObject; + T result = caseDistantEntity(distantEntity); + if (result == null) + result = defaultCase(theEObject); + return result; + } + default: + return defaultCase(theEObject); + } + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Monitoring Target</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Monitoring Target</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseMonitoringTarget(MonitoringTarget object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Distant Entity</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Distant Entity</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseDistantEntity(DistantEntity object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>EObject</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch, but this is the last case anyway. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>EObject</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) + * @generated + */ + @Override + public T defaultCase(EObject object) { + return null; + } + +} //ToozSwitch diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/VDA5050/AgvPosition.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/VDA5050/AgvPosition.java new file mode 100644 index 0000000000000000000000000000000000000000..b8058dc2c4dc2b734f7d533452bc28c53c888c9e --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/VDA5050/AgvPosition.java @@ -0,0 +1,115 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.VDA5050; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Agv Position</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvPosition#getX <em>X</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvPosition#getY <em>Y</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvPosition#getTheta <em>Theta</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvPosition#getMapId <em>Map Id</em>}</li> + * </ul> + * + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.VDA5050Package#getAgvPosition() + * @model + * @generated + */ +public interface AgvPosition extends EObject { + /** + * Returns the value of the '<em><b>X</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>X</em>' attribute. + * @see #setX(float) + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.VDA5050Package#getAgvPosition_X() + * @model + * @generated + */ + float getX(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvPosition#getX <em>X</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>X</em>' attribute. + * @see #getX() + * @generated + */ + void setX(float value); + + /** + * Returns the value of the '<em><b>Y</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Y</em>' attribute. + * @see #setY(float) + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.VDA5050Package#getAgvPosition_Y() + * @model + * @generated + */ + float getY(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvPosition#getY <em>Y</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Y</em>' attribute. + * @see #getY() + * @generated + */ + void setY(float value); + + /** + * Returns the value of the '<em><b>Theta</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Theta</em>' attribute. + * @see #setTheta(float) + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.VDA5050Package#getAgvPosition_Theta() + * @model + * @generated + */ + float getTheta(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvPosition#getTheta <em>Theta</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Theta</em>' attribute. + * @see #getTheta() + * @generated + */ + void setTheta(float value); + + /** + * Returns the value of the '<em><b>Map Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Map Id</em>' attribute. + * @see #setMapId(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.VDA5050Package#getAgvPosition_MapId() + * @model + * @generated + */ + String getMapId(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvPosition#getMapId <em>Map Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Map Id</em>' attribute. + * @see #getMapId() + * @generated + */ + void setMapId(String value); + +} // AgvPosition diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/VDA5050/AgvState.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/VDA5050/AgvState.java new file mode 100644 index 0000000000000000000000000000000000000000..d8ae2e25688d9b7b36f209ff9e54e0d5b1d98086 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/VDA5050/AgvState.java @@ -0,0 +1,189 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.VDA5050; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Agv State</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvState#getTimeStamp <em>Time Stamp</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvState#getSerialNumber <em>Serial Number</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvState#getLastNodeId <em>Last Node Id</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvState#getBatteryState <em>Battery State</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvState#getErrors <em>Errors</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvState#getAgvposition <em>Agvposition</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvState#getLoads <em>Loads</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvState#getManufacturer <em>Manufacturer</em>}</li> + * </ul> + * + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.VDA5050Package#getAgvState() + * @model + * @generated + */ +public interface AgvState extends EObject { + /** + * Returns the value of the '<em><b>Time Stamp</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Time Stamp</em>' attribute. + * @see #setTimeStamp(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.VDA5050Package#getAgvState_TimeStamp() + * @model + * @generated + */ + String getTimeStamp(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvState#getTimeStamp <em>Time Stamp</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Time Stamp</em>' attribute. + * @see #getTimeStamp() + * @generated + */ + void setTimeStamp(String value); + + /** + * Returns the value of the '<em><b>Serial Number</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Serial Number</em>' attribute. + * @see #setSerialNumber(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.VDA5050Package#getAgvState_SerialNumber() + * @model + * @generated + */ + String getSerialNumber(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvState#getSerialNumber <em>Serial Number</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Serial Number</em>' attribute. + * @see #getSerialNumber() + * @generated + */ + void setSerialNumber(String value); + + /** + * Returns the value of the '<em><b>Last Node Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Last Node Id</em>' attribute. + * @see #setLastNodeId(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.VDA5050Package#getAgvState_LastNodeId() + * @model + * @generated + */ + String getLastNodeId(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvState#getLastNodeId <em>Last Node Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Last Node Id</em>' attribute. + * @see #getLastNodeId() + * @generated + */ + void setLastNodeId(String value); + + /** + * Returns the value of the '<em><b>Battery State</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Battery State</em>' reference. + * @see #setBatteryState(BatteryState) + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.VDA5050Package#getAgvState_BatteryState() + * @model + * @generated + */ + BatteryState getBatteryState(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvState#getBatteryState <em>Battery State</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Battery State</em>' reference. + * @see #getBatteryState() + * @generated + */ + void setBatteryState(BatteryState value); + + /** + * Returns the value of the '<em><b>Errors</b></em>' reference list. + * The list contents are of type {@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.Error}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Errors</em>' reference list. + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.VDA5050Package#getAgvState_Errors() + * @model + * @generated + */ + EList<ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.Error> getErrors(); + + /** + * Returns the value of the '<em><b>Agvposition</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Agvposition</em>' reference. + * @see #setAgvposition(AgvPosition) + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.VDA5050Package#getAgvState_Agvposition() + * @model + * @generated + */ + AgvPosition getAgvposition(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvState#getAgvposition <em>Agvposition</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Agvposition</em>' reference. + * @see #getAgvposition() + * @generated + */ + void setAgvposition(AgvPosition value); + + /** + * Returns the value of the '<em><b>Loads</b></em>' reference list. + * The list contents are of type {@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.Load}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Loads</em>' reference list. + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.VDA5050Package#getAgvState_Loads() + * @model + * @generated + */ + EList<Load> getLoads(); + + /** + * Returns the value of the '<em><b>Manufacturer</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Manufacturer</em>' attribute. + * @see #setManufacturer(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.VDA5050Package#getAgvState_Manufacturer() + * @model + * @generated + */ + String getManufacturer(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvState#getManufacturer <em>Manufacturer</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Manufacturer</em>' attribute. + * @see #getManufacturer() + * @generated + */ + void setManufacturer(String value); + +} // AgvState diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/VDA5050/BatteryState.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/VDA5050/BatteryState.java new file mode 100644 index 0000000000000000000000000000000000000000..1cff3f384decc5b971af759ca384eeacf4ef3d03 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/VDA5050/BatteryState.java @@ -0,0 +1,46 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.VDA5050; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Battery State</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.BatteryState#getBatteryCharge <em>Battery Charge</em>}</li> + * </ul> + * + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.VDA5050Package#getBatteryState() + * @model + * @generated + */ +public interface BatteryState extends EObject { + /** + * Returns the value of the '<em><b>Battery Charge</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Battery Charge</em>' attribute. + * @see #setBatteryCharge(float) + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.VDA5050Package#getBatteryState_BatteryCharge() + * @model + * @generated + */ + float getBatteryCharge(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.BatteryState#getBatteryCharge <em>Battery Charge</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Battery Charge</em>' attribute. + * @see #getBatteryCharge() + * @generated + */ + void setBatteryCharge(float value); + +} // BatteryState diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/VDA5050/Error.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/VDA5050/Error.java new file mode 100644 index 0000000000000000000000000000000000000000..f64088e4219e642a24d3154abe42d2d20f280400 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/VDA5050/Error.java @@ -0,0 +1,46 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.VDA5050; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Error</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.Error#getErrorType <em>Error Type</em>}</li> + * </ul> + * + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.VDA5050Package#getError() + * @model + * @generated + */ +public interface Error extends EObject { + /** + * Returns the value of the '<em><b>Error Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Error Type</em>' attribute. + * @see #setErrorType(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.VDA5050Package#getError_ErrorType() + * @model + * @generated + */ + String getErrorType(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.Error#getErrorType <em>Error Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Error Type</em>' attribute. + * @see #getErrorType() + * @generated + */ + void setErrorType(String value); + +} // Error diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/VDA5050/Load.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/VDA5050/Load.java new file mode 100644 index 0000000000000000000000000000000000000000..2f5c1dd82703e97bcadce1ef2638a408041ba1f0 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/VDA5050/Load.java @@ -0,0 +1,46 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.VDA5050; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Load</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.Load#getLoadId <em>Load Id</em>}</li> + * </ul> + * + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.VDA5050Package#getLoad() + * @model + * @generated + */ +public interface Load extends EObject { + /** + * Returns the value of the '<em><b>Load Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Load Id</em>' attribute. + * @see #setLoadId(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.VDA5050Package#getLoad_LoadId() + * @model + * @generated + */ + String getLoadId(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.Load#getLoadId <em>Load Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Load Id</em>' attribute. + * @see #getLoadId() + * @generated + */ + void setLoadId(String value); + +} // Load diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/VDA5050/VDA5050Factory.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/VDA5050/VDA5050Factory.java new file mode 100644 index 0000000000000000000000000000000000000000..eaca1b8e2dca0743acbe571922f75834e1c0211b --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/VDA5050/VDA5050Factory.java @@ -0,0 +1,78 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.VDA5050; + +import org.eclipse.emf.ecore.EFactory; + +/** + * <!-- begin-user-doc --> + * The <b>Factory</b> for the model. + * It provides a create method for each non-abstract class of the model. + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.VDA5050Package + * @generated + */ +public interface VDA5050Factory extends EFactory { + /** + * The singleton instance of the factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + VDA5050Factory eINSTANCE = ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl.VDA5050FactoryImpl.init(); + + /** + * Returns a new object of class '<em>Agv State</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Agv State</em>'. + * @generated + */ + AgvState createAgvState(); + + /** + * Returns a new object of class '<em>Battery State</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Battery State</em>'. + * @generated + */ + BatteryState createBatteryState(); + + /** + * Returns a new object of class '<em>Error</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Error</em>'. + * @generated + */ + Error createError(); + + /** + * Returns a new object of class '<em>Agv Position</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Agv Position</em>'. + * @generated + */ + AgvPosition createAgvPosition(); + + /** + * Returns a new object of class '<em>Load</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Load</em>'. + * @generated + */ + Load createLoad(); + + /** + * Returns the package supported by this factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the package supported by this factory. + * @generated + */ + VDA5050Package getVDA5050Package(); + +} //VDA5050Factory diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/VDA5050/VDA5050Package.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/VDA5050/VDA5050Package.java new file mode 100644 index 0000000000000000000000000000000000000000..3dcb767f8cd9098eb6eff1a7ac2bdc3a8e82c9bf --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/VDA5050/VDA5050Package.java @@ -0,0 +1,725 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.VDA5050; + +import org.eclipse.emf.ecore.EAttribute; +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EPackage; +import org.eclipse.emf.ecore.EReference; + +/** + * <!-- begin-user-doc --> + * The <b>Package</b> for the model. + * It contains accessors for the meta objects to represent + * <ul> + * <li>each class,</li> + * <li>each feature of each class,</li> + * <li>each operation of each class,</li> + * <li>each enum,</li> + * <li>and each data type</li> + * </ul> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.VDA5050Factory + * @model kind="package" + * @generated + */ +public interface VDA5050Package extends EPackage { + /** + * The package name. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + String eNAME = "VDA5050"; + + /** + * The package namespace URI. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + String eNS_URI = "vda5050"; + + /** + * The package namespace name. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + String eNS_PREFIX = "vda5050"; + + /** + * The singleton instance of the package. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + VDA5050Package eINSTANCE = ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl.VDA5050PackageImpl.init(); + + /** + * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl.AgvStateImpl <em>Agv State</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl.AgvStateImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl.VDA5050PackageImpl#getAgvState() + * @generated + */ + int AGV_STATE = 0; + + /** + * The feature id for the '<em><b>Time Stamp</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int AGV_STATE__TIME_STAMP = 0; + + /** + * The feature id for the '<em><b>Serial Number</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int AGV_STATE__SERIAL_NUMBER = 1; + + /** + * The feature id for the '<em><b>Last Node Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int AGV_STATE__LAST_NODE_ID = 2; + + /** + * The feature id for the '<em><b>Battery State</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int AGV_STATE__BATTERY_STATE = 3; + + /** + * The feature id for the '<em><b>Errors</b></em>' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int AGV_STATE__ERRORS = 4; + + /** + * The feature id for the '<em><b>Agvposition</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int AGV_STATE__AGVPOSITION = 5; + + /** + * The feature id for the '<em><b>Loads</b></em>' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int AGV_STATE__LOADS = 6; + + /** + * The feature id for the '<em><b>Manufacturer</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int AGV_STATE__MANUFACTURER = 7; + + /** + * The number of structural features of the '<em>Agv State</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int AGV_STATE_FEATURE_COUNT = 8; + + /** + * The number of operations of the '<em>Agv State</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int AGV_STATE_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl.BatteryStateImpl <em>Battery State</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl.BatteryStateImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl.VDA5050PackageImpl#getBatteryState() + * @generated + */ + int BATTERY_STATE = 1; + + /** + * The feature id for the '<em><b>Battery Charge</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int BATTERY_STATE__BATTERY_CHARGE = 0; + + /** + * The number of structural features of the '<em>Battery State</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int BATTERY_STATE_FEATURE_COUNT = 1; + + /** + * The number of operations of the '<em>Battery State</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int BATTERY_STATE_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl.ErrorImpl <em>Error</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl.ErrorImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl.VDA5050PackageImpl#getError() + * @generated + */ + int ERROR = 2; + + /** + * The feature id for the '<em><b>Error Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ERROR__ERROR_TYPE = 0; + + /** + * The number of structural features of the '<em>Error</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ERROR_FEATURE_COUNT = 1; + + /** + * The number of operations of the '<em>Error</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ERROR_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl.AgvPositionImpl <em>Agv Position</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl.AgvPositionImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl.VDA5050PackageImpl#getAgvPosition() + * @generated + */ + int AGV_POSITION = 3; + + /** + * The feature id for the '<em><b>X</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int AGV_POSITION__X = 0; + + /** + * The feature id for the '<em><b>Y</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int AGV_POSITION__Y = 1; + + /** + * The feature id for the '<em><b>Theta</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int AGV_POSITION__THETA = 2; + + /** + * The feature id for the '<em><b>Map Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int AGV_POSITION__MAP_ID = 3; + + /** + * The number of structural features of the '<em>Agv Position</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int AGV_POSITION_FEATURE_COUNT = 4; + + /** + * The number of operations of the '<em>Agv Position</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int AGV_POSITION_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl.LoadImpl <em>Load</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl.LoadImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl.VDA5050PackageImpl#getLoad() + * @generated + */ + int LOAD = 4; + + /** + * The feature id for the '<em><b>Load Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int LOAD__LOAD_ID = 0; + + /** + * The number of structural features of the '<em>Load</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int LOAD_FEATURE_COUNT = 1; + + /** + * The number of operations of the '<em>Load</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int LOAD_OPERATION_COUNT = 0; + + /** + * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvState <em>Agv State</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Agv State</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvState + * @generated + */ + EClass getAgvState(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvState#getTimeStamp <em>Time Stamp</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Time Stamp</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvState#getTimeStamp() + * @see #getAgvState() + * @generated + */ + EAttribute getAgvState_TimeStamp(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvState#getSerialNumber <em>Serial Number</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Serial Number</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvState#getSerialNumber() + * @see #getAgvState() + * @generated + */ + EAttribute getAgvState_SerialNumber(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvState#getLastNodeId <em>Last Node Id</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Last Node Id</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvState#getLastNodeId() + * @see #getAgvState() + * @generated + */ + EAttribute getAgvState_LastNodeId(); + + /** + * Returns the meta object for the reference '{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvState#getBatteryState <em>Battery State</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference '<em>Battery State</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvState#getBatteryState() + * @see #getAgvState() + * @generated + */ + EReference getAgvState_BatteryState(); + + /** + * Returns the meta object for the reference list '{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvState#getErrors <em>Errors</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference list '<em>Errors</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvState#getErrors() + * @see #getAgvState() + * @generated + */ + EReference getAgvState_Errors(); + + /** + * Returns the meta object for the reference '{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvState#getAgvposition <em>Agvposition</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference '<em>Agvposition</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvState#getAgvposition() + * @see #getAgvState() + * @generated + */ + EReference getAgvState_Agvposition(); + + /** + * Returns the meta object for the reference list '{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvState#getLoads <em>Loads</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference list '<em>Loads</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvState#getLoads() + * @see #getAgvState() + * @generated + */ + EReference getAgvState_Loads(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvState#getManufacturer <em>Manufacturer</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Manufacturer</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvState#getManufacturer() + * @see #getAgvState() + * @generated + */ + EAttribute getAgvState_Manufacturer(); + + /** + * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.BatteryState <em>Battery State</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Battery State</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.BatteryState + * @generated + */ + EClass getBatteryState(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.BatteryState#getBatteryCharge <em>Battery Charge</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Battery Charge</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.BatteryState#getBatteryCharge() + * @see #getBatteryState() + * @generated + */ + EAttribute getBatteryState_BatteryCharge(); + + /** + * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.Error <em>Error</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Error</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.Error + * @generated + */ + EClass getError(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.Error#getErrorType <em>Error Type</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Error Type</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.Error#getErrorType() + * @see #getError() + * @generated + */ + EAttribute getError_ErrorType(); + + /** + * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvPosition <em>Agv Position</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Agv Position</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvPosition + * @generated + */ + EClass getAgvPosition(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvPosition#getX <em>X</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>X</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvPosition#getX() + * @see #getAgvPosition() + * @generated + */ + EAttribute getAgvPosition_X(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvPosition#getY <em>Y</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Y</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvPosition#getY() + * @see #getAgvPosition() + * @generated + */ + EAttribute getAgvPosition_Y(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvPosition#getTheta <em>Theta</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Theta</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvPosition#getTheta() + * @see #getAgvPosition() + * @generated + */ + EAttribute getAgvPosition_Theta(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvPosition#getMapId <em>Map Id</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Map Id</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvPosition#getMapId() + * @see #getAgvPosition() + * @generated + */ + EAttribute getAgvPosition_MapId(); + + /** + * Returns the meta object for class '{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.Load <em>Load</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Load</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.Load + * @generated + */ + EClass getLoad(); + + /** + * Returns the meta object for the attribute '{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.Load#getLoadId <em>Load Id</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Load Id</em>'. + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.Load#getLoadId() + * @see #getLoad() + * @generated + */ + EAttribute getLoad_LoadId(); + + /** + * Returns the factory that creates the instances of the model. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the factory that creates the instances of the model. + * @generated + */ + VDA5050Factory getVDA5050Factory(); + + /** + * <!-- begin-user-doc --> + * Defines literals for the meta objects that represent + * <ul> + * <li>each class,</li> + * <li>each feature of each class,</li> + * <li>each operation of each class,</li> + * <li>each enum,</li> + * <li>and each data type</li> + * </ul> + * <!-- end-user-doc --> + * @generated + */ + interface Literals { + /** + * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl.AgvStateImpl <em>Agv State</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl.AgvStateImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl.VDA5050PackageImpl#getAgvState() + * @generated + */ + EClass AGV_STATE = eINSTANCE.getAgvState(); + /** + * The meta object literal for the '<em><b>Time Stamp</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute AGV_STATE__TIME_STAMP = eINSTANCE.getAgvState_TimeStamp(); + /** + * The meta object literal for the '<em><b>Serial Number</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute AGV_STATE__SERIAL_NUMBER = eINSTANCE.getAgvState_SerialNumber(); + /** + * The meta object literal for the '<em><b>Last Node Id</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute AGV_STATE__LAST_NODE_ID = eINSTANCE.getAgvState_LastNodeId(); + /** + * The meta object literal for the '<em><b>Battery State</b></em>' reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference AGV_STATE__BATTERY_STATE = eINSTANCE.getAgvState_BatteryState(); + /** + * The meta object literal for the '<em><b>Errors</b></em>' reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference AGV_STATE__ERRORS = eINSTANCE.getAgvState_Errors(); + /** + * The meta object literal for the '<em><b>Agvposition</b></em>' reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference AGV_STATE__AGVPOSITION = eINSTANCE.getAgvState_Agvposition(); + /** + * The meta object literal for the '<em><b>Loads</b></em>' reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference AGV_STATE__LOADS = eINSTANCE.getAgvState_Loads(); + /** + * The meta object literal for the '<em><b>Manufacturer</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute AGV_STATE__MANUFACTURER = eINSTANCE.getAgvState_Manufacturer(); + /** + * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl.BatteryStateImpl <em>Battery State</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl.BatteryStateImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl.VDA5050PackageImpl#getBatteryState() + * @generated + */ + EClass BATTERY_STATE = eINSTANCE.getBatteryState(); + /** + * The meta object literal for the '<em><b>Battery Charge</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute BATTERY_STATE__BATTERY_CHARGE = eINSTANCE.getBatteryState_BatteryCharge(); + /** + * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl.ErrorImpl <em>Error</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl.ErrorImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl.VDA5050PackageImpl#getError() + * @generated + */ + EClass ERROR = eINSTANCE.getError(); + /** + * The meta object literal for the '<em><b>Error Type</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute ERROR__ERROR_TYPE = eINSTANCE.getError_ErrorType(); + /** + * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl.AgvPositionImpl <em>Agv Position</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl.AgvPositionImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl.VDA5050PackageImpl#getAgvPosition() + * @generated + */ + EClass AGV_POSITION = eINSTANCE.getAgvPosition(); + /** + * The meta object literal for the '<em><b>X</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute AGV_POSITION__X = eINSTANCE.getAgvPosition_X(); + /** + * The meta object literal for the '<em><b>Y</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute AGV_POSITION__Y = eINSTANCE.getAgvPosition_Y(); + /** + * The meta object literal for the '<em><b>Theta</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute AGV_POSITION__THETA = eINSTANCE.getAgvPosition_Theta(); + /** + * The meta object literal for the '<em><b>Map Id</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute AGV_POSITION__MAP_ID = eINSTANCE.getAgvPosition_MapId(); + /** + * The meta object literal for the '{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl.LoadImpl <em>Load</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl.LoadImpl + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl.VDA5050PackageImpl#getLoad() + * @generated + */ + EClass LOAD = eINSTANCE.getLoad(); + /** + * The meta object literal for the '<em><b>Load Id</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute LOAD__LOAD_ID = eINSTANCE.getLoad_LoadId(); + + } + +} //VDA5050Package diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/VDA5050/impl/AgvPositionImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/VDA5050/impl/AgvPositionImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..a9a32cf02ba724a3890bc987388c99fe7abf8545 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/VDA5050/impl/AgvPositionImpl.java @@ -0,0 +1,327 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl; + +import ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvPosition; +import ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.VDA5050Package; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Agv Position</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl.AgvPositionImpl#getX <em>X</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl.AgvPositionImpl#getY <em>Y</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl.AgvPositionImpl#getTheta <em>Theta</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl.AgvPositionImpl#getMapId <em>Map Id</em>}</li> + * </ul> + * + * @generated + */ +public class AgvPositionImpl extends MinimalEObjectImpl.Container implements AgvPosition { + /** + * The default value of the '{@link #getX() <em>X</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getX() + * @generated + * @ordered + */ + protected static final float X_EDEFAULT = 0.0F; + + /** + * The cached value of the '{@link #getX() <em>X</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getX() + * @generated + * @ordered + */ + protected float x = X_EDEFAULT; + + /** + * The default value of the '{@link #getY() <em>Y</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getY() + * @generated + * @ordered + */ + protected static final float Y_EDEFAULT = 0.0F; + + /** + * The cached value of the '{@link #getY() <em>Y</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getY() + * @generated + * @ordered + */ + protected float y = Y_EDEFAULT; + + /** + * The default value of the '{@link #getTheta() <em>Theta</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTheta() + * @generated + * @ordered + */ + protected static final float THETA_EDEFAULT = 0.0F; + + /** + * The cached value of the '{@link #getTheta() <em>Theta</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTheta() + * @generated + * @ordered + */ + protected float theta = THETA_EDEFAULT; + + /** + * The default value of the '{@link #getMapId() <em>Map Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMapId() + * @generated + * @ordered + */ + protected static final String MAP_ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getMapId() <em>Map Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getMapId() + * @generated + * @ordered + */ + protected String mapId = MAP_ID_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected AgvPositionImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return VDA5050Package.Literals.AGV_POSITION; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public float getX() { + return x; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setX(float newX) { + float oldX = x; + x = newX; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, VDA5050Package.AGV_POSITION__X, oldX, x)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public float getY() { + return y; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setY(float newY) { + float oldY = y; + y = newY; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, VDA5050Package.AGV_POSITION__Y, oldY, y)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public float getTheta() { + return theta; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setTheta(float newTheta) { + float oldTheta = theta; + theta = newTheta; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, VDA5050Package.AGV_POSITION__THETA, oldTheta, theta)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getMapId() { + return mapId; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setMapId(String newMapId) { + String oldMapId = mapId; + mapId = newMapId; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, VDA5050Package.AGV_POSITION__MAP_ID, oldMapId, + mapId)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case VDA5050Package.AGV_POSITION__X: + return getX(); + case VDA5050Package.AGV_POSITION__Y: + return getY(); + case VDA5050Package.AGV_POSITION__THETA: + return getTheta(); + case VDA5050Package.AGV_POSITION__MAP_ID: + return getMapId(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case VDA5050Package.AGV_POSITION__X: + setX((Float) newValue); + return; + case VDA5050Package.AGV_POSITION__Y: + setY((Float) newValue); + return; + case VDA5050Package.AGV_POSITION__THETA: + setTheta((Float) newValue); + return; + case VDA5050Package.AGV_POSITION__MAP_ID: + setMapId((String) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case VDA5050Package.AGV_POSITION__X: + setX(X_EDEFAULT); + return; + case VDA5050Package.AGV_POSITION__Y: + setY(Y_EDEFAULT); + return; + case VDA5050Package.AGV_POSITION__THETA: + setTheta(THETA_EDEFAULT); + return; + case VDA5050Package.AGV_POSITION__MAP_ID: + setMapId(MAP_ID_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case VDA5050Package.AGV_POSITION__X: + return x != X_EDEFAULT; + case VDA5050Package.AGV_POSITION__Y: + return y != Y_EDEFAULT; + case VDA5050Package.AGV_POSITION__THETA: + return theta != THETA_EDEFAULT; + case VDA5050Package.AGV_POSITION__MAP_ID: + return MAP_ID_EDEFAULT == null ? mapId != null : !MAP_ID_EDEFAULT.equals(mapId); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (x: "); + result.append(x); + result.append(", y: "); + result.append(y); + result.append(", theta: "); + result.append(theta); + result.append(", mapId: "); + result.append(mapId); + result.append(')'); + return result.toString(); + } + +} //AgvPositionImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/VDA5050/impl/AgvStateImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/VDA5050/impl/AgvStateImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..4d93b8e1ae7edbd7cd671f6cbdeb9cf6bc51db38 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/VDA5050/impl/AgvStateImpl.java @@ -0,0 +1,538 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl; + +import ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvPosition; +import ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvState; +import ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.BatteryState; +import ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.Load; +import ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.VDA5050Package; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EObjectResolvingEList; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Agv State</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl.AgvStateImpl#getTimeStamp <em>Time Stamp</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl.AgvStateImpl#getSerialNumber <em>Serial Number</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl.AgvStateImpl#getLastNodeId <em>Last Node Id</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl.AgvStateImpl#getBatteryState <em>Battery State</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl.AgvStateImpl#getErrors <em>Errors</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl.AgvStateImpl#getAgvposition <em>Agvposition</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl.AgvStateImpl#getLoads <em>Loads</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl.AgvStateImpl#getManufacturer <em>Manufacturer</em>}</li> + * </ul> + * + * @generated + */ +public class AgvStateImpl extends MinimalEObjectImpl.Container implements AgvState { + /** + * The default value of the '{@link #getTimeStamp() <em>Time Stamp</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTimeStamp() + * @generated + * @ordered + */ + protected static final String TIME_STAMP_EDEFAULT = null; + + /** + * The cached value of the '{@link #getTimeStamp() <em>Time Stamp</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTimeStamp() + * @generated + * @ordered + */ + protected String timeStamp = TIME_STAMP_EDEFAULT; + + /** + * The default value of the '{@link #getSerialNumber() <em>Serial Number</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSerialNumber() + * @generated + * @ordered + */ + protected static final String SERIAL_NUMBER_EDEFAULT = null; + + /** + * The cached value of the '{@link #getSerialNumber() <em>Serial Number</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSerialNumber() + * @generated + * @ordered + */ + protected String serialNumber = SERIAL_NUMBER_EDEFAULT; + + /** + * The default value of the '{@link #getLastNodeId() <em>Last Node Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getLastNodeId() + * @generated + * @ordered + */ + protected static final String LAST_NODE_ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getLastNodeId() <em>Last Node Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getLastNodeId() + * @generated + * @ordered + */ + protected String lastNodeId = LAST_NODE_ID_EDEFAULT; + + /** + * The cached value of the '{@link #getBatteryState() <em>Battery State</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getBatteryState() + * @generated + * @ordered + */ + protected BatteryState batteryState; + + /** + * The cached value of the '{@link #getErrors() <em>Errors</em>}' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getErrors() + * @generated + * @ordered + */ + protected EList<ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.Error> errors; + + /** + * The cached value of the '{@link #getAgvposition() <em>Agvposition</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getAgvposition() + * @generated + * @ordered + */ + protected AgvPosition agvposition; + + /** + * The cached value of the '{@link #getLoads() <em>Loads</em>}' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getLoads() + * @generated + * @ordered + */ + protected EList<Load> loads; + + /** + * The default value of the '{@link #getManufacturer() <em>Manufacturer</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getManufacturer() + * @generated + * @ordered + */ + protected static final String MANUFACTURER_EDEFAULT = null; + + /** + * The cached value of the '{@link #getManufacturer() <em>Manufacturer</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getManufacturer() + * @generated + * @ordered + */ + protected String manufacturer = MANUFACTURER_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected AgvStateImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return VDA5050Package.Literals.AGV_STATE; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getTimeStamp() { + return timeStamp; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setTimeStamp(String newTimeStamp) { + String oldTimeStamp = timeStamp; + timeStamp = newTimeStamp; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, VDA5050Package.AGV_STATE__TIME_STAMP, oldTimeStamp, + timeStamp)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getSerialNumber() { + return serialNumber; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setSerialNumber(String newSerialNumber) { + String oldSerialNumber = serialNumber; + serialNumber = newSerialNumber; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, VDA5050Package.AGV_STATE__SERIAL_NUMBER, + oldSerialNumber, serialNumber)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getLastNodeId() { + return lastNodeId; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setLastNodeId(String newLastNodeId) { + String oldLastNodeId = lastNodeId; + lastNodeId = newLastNodeId; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, VDA5050Package.AGV_STATE__LAST_NODE_ID, oldLastNodeId, + lastNodeId)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public BatteryState getBatteryState() { + if (batteryState != null && batteryState.eIsProxy()) { + InternalEObject oldBatteryState = (InternalEObject) batteryState; + batteryState = (BatteryState) eResolveProxy(oldBatteryState); + if (batteryState != oldBatteryState) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, VDA5050Package.AGV_STATE__BATTERY_STATE, + oldBatteryState, batteryState)); + } + } + return batteryState; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public BatteryState basicGetBatteryState() { + return batteryState; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setBatteryState(BatteryState newBatteryState) { + BatteryState oldBatteryState = batteryState; + batteryState = newBatteryState; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, VDA5050Package.AGV_STATE__BATTERY_STATE, + oldBatteryState, batteryState)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EList<ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.Error> getErrors() { + if (errors == null) { + errors = new EObjectResolvingEList<ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.Error>( + ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.Error.class, this, + VDA5050Package.AGV_STATE__ERRORS); + } + return errors; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public AgvPosition getAgvposition() { + if (agvposition != null && agvposition.eIsProxy()) { + InternalEObject oldAgvposition = (InternalEObject) agvposition; + agvposition = (AgvPosition) eResolveProxy(oldAgvposition); + if (agvposition != oldAgvposition) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, VDA5050Package.AGV_STATE__AGVPOSITION, + oldAgvposition, agvposition)); + } + } + return agvposition; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public AgvPosition basicGetAgvposition() { + return agvposition; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setAgvposition(AgvPosition newAgvposition) { + AgvPosition oldAgvposition = agvposition; + agvposition = newAgvposition; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, VDA5050Package.AGV_STATE__AGVPOSITION, oldAgvposition, + agvposition)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EList<Load> getLoads() { + if (loads == null) { + loads = new EObjectResolvingEList<Load>(Load.class, this, VDA5050Package.AGV_STATE__LOADS); + } + return loads; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getManufacturer() { + return manufacturer; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setManufacturer(String newManufacturer) { + String oldManufacturer = manufacturer; + manufacturer = newManufacturer; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, VDA5050Package.AGV_STATE__MANUFACTURER, + oldManufacturer, manufacturer)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case VDA5050Package.AGV_STATE__TIME_STAMP: + return getTimeStamp(); + case VDA5050Package.AGV_STATE__SERIAL_NUMBER: + return getSerialNumber(); + case VDA5050Package.AGV_STATE__LAST_NODE_ID: + return getLastNodeId(); + case VDA5050Package.AGV_STATE__BATTERY_STATE: + if (resolve) + return getBatteryState(); + return basicGetBatteryState(); + case VDA5050Package.AGV_STATE__ERRORS: + return getErrors(); + case VDA5050Package.AGV_STATE__AGVPOSITION: + if (resolve) + return getAgvposition(); + return basicGetAgvposition(); + case VDA5050Package.AGV_STATE__LOADS: + return getLoads(); + case VDA5050Package.AGV_STATE__MANUFACTURER: + return getManufacturer(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case VDA5050Package.AGV_STATE__TIME_STAMP: + setTimeStamp((String) newValue); + return; + case VDA5050Package.AGV_STATE__SERIAL_NUMBER: + setSerialNumber((String) newValue); + return; + case VDA5050Package.AGV_STATE__LAST_NODE_ID: + setLastNodeId((String) newValue); + return; + case VDA5050Package.AGV_STATE__BATTERY_STATE: + setBatteryState((BatteryState) newValue); + return; + case VDA5050Package.AGV_STATE__ERRORS: + getErrors().clear(); + getErrors().addAll( + (Collection<? extends ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.Error>) newValue); + return; + case VDA5050Package.AGV_STATE__AGVPOSITION: + setAgvposition((AgvPosition) newValue); + return; + case VDA5050Package.AGV_STATE__LOADS: + getLoads().clear(); + getLoads().addAll((Collection<? extends Load>) newValue); + return; + case VDA5050Package.AGV_STATE__MANUFACTURER: + setManufacturer((String) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case VDA5050Package.AGV_STATE__TIME_STAMP: + setTimeStamp(TIME_STAMP_EDEFAULT); + return; + case VDA5050Package.AGV_STATE__SERIAL_NUMBER: + setSerialNumber(SERIAL_NUMBER_EDEFAULT); + return; + case VDA5050Package.AGV_STATE__LAST_NODE_ID: + setLastNodeId(LAST_NODE_ID_EDEFAULT); + return; + case VDA5050Package.AGV_STATE__BATTERY_STATE: + setBatteryState((BatteryState) null); + return; + case VDA5050Package.AGV_STATE__ERRORS: + getErrors().clear(); + return; + case VDA5050Package.AGV_STATE__AGVPOSITION: + setAgvposition((AgvPosition) null); + return; + case VDA5050Package.AGV_STATE__LOADS: + getLoads().clear(); + return; + case VDA5050Package.AGV_STATE__MANUFACTURER: + setManufacturer(MANUFACTURER_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case VDA5050Package.AGV_STATE__TIME_STAMP: + return TIME_STAMP_EDEFAULT == null ? timeStamp != null : !TIME_STAMP_EDEFAULT.equals(timeStamp); + case VDA5050Package.AGV_STATE__SERIAL_NUMBER: + return SERIAL_NUMBER_EDEFAULT == null ? serialNumber != null : !SERIAL_NUMBER_EDEFAULT.equals(serialNumber); + case VDA5050Package.AGV_STATE__LAST_NODE_ID: + return LAST_NODE_ID_EDEFAULT == null ? lastNodeId != null : !LAST_NODE_ID_EDEFAULT.equals(lastNodeId); + case VDA5050Package.AGV_STATE__BATTERY_STATE: + return batteryState != null; + case VDA5050Package.AGV_STATE__ERRORS: + return errors != null && !errors.isEmpty(); + case VDA5050Package.AGV_STATE__AGVPOSITION: + return agvposition != null; + case VDA5050Package.AGV_STATE__LOADS: + return loads != null && !loads.isEmpty(); + case VDA5050Package.AGV_STATE__MANUFACTURER: + return MANUFACTURER_EDEFAULT == null ? manufacturer != null : !MANUFACTURER_EDEFAULT.equals(manufacturer); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (timeStamp: "); + result.append(timeStamp); + result.append(", serialNumber: "); + result.append(serialNumber); + result.append(", lastNodeId: "); + result.append(lastNodeId); + result.append(", manufacturer: "); + result.append(manufacturer); + result.append(')'); + return result.toString(); + } + +} //AgvStateImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/VDA5050/impl/BatteryStateImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/VDA5050/impl/BatteryStateImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..4c9100bb48b4a201b15342fb3fc54e1556afe4ea --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/VDA5050/impl/BatteryStateImpl.java @@ -0,0 +1,165 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl; + +import ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.BatteryState; +import ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.VDA5050Package; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Battery State</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl.BatteryStateImpl#getBatteryCharge <em>Battery Charge</em>}</li> + * </ul> + * + * @generated + */ +public class BatteryStateImpl extends MinimalEObjectImpl.Container implements BatteryState { + /** + * The default value of the '{@link #getBatteryCharge() <em>Battery Charge</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getBatteryCharge() + * @generated + * @ordered + */ + protected static final float BATTERY_CHARGE_EDEFAULT = 0.0F; + + /** + * The cached value of the '{@link #getBatteryCharge() <em>Battery Charge</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getBatteryCharge() + * @generated + * @ordered + */ + protected float batteryCharge = BATTERY_CHARGE_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected BatteryStateImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return VDA5050Package.Literals.BATTERY_STATE; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public float getBatteryCharge() { + return batteryCharge; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setBatteryCharge(float newBatteryCharge) { + float oldBatteryCharge = batteryCharge; + batteryCharge = newBatteryCharge; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, VDA5050Package.BATTERY_STATE__BATTERY_CHARGE, + oldBatteryCharge, batteryCharge)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case VDA5050Package.BATTERY_STATE__BATTERY_CHARGE: + return getBatteryCharge(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case VDA5050Package.BATTERY_STATE__BATTERY_CHARGE: + setBatteryCharge((Float) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case VDA5050Package.BATTERY_STATE__BATTERY_CHARGE: + setBatteryCharge(BATTERY_CHARGE_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case VDA5050Package.BATTERY_STATE__BATTERY_CHARGE: + return batteryCharge != BATTERY_CHARGE_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (batteryCharge: "); + result.append(batteryCharge); + result.append(')'); + return result.toString(); + } + +} //BatteryStateImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/VDA5050/impl/ErrorImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/VDA5050/impl/ErrorImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..f59ff42f854e079bd20a74341e522ba6efb0b967 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/VDA5050/impl/ErrorImpl.java @@ -0,0 +1,165 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl; + +import ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.VDA5050Package; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Error</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl.ErrorImpl#getErrorType <em>Error Type</em>}</li> + * </ul> + * + * @generated + */ +public class ErrorImpl extends MinimalEObjectImpl.Container + implements ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.Error { + /** + * The default value of the '{@link #getErrorType() <em>Error Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getErrorType() + * @generated + * @ordered + */ + protected static final String ERROR_TYPE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getErrorType() <em>Error Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getErrorType() + * @generated + * @ordered + */ + protected String errorType = ERROR_TYPE_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected ErrorImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return VDA5050Package.Literals.ERROR; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getErrorType() { + return errorType; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setErrorType(String newErrorType) { + String oldErrorType = errorType; + errorType = newErrorType; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, VDA5050Package.ERROR__ERROR_TYPE, oldErrorType, + errorType)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case VDA5050Package.ERROR__ERROR_TYPE: + return getErrorType(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case VDA5050Package.ERROR__ERROR_TYPE: + setErrorType((String) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case VDA5050Package.ERROR__ERROR_TYPE: + setErrorType(ERROR_TYPE_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case VDA5050Package.ERROR__ERROR_TYPE: + return ERROR_TYPE_EDEFAULT == null ? errorType != null : !ERROR_TYPE_EDEFAULT.equals(errorType); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (errorType: "); + result.append(errorType); + result.append(')'); + return result.toString(); + } + +} //ErrorImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/RawdataImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/VDA5050/impl/LoadImpl.java similarity index 58% rename from src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/RawdataImpl.java rename to src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/VDA5050/impl/LoadImpl.java index 78738a1877a9353cf923eaa824cc5bd8fae57910..166711ac3f0e363c2488e82736798c00fcb96de3 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/RawdataImpl.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/VDA5050/impl/LoadImpl.java @@ -1,9 +1,9 @@ /** */ -package ipos.project.DataModellntegration.iPos_Datamodel.impl; +package ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl; -import ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage; -import ipos.project.DataModellntegration.iPos_Datamodel.Rawdata; +import ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.Load; +import ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.VDA5050Package; import org.eclipse.emf.common.notify.Notification; @@ -14,44 +14,44 @@ import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; /** * <!-- begin-user-doc --> - * An implementation of the model object '<em><b>Rawdata</b></em>'. + * An implementation of the model object '<em><b>Load</b></em>'. * <!-- end-user-doc --> * <p> * The following features are implemented: * </p> * <ul> - * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.RawdataImpl#getSensorId <em>Sensor Id</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl.LoadImpl#getLoadId <em>Load Id</em>}</li> * </ul> * * @generated */ -public abstract class RawdataImpl extends MinimalEObjectImpl.Container implements Rawdata { +public class LoadImpl extends MinimalEObjectImpl.Container implements Load { /** - * The default value of the '{@link #getSensorId() <em>Sensor Id</em>}' attribute. + * The default value of the '{@link #getLoadId() <em>Load Id</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @see #getSensorId() + * @see #getLoadId() * @generated * @ordered */ - protected static final String SENSOR_ID_EDEFAULT = null; + protected static final String LOAD_ID_EDEFAULT = null; /** - * The cached value of the '{@link #getSensorId() <em>Sensor Id</em>}' attribute. + * The cached value of the '{@link #getLoadId() <em>Load Id</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @see #getSensorId() + * @see #getLoadId() * @generated * @ordered */ - protected String sensorId = SENSOR_ID_EDEFAULT; + protected String loadId = LOAD_ID_EDEFAULT; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ - protected RawdataImpl() { + protected LoadImpl() { super(); } @@ -62,7 +62,7 @@ public abstract class RawdataImpl extends MinimalEObjectImpl.Container implement */ @Override protected EClass eStaticClass() { - return IPos_DatamodelPackage.Literals.RAWDATA; + return VDA5050Package.Literals.LOAD; } /** @@ -70,8 +70,8 @@ public abstract class RawdataImpl extends MinimalEObjectImpl.Container implement * <!-- end-user-doc --> * @generated */ - public String getSensorId() { - return sensorId; + public String getLoadId() { + return loadId; } /** @@ -79,12 +79,11 @@ public abstract class RawdataImpl extends MinimalEObjectImpl.Container implement * <!-- end-user-doc --> * @generated */ - public void setSensorId(String newSensorId) { - String oldSensorId = sensorId; - sensorId = newSensorId; + public void setLoadId(String newLoadId) { + String oldLoadId = loadId; + loadId = newLoadId; if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, IPos_DatamodelPackage.RAWDATA__SENSOR_ID, oldSensorId, - sensorId)); + eNotify(new ENotificationImpl(this, Notification.SET, VDA5050Package.LOAD__LOAD_ID, oldLoadId, loadId)); } /** @@ -95,8 +94,8 @@ public abstract class RawdataImpl extends MinimalEObjectImpl.Container implement @Override public Object eGet(int featureID, boolean resolve, boolean coreType) { switch (featureID) { - case IPos_DatamodelPackage.RAWDATA__SENSOR_ID: - return getSensorId(); + case VDA5050Package.LOAD__LOAD_ID: + return getLoadId(); } return super.eGet(featureID, resolve, coreType); } @@ -109,8 +108,8 @@ public abstract class RawdataImpl extends MinimalEObjectImpl.Container implement @Override public void eSet(int featureID, Object newValue) { switch (featureID) { - case IPos_DatamodelPackage.RAWDATA__SENSOR_ID: - setSensorId((String) newValue); + case VDA5050Package.LOAD__LOAD_ID: + setLoadId((String) newValue); return; } super.eSet(featureID, newValue); @@ -124,8 +123,8 @@ public abstract class RawdataImpl extends MinimalEObjectImpl.Container implement @Override public void eUnset(int featureID) { switch (featureID) { - case IPos_DatamodelPackage.RAWDATA__SENSOR_ID: - setSensorId(SENSOR_ID_EDEFAULT); + case VDA5050Package.LOAD__LOAD_ID: + setLoadId(LOAD_ID_EDEFAULT); return; } super.eUnset(featureID); @@ -139,8 +138,8 @@ public abstract class RawdataImpl extends MinimalEObjectImpl.Container implement @Override public boolean eIsSet(int featureID) { switch (featureID) { - case IPos_DatamodelPackage.RAWDATA__SENSOR_ID: - return SENSOR_ID_EDEFAULT == null ? sensorId != null : !SENSOR_ID_EDEFAULT.equals(sensorId); + case VDA5050Package.LOAD__LOAD_ID: + return LOAD_ID_EDEFAULT == null ? loadId != null : !LOAD_ID_EDEFAULT.equals(loadId); } return super.eIsSet(featureID); } @@ -156,10 +155,10 @@ public abstract class RawdataImpl extends MinimalEObjectImpl.Container implement return super.toString(); StringBuilder result = new StringBuilder(super.toString()); - result.append(" (sensorId: "); - result.append(sensorId); + result.append(" (loadId: "); + result.append(loadId); result.append(')'); return result.toString(); } -} //RawdataImpl +} //LoadImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/VDA5050/impl/VDA5050FactoryImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/VDA5050/impl/VDA5050FactoryImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..261fd29ee806c4931e7b7bd066322047c0cfa92d --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/VDA5050/impl/VDA5050FactoryImpl.java @@ -0,0 +1,150 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl; + +import ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvPosition; +import ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvState; +import ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.BatteryState; +import ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.Load; +import ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.VDA5050Factory; +import ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.VDA5050Package; +import ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.*; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EPackage; + +import org.eclipse.emf.ecore.impl.EFactoryImpl; + +import org.eclipse.emf.ecore.plugin.EcorePlugin; + +/** + * <!-- begin-user-doc --> + * An implementation of the model <b>Factory</b>. + * <!-- end-user-doc --> + * @generated + */ +public class VDA5050FactoryImpl extends EFactoryImpl implements VDA5050Factory { + /** + * Creates the default factory implementation. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static VDA5050Factory init() { + try { + VDA5050Factory theVDA5050Factory = (VDA5050Factory) EPackage.Registry.INSTANCE + .getEFactory(VDA5050Package.eNS_URI); + if (theVDA5050Factory != null) { + return theVDA5050Factory; + } + } catch (Exception exception) { + EcorePlugin.INSTANCE.log(exception); + } + return new VDA5050FactoryImpl(); + } + + /** + * Creates an instance of the factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public VDA5050FactoryImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EObject create(EClass eClass) { + switch (eClass.getClassifierID()) { + case VDA5050Package.AGV_STATE: + return createAgvState(); + case VDA5050Package.BATTERY_STATE: + return createBatteryState(); + case VDA5050Package.ERROR: + return createError(); + case VDA5050Package.AGV_POSITION: + return createAgvPosition(); + case VDA5050Package.LOAD: + return createLoad(); + default: + throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); + } + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public AgvState createAgvState() { + AgvStateImpl agvState = new AgvStateImpl(); + return agvState; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public BatteryState createBatteryState() { + BatteryStateImpl batteryState = new BatteryStateImpl(); + return batteryState; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.Error createError() { + ErrorImpl error = new ErrorImpl(); + return error; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public AgvPosition createAgvPosition() { + AgvPositionImpl agvPosition = new AgvPositionImpl(); + return agvPosition; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Load createLoad() { + LoadImpl load = new LoadImpl(); + return load; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public VDA5050Package getVDA5050Package() { + return (VDA5050Package) getEPackage(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @deprecated + * @generated + */ + @Deprecated + public static VDA5050Package getPackage() { + return VDA5050Package.eINSTANCE; + } + +} //VDA5050FactoryImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/VDA5050/impl/VDA5050PackageImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/VDA5050/impl/VDA5050PackageImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..eaeb19f8c4d0e6713c9cc0ba84ba7577d5f0a618 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/VDA5050/impl/VDA5050PackageImpl.java @@ -0,0 +1,489 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl; + +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage; + +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosDevKitPackageImpl; + +import ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage; + +import ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.OFBizPackage; + +import ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl.OFBizPackageImpl; + +import ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPackage; +import ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMPackageImpl; +import ipos.project.DataModellntegration.iPos_Datamodel.Tooz.ToozPackage; + +import ipos.project.DataModellntegration.iPos_Datamodel.Tooz.impl.ToozPackageImpl; + +import ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvPosition; +import ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvState; +import ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.BatteryState; +import ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.Load; +import ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.VDA5050Factory; +import ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.VDA5050Package; + +import ipos.project.DataModellntegration.iPos_Datamodel.impl.IPos_DatamodelPackageImpl; + +import org.eclipse.emf.ecore.EAttribute; +import org.eclipse.emf.ecore.EClass; +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 VDA5050PackageImpl extends EPackageImpl implements VDA5050Package { + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass agvStateEClass = null; + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass batteryStateEClass = null; + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass errorEClass = null; + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass agvPositionEClass = null; + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass loadEClass = 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 ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.VDA5050Package#eNS_URI + * @see #init() + * @generated + */ + private VDA5050PackageImpl() { + super(eNS_URI, VDA5050Factory.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 VDA5050Package#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 VDA5050Package init() { + if (isInited) + return (VDA5050Package) EPackage.Registry.INSTANCE.getEPackage(VDA5050Package.eNS_URI); + + // Obtain or create and register package + Object registeredVDA5050Package = EPackage.Registry.INSTANCE.get(eNS_URI); + VDA5050PackageImpl theVDA5050Package = registeredVDA5050Package instanceof VDA5050PackageImpl + ? (VDA5050PackageImpl) registeredVDA5050Package + : new VDA5050PackageImpl(); + + isInited = true; + + // Obtain or create and register interdependencies + Object registeredPackage = EPackage.Registry.INSTANCE.getEPackage(IPos_DatamodelPackage.eNS_URI); + IPos_DatamodelPackageImpl theIPos_DatamodelPackage = (IPos_DatamodelPackageImpl) (registeredPackage instanceof IPos_DatamodelPackageImpl + ? registeredPackage + : IPos_DatamodelPackage.eINSTANCE); + registeredPackage = EPackage.Registry.INSTANCE.getEPackage(OFBizPackage.eNS_URI); + OFBizPackageImpl theOFBizPackage = (OFBizPackageImpl) (registeredPackage instanceof OFBizPackageImpl + ? registeredPackage + : OFBizPackage.eINSTANCE); + registeredPackage = EPackage.Registry.INSTANCE.getEPackage(IPosDevKitPackage.eNS_URI); + IPosDevKitPackageImpl theIPosDevKitPackage = (IPosDevKitPackageImpl) (registeredPackage instanceof IPosDevKitPackageImpl + ? registeredPackage + : IPosDevKitPackage.eINSTANCE); + registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ToozPackage.eNS_URI); + ToozPackageImpl theToozPackage = (ToozPackageImpl) (registeredPackage instanceof ToozPackageImpl + ? registeredPackage + : ToozPackage.eINSTANCE); + registeredPackage = EPackage.Registry.INSTANCE.getEPackage(OSMPackage.eNS_URI); + OSMPackageImpl theOSMPackage = (OSMPackageImpl) (registeredPackage instanceof OSMPackageImpl ? registeredPackage + : OSMPackage.eINSTANCE); + + // Create package meta-data objects + theVDA5050Package.createPackageContents(); + theIPos_DatamodelPackage.createPackageContents(); + theOFBizPackage.createPackageContents(); + theIPosDevKitPackage.createPackageContents(); + theToozPackage.createPackageContents(); + theOSMPackage.createPackageContents(); + + // Initialize created meta-data + theVDA5050Package.initializePackageContents(); + theIPos_DatamodelPackage.initializePackageContents(); + theOFBizPackage.initializePackageContents(); + theIPosDevKitPackage.initializePackageContents(); + theToozPackage.initializePackageContents(); + theOSMPackage.initializePackageContents(); + + // Mark meta-data to indicate it can't be changed + theVDA5050Package.freeze(); + + // Update the registry and return the package + EPackage.Registry.INSTANCE.put(VDA5050Package.eNS_URI, theVDA5050Package); + return theVDA5050Package; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getAgvState() { + return agvStateEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getAgvState_TimeStamp() { + return (EAttribute) agvStateEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getAgvState_SerialNumber() { + return (EAttribute) agvStateEClass.getEStructuralFeatures().get(1); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getAgvState_LastNodeId() { + return (EAttribute) agvStateEClass.getEStructuralFeatures().get(2); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EReference getAgvState_BatteryState() { + return (EReference) agvStateEClass.getEStructuralFeatures().get(3); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EReference getAgvState_Errors() { + return (EReference) agvStateEClass.getEStructuralFeatures().get(4); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EReference getAgvState_Agvposition() { + return (EReference) agvStateEClass.getEStructuralFeatures().get(5); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EReference getAgvState_Loads() { + return (EReference) agvStateEClass.getEStructuralFeatures().get(6); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getAgvState_Manufacturer() { + return (EAttribute) agvStateEClass.getEStructuralFeatures().get(7); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getBatteryState() { + return batteryStateEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getBatteryState_BatteryCharge() { + return (EAttribute) batteryStateEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getError() { + return errorEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getError_ErrorType() { + return (EAttribute) errorEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getAgvPosition() { + return agvPositionEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getAgvPosition_X() { + return (EAttribute) agvPositionEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getAgvPosition_Y() { + return (EAttribute) agvPositionEClass.getEStructuralFeatures().get(1); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getAgvPosition_Theta() { + return (EAttribute) agvPositionEClass.getEStructuralFeatures().get(2); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getAgvPosition_MapId() { + return (EAttribute) agvPositionEClass.getEStructuralFeatures().get(3); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getLoad() { + return loadEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getLoad_LoadId() { + return (EAttribute) loadEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public VDA5050Factory getVDA5050Factory() { + return (VDA5050Factory) 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 + agvStateEClass = createEClass(AGV_STATE); + createEAttribute(agvStateEClass, AGV_STATE__TIME_STAMP); + createEAttribute(agvStateEClass, AGV_STATE__SERIAL_NUMBER); + createEAttribute(agvStateEClass, AGV_STATE__LAST_NODE_ID); + createEReference(agvStateEClass, AGV_STATE__BATTERY_STATE); + createEReference(agvStateEClass, AGV_STATE__ERRORS); + createEReference(agvStateEClass, AGV_STATE__AGVPOSITION); + createEReference(agvStateEClass, AGV_STATE__LOADS); + createEAttribute(agvStateEClass, AGV_STATE__MANUFACTURER); + + batteryStateEClass = createEClass(BATTERY_STATE); + createEAttribute(batteryStateEClass, BATTERY_STATE__BATTERY_CHARGE); + + errorEClass = createEClass(ERROR); + createEAttribute(errorEClass, ERROR__ERROR_TYPE); + + agvPositionEClass = createEClass(AGV_POSITION); + createEAttribute(agvPositionEClass, AGV_POSITION__X); + createEAttribute(agvPositionEClass, AGV_POSITION__Y); + createEAttribute(agvPositionEClass, AGV_POSITION__THETA); + createEAttribute(agvPositionEClass, AGV_POSITION__MAP_ID); + + loadEClass = createEClass(LOAD); + createEAttribute(loadEClass, LOAD__LOAD_ID); + } + + /** + * <!-- 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 + + // Initialize classes, features, and operations; add parameters + initEClass(agvStateEClass, AgvState.class, "AgvState", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getAgvState_TimeStamp(), ecorePackage.getEString(), "timeStamp", null, 0, 1, AgvState.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getAgvState_SerialNumber(), ecorePackage.getEString(), "serialNumber", null, 0, 1, + AgvState.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + initEAttribute(getAgvState_LastNodeId(), ecorePackage.getEString(), "lastNodeId", null, 0, 1, AgvState.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getAgvState_BatteryState(), this.getBatteryState(), null, "batteryState", null, 0, 1, + AgvState.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, + !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getAgvState_Errors(), this.getError(), null, "errors", null, 0, -1, AgvState.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getAgvState_Agvposition(), this.getAgvPosition(), null, "agvposition", null, 0, 1, + AgvState.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, + !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getAgvState_Loads(), this.getLoad(), null, "loads", null, 0, -1, AgvState.class, !IS_TRANSIENT, + !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, + IS_ORDERED); + initEAttribute(getAgvState_Manufacturer(), ecorePackage.getEString(), "manufacturer", null, 0, 1, + AgvState.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + + initEClass(batteryStateEClass, BatteryState.class, "BatteryState", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getBatteryState_BatteryCharge(), ecorePackage.getEFloat(), "batteryCharge", null, 0, 1, + BatteryState.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + + initEClass(errorEClass, ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.Error.class, "Error", + !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getError_ErrorType(), ecorePackage.getEString(), "errorType", null, 0, 1, + ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.Error.class, !IS_TRANSIENT, !IS_VOLATILE, + IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(agvPositionEClass, AgvPosition.class, "AgvPosition", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getAgvPosition_X(), ecorePackage.getEFloat(), "x", null, 0, 1, AgvPosition.class, !IS_TRANSIENT, + !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getAgvPosition_Y(), ecorePackage.getEFloat(), "y", null, 0, 1, AgvPosition.class, !IS_TRANSIENT, + !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getAgvPosition_Theta(), ecorePackage.getEFloat(), "theta", null, 0, 1, AgvPosition.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getAgvPosition_MapId(), ecorePackage.getEString(), "mapId", null, 0, 1, AgvPosition.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(loadEClass, Load.class, "Load", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getLoad_LoadId(), ecorePackage.getEString(), "loadId", null, 0, 1, Load.class, !IS_TRANSIENT, + !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + } + +} //VDA5050PackageImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/VDA5050/util/VDA5050AdapterFactory.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/VDA5050/util/VDA5050AdapterFactory.java new file mode 100644 index 0000000000000000000000000000000000000000..85a1c4e60d816e4c1b13494fc2364f91d1584571 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/VDA5050/util/VDA5050AdapterFactory.java @@ -0,0 +1,200 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.util; + +import ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvPosition; +import ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvState; +import ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.BatteryState; +import ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.Load; +import ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.VDA5050Package; +import ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.*; + +import org.eclipse.emf.common.notify.Adapter; +import org.eclipse.emf.common.notify.Notifier; + +import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * The <b>Adapter Factory</b> for the model. + * It provides an adapter <code>createXXX</code> method for each class of the model. + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.VDA5050Package + * @generated + */ +public class VDA5050AdapterFactory extends AdapterFactoryImpl { + /** + * The cached model package. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected static VDA5050Package modelPackage; + + /** + * Creates an instance of the adapter factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public VDA5050AdapterFactory() { + if (modelPackage == null) { + modelPackage = VDA5050Package.eINSTANCE; + } + } + + /** + * Returns whether this factory is applicable for the type of the object. + * <!-- begin-user-doc --> + * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model. + * <!-- end-user-doc --> + * @return whether this factory is applicable for the type of the object. + * @generated + */ + @Override + public boolean isFactoryForType(Object object) { + if (object == modelPackage) { + return true; + } + if (object instanceof EObject) { + return ((EObject) object).eClass().getEPackage() == modelPackage; + } + return false; + } + + /** + * The switch that delegates to the <code>createXXX</code> methods. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected VDA5050Switch<Adapter> modelSwitch = new VDA5050Switch<Adapter>() { + @Override + public Adapter caseAgvState(AgvState object) { + return createAgvStateAdapter(); + } + + @Override + public Adapter caseBatteryState(BatteryState object) { + return createBatteryStateAdapter(); + } + + @Override + public Adapter caseError(ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.Error object) { + return createErrorAdapter(); + } + + @Override + public Adapter caseAgvPosition(AgvPosition object) { + return createAgvPositionAdapter(); + } + + @Override + public Adapter caseLoad(Load object) { + return createLoadAdapter(); + } + + @Override + public Adapter defaultCase(EObject object) { + return createEObjectAdapter(); + } + }; + + /** + * Creates an adapter for the <code>target</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param target the object to adapt. + * @return the adapter for the <code>target</code>. + * @generated + */ + @Override + public Adapter createAdapter(Notifier target) { + return modelSwitch.doSwitch((EObject) target); + } + + /** + * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvState <em>Agv State</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvState + * @generated + */ + public Adapter createAgvStateAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.BatteryState <em>Battery State</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.BatteryState + * @generated + */ + public Adapter createBatteryStateAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.Error <em>Error</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.Error + * @generated + */ + public Adapter createErrorAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvPosition <em>Agv Position</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvPosition + * @generated + */ + public Adapter createAgvPositionAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.Load <em>Load</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.Load + * @generated + */ + public Adapter createLoadAdapter() { + return null; + } + + /** + * Creates a new adapter for the default case. + * <!-- begin-user-doc --> + * This default implementation returns null. + * <!-- end-user-doc --> + * @return the new adapter. + * @generated + */ + public Adapter createEObjectAdapter() { + return null; + } + +} //VDA5050AdapterFactory diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/VDA5050/util/VDA5050Switch.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/VDA5050/util/VDA5050Switch.java new file mode 100644 index 0000000000000000000000000000000000000000..571ed372bc3aff07ecfa65e8d8fda1f190905046 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/VDA5050/util/VDA5050Switch.java @@ -0,0 +1,205 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.util; + +import ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvPosition; +import ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.AgvState; +import ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.BatteryState; +import ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.Load; +import ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.VDA5050Package; +import ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.*; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EPackage; + +import org.eclipse.emf.ecore.util.Switch; + +/** + * <!-- begin-user-doc --> + * The <b>Switch</b> for the model's inheritance hierarchy. + * It supports the call {@link #doSwitch(EObject) doSwitch(object)} + * to invoke the <code>caseXXX</code> method for each class of the model, + * starting with the actual class of the object + * and proceeding up the inheritance hierarchy + * until a non-null result is returned, + * which is the result of the switch. + * <!-- end-user-doc --> + * @see ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.VDA5050Package + * @generated + */ +public class VDA5050Switch<T> extends Switch<T> { + /** + * The cached model package + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected static VDA5050Package modelPackage; + + /** + * Creates an instance of the switch. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public VDA5050Switch() { + if (modelPackage == null) { + modelPackage = VDA5050Package.eINSTANCE; + } + } + + /** + * Checks whether this is a switch for the given package. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param ePackage the package in question. + * @return whether this is a switch for the given package. + * @generated + */ + @Override + protected boolean isSwitchFor(EPackage ePackage) { + return ePackage == modelPackage; + } + + /** + * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the first non-null result returned by a <code>caseXXX</code> call. + * @generated + */ + @Override + protected T doSwitch(int classifierID, EObject theEObject) { + switch (classifierID) { + case VDA5050Package.AGV_STATE: { + AgvState agvState = (AgvState) theEObject; + T result = caseAgvState(agvState); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case VDA5050Package.BATTERY_STATE: { + BatteryState batteryState = (BatteryState) theEObject; + T result = caseBatteryState(batteryState); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case VDA5050Package.ERROR: { + ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.Error error = (ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.Error) theEObject; + T result = caseError(error); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case VDA5050Package.AGV_POSITION: { + AgvPosition agvPosition = (AgvPosition) theEObject; + T result = caseAgvPosition(agvPosition); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case VDA5050Package.LOAD: { + Load load = (Load) theEObject; + T result = caseLoad(load); + if (result == null) + result = defaultCase(theEObject); + return result; + } + default: + return defaultCase(theEObject); + } + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Agv State</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Agv State</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseAgvState(AgvState object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Battery State</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Battery State</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseBatteryState(BatteryState object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Error</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Error</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseError(ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.Error object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Agv Position</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Agv Position</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseAgvPosition(AgvPosition object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Load</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Load</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseLoad(Load object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>EObject</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch, but this is the last case anyway. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>EObject</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) + * @generated + */ + @Override + public T defaultCase(EObject object) { + return null; + } + +} //VDA5050Switch diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/WGS84Point.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/WGS84Point.java index c49c8efa6e78629fd92491fcc14b35c3d876b75a..a229f7b6d394e059fe87247a9c06213a70730aff 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/WGS84Point.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/WGS84Point.java @@ -2,8 +2,6 @@ */ package ipos.project.DataModellntegration.iPos_Datamodel; -import org.eclipse.emf.ecore.EObject; - /** * <!-- begin-user-doc --> * A representation of the model object '<em><b>WGS84 Point</b></em>'. @@ -22,7 +20,7 @@ import org.eclipse.emf.ecore.EObject; * @model * @generated */ -public interface WGS84Point extends EObject { +public interface WGS84Point extends Point { /** * Returns the value of the '<em><b>Longitude</b></em>' attribute. * <!-- begin-user-doc --> diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/WorldModel.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/WorldModel.java index 257eecc0a0f4d2cc8f93c5496fe3594c0a7e8c80..4fbe296f7c72b5416aaa81c26ad427f123de3167 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/WorldModel.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/WorldModel.java @@ -16,7 +16,9 @@ import org.eclipse.emf.ecore.EObject; * </p> * <ul> * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.WorldModel#getAgent <em>Agent</em>}</li> - * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.WorldModel#getZonemap <em>Zonemap</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.WorldModel#getZoneMap <em>Zone Map</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.WorldModel#getPois <em>Pois</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.WorldModel#getReferenceSystem <em>Reference System</em>}</li> * </ul> * * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getWorldModel() @@ -37,15 +39,39 @@ public interface WorldModel extends EObject { EList<Agent> getAgent(); /** - * Returns the value of the '<em><b>Zonemap</b></em>' reference list. + * Returns the value of the '<em><b>Zone Map</b></em>' reference list. * The list contents are of type {@link ipos.project.DataModellntegration.iPos_Datamodel.ZoneMap}. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @return the value of the '<em>Zonemap</em>' reference list. - * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getWorldModel_Zonemap() + * @return the value of the '<em>Zone Map</em>' reference list. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getWorldModel_ZoneMap() * @model * @generated */ - EList<ZoneMap> getZonemap(); + EList<ZoneMap> getZoneMap(); + + /** + * Returns the value of the '<em><b>Pois</b></em>' reference list. + * The list contents are of type {@link ipos.project.DataModellntegration.iPos_Datamodel.POI}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Pois</em>' reference list. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getWorldModel_Pois() + * @model + * @generated + */ + EList<POI> getPois(); + + /** + * Returns the value of the '<em><b>Reference System</b></em>' reference list. + * The list contents are of type {@link ipos.project.DataModellntegration.iPos_Datamodel.ReferenceSystem}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Reference System</em>' reference list. + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getWorldModel_ReferenceSystem() + * @model + * @generated + */ + EList<ReferenceSystem> getReferenceSystem(); } // WorldModel diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Zone.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Zone.java index fb1489872201c6702e5c22e0f3c752fec6495440..c854e4c93383a4d98ac45e0486ea15ad55b1c34f 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Zone.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/Zone.java @@ -4,6 +4,8 @@ package ipos.project.DataModellntegration.iPos_Datamodel; import org.eclipse.emf.common.util.EList; +import org.eclipse.emf.ecore.EObject; + /** * <!-- begin-user-doc --> * A representation of the model object '<em><b>Zone</b></em>'. @@ -14,13 +16,15 @@ import org.eclipse.emf.common.util.EList; * </p> * <ul> * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.Zone#getSpace <em>Space</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.Zone#getName <em>Name</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.Zone#getId <em>Id</em>}</li> * </ul> * * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getZone() * @model * @generated */ -public interface Zone extends ReferenceSystem { +public interface Zone extends EObject { /** * Returns the value of the '<em><b>Space</b></em>' containment reference list. * The list contents are of type {@link ipos.project.DataModellntegration.iPos_Datamodel.Space}. @@ -33,4 +37,48 @@ public interface Zone extends ReferenceSystem { */ EList<Space> getSpace(); + /** + * Returns the value of the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Name</em>' attribute. + * @see #setName(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getZone_Name() + * @model + * @generated + */ + String getName(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.Zone#getName <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Name</em>' attribute. + * @see #getName() + * @generated + */ + void setName(String value); + + /** + * Returns the value of the '<em><b>Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Id</em>' attribute. + * @see #setId(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getZone_Id() + * @model + * @generated + */ + String getId(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.Zone#getId <em>Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Id</em>' attribute. + * @see #getId() + * @generated + */ + void setId(String value); + } // Zone diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/ZoneDescriptor.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/ZoneDescriptor.java new file mode 100644 index 0000000000000000000000000000000000000000..01999e6cea4f9d67ff2a40aaef3e8e028cc3ebf1 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/ZoneDescriptor.java @@ -0,0 +1,69 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Zone Descriptor</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.ZoneDescriptor#getZoneId <em>Zone Id</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.ZoneDescriptor#getNotificationType <em>Notification Type</em>}</li> + * </ul> + * + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getZoneDescriptor() + * @model + * @generated + */ +public interface ZoneDescriptor extends EObject { + /** + * Returns the value of the '<em><b>Zone Id</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Zone Id</em>' attribute. + * @see #setZoneId(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getZoneDescriptor_ZoneId() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + String getZoneId(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.ZoneDescriptor#getZoneId <em>Zone Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Zone Id</em>' attribute. + * @see #getZoneId() + * @generated + */ + void setZoneId(String value); + + /** + * Returns the value of the '<em><b>Notification Type</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Notification Type</em>' attribute. + * @see #setNotificationType(String) + * @see ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage#getZoneDescriptor_NotificationType() + * @model dataType="org.eclipse.emf.ecore.xml.type.String" + * @generated + */ + String getNotificationType(); + + /** + * Sets the value of the '{@link ipos.project.DataModellntegration.iPos_Datamodel.ZoneDescriptor#getNotificationType <em>Notification Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Notification Type</em>' attribute. + * @see #getNotificationType() + * @generated + */ + void setNotificationType(String value); + +} // ZoneDescriptor diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/AbsolutePositionImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/AbsolutePositionImpl.java deleted file mode 100644 index 351398dc9b356edbe9040709ac08155dfbc1a25d..0000000000000000000000000000000000000000 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/AbsolutePositionImpl.java +++ /dev/null @@ -1,159 +0,0 @@ -/** - */ -package ipos.project.DataModellntegration.iPos_Datamodel.impl; - -import ipos.project.DataModellntegration.iPos_Datamodel.AbsolutePosition; -import ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage; -import ipos.project.DataModellntegration.iPos_Datamodel.WGS84Point; - -import org.eclipse.emf.common.notify.Notification; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.impl.ENotificationImpl; - -/** - * <!-- begin-user-doc --> - * An implementation of the model object '<em><b>Absolute Position</b></em>'. - * <!-- end-user-doc --> - * <p> - * The following features are implemented: - * </p> - * <ul> - * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.AbsolutePositionImpl#getPoint <em>Point</em>}</li> - * </ul> - * - * @generated - */ -public class AbsolutePositionImpl extends PositionImpl implements AbsolutePosition { - /** - * The cached value of the '{@link #getPoint() <em>Point</em>}' reference. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @see #getPoint() - * @generated - * @ordered - */ - protected WGS84Point point; - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - protected AbsolutePositionImpl() { - super(); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - @Override - protected EClass eStaticClass() { - return IPos_DatamodelPackage.Literals.ABSOLUTE_POSITION; - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public WGS84Point getPoint() { - if (point != null && point.eIsProxy()) { - InternalEObject oldPoint = (InternalEObject) point; - point = (WGS84Point) eResolveProxy(oldPoint); - if (point != oldPoint) { - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.RESOLVE, - IPos_DatamodelPackage.ABSOLUTE_POSITION__POINT, oldPoint, point)); - } - } - return point; - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public WGS84Point basicGetPoint() { - return point; - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public void setPoint(WGS84Point newPoint) { - WGS84Point oldPoint = point; - point = newPoint; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, IPos_DatamodelPackage.ABSOLUTE_POSITION__POINT, - oldPoint, point)); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case IPos_DatamodelPackage.ABSOLUTE_POSITION__POINT: - if (resolve) - return getPoint(); - return basicGetPoint(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case IPos_DatamodelPackage.ABSOLUTE_POSITION__POINT: - setPoint((WGS84Point) newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case IPos_DatamodelPackage.ABSOLUTE_POSITION__POINT: - setPoint((WGS84Point) null); - return; - } - super.eUnset(featureID); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case IPos_DatamodelPackage.ABSOLUTE_POSITION__POINT: - return point != null; - } - return super.eIsSet(featureID); - } - -} //AbsolutePositionImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/AccelerationImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/AccelerationImpl.java index c0caf8b7cb51d72f79e4ba29891bdf580bbcc366..5bfa42b9a1811626739f66143d7f0da1a4969e29 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/AccelerationImpl.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/AccelerationImpl.java @@ -5,18 +5,89 @@ package ipos.project.DataModellntegration.iPos_Datamodel.impl; import ipos.project.DataModellntegration.iPos_Datamodel.Acceleration; import ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage; +import org.eclipse.emf.common.notify.Notification; + import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.impl.ENotificationImpl; import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; /** * <!-- begin-user-doc --> * An implementation of the model object '<em><b>Acceleration</b></em>'. * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.AccelerationImpl#getX <em>X</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.AccelerationImpl#getY <em>Y</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.AccelerationImpl#getZ <em>Z</em>}</li> + * </ul> * * @generated */ public class AccelerationImpl extends MinimalEObjectImpl.Container implements Acceleration { + /** + * The default value of the '{@link #getX() <em>X</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getX() + * @generated + * @ordered + */ + protected static final float X_EDEFAULT = 0.0F; + + /** + * The cached value of the '{@link #getX() <em>X</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getX() + * @generated + * @ordered + */ + protected float x = X_EDEFAULT; + + /** + * The default value of the '{@link #getY() <em>Y</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getY() + * @generated + * @ordered + */ + protected static final float Y_EDEFAULT = 0.0F; + + /** + * The cached value of the '{@link #getY() <em>Y</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getY() + * @generated + * @ordered + */ + protected float y = Y_EDEFAULT; + + /** + * The default value of the '{@link #getZ() <em>Z</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getZ() + * @generated + * @ordered + */ + protected static final float Z_EDEFAULT = 0.0F; + + /** + * The cached value of the '{@link #getZ() <em>Z</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getZ() + * @generated + * @ordered + */ + protected float z = Z_EDEFAULT; + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -36,4 +107,166 @@ public class AccelerationImpl extends MinimalEObjectImpl.Container implements Ac return IPos_DatamodelPackage.Literals.ACCELERATION; } + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public float getX() { + return x; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setX(float newX) { + float oldX = x; + x = newX; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, IPos_DatamodelPackage.ACCELERATION__X, oldX, x)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public float getY() { + return y; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setY(float newY) { + float oldY = y; + y = newY; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, IPos_DatamodelPackage.ACCELERATION__Y, oldY, y)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public float getZ() { + return z; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setZ(float newZ) { + float oldZ = z; + z = newZ; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, IPos_DatamodelPackage.ACCELERATION__Z, oldZ, z)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case IPos_DatamodelPackage.ACCELERATION__X: + return getX(); + case IPos_DatamodelPackage.ACCELERATION__Y: + return getY(); + case IPos_DatamodelPackage.ACCELERATION__Z: + return getZ(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case IPos_DatamodelPackage.ACCELERATION__X: + setX((Float) newValue); + return; + case IPos_DatamodelPackage.ACCELERATION__Y: + setY((Float) newValue); + return; + case IPos_DatamodelPackage.ACCELERATION__Z: + setZ((Float) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case IPos_DatamodelPackage.ACCELERATION__X: + setX(X_EDEFAULT); + return; + case IPos_DatamodelPackage.ACCELERATION__Y: + setY(Y_EDEFAULT); + return; + case IPos_DatamodelPackage.ACCELERATION__Z: + setZ(Z_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case IPos_DatamodelPackage.ACCELERATION__X: + return x != X_EDEFAULT; + case IPos_DatamodelPackage.ACCELERATION__Y: + return y != Y_EDEFAULT; + case IPos_DatamodelPackage.ACCELERATION__Z: + return z != Z_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (x: "); + result.append(x); + result.append(", y: "); + result.append(y); + result.append(", z: "); + result.append(z); + result.append(')'); + return result.toString(); + } + } //AccelerationImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/AgentImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/AgentImpl.java index cab8b56563de664008223e542eb236c3fa73871c..eb2dc584ad30946d54a55f9d9864d172c4a95606 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/AgentImpl.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/AgentImpl.java @@ -5,8 +5,6 @@ package ipos.project.DataModellntegration.iPos_Datamodel.impl; import ipos.project.DataModellntegration.iPos_Datamodel.Agent; import ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage; import ipos.project.DataModellntegration.iPos_Datamodel.LocalizableObject; -import ipos.project.DataModellntegration.iPos_Datamodel.NetworkInterface; -import ipos.project.DataModellntegration.iPos_Datamodel.PositionSensor; import java.util.Collection; @@ -15,7 +13,6 @@ import org.eclipse.emf.common.notify.Notification; import org.eclipse.emf.common.util.EList; import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.InternalEObject; import org.eclipse.emf.ecore.impl.ENotificationImpl; @@ -29,35 +26,13 @@ import org.eclipse.emf.ecore.util.EObjectResolvingEList; * The following features are implemented: * </p> * <ul> - * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.AgentImpl#getName <em>Name</em>}</li> * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.AgentImpl#getLObject <em>LObject</em>}</li> - * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.AgentImpl#getNetInt <em>Net Int</em>}</li> - * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.AgentImpl#getPSensors <em>PSensors</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.AgentImpl#getAgentType <em>Agent Type</em>}</li> * </ul> * * @generated */ public class AgentImpl extends EntityImpl implements Agent { - /** - * The default value of the '{@link #getName() <em>Name</em>}' attribute. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @see #getName() - * @generated - * @ordered - */ - protected static final String NAME_EDEFAULT = null; - - /** - * The cached value of the '{@link #getName() <em>Name</em>}' attribute. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @see #getName() - * @generated - * @ordered - */ - protected String name = NAME_EDEFAULT; - /** * The cached value of the '{@link #getLObject() <em>LObject</em>}' reference list. * <!-- begin-user-doc --> @@ -69,24 +44,24 @@ public class AgentImpl extends EntityImpl implements Agent { protected EList<LocalizableObject> lObject; /** - * The cached value of the '{@link #getNetInt() <em>Net Int</em>}' reference. + * The default value of the '{@link #getAgentType() <em>Agent Type</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @see #getNetInt() + * @see #getAgentType() * @generated * @ordered */ - protected NetworkInterface netInt; + protected static final String AGENT_TYPE_EDEFAULT = null; /** - * The cached value of the '{@link #getPSensors() <em>PSensors</em>}' reference list. + * The cached value of the '{@link #getAgentType() <em>Agent Type</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @see #getPSensors() + * @see #getAgentType() * @generated * @ordered */ - protected EList<PositionSensor> pSensors; + protected String agentType = AGENT_TYPE_EDEFAULT; /** * <!-- begin-user-doc --> @@ -107,27 +82,6 @@ public class AgentImpl extends EntityImpl implements Agent { return IPos_DatamodelPackage.Literals.AGENT; } - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public String getName() { - return name; - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public void setName(String newName) { - String oldName = name; - name = newName; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, IPos_DatamodelPackage.AGENT__NAME, oldName, name)); - } - /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -146,26 +100,8 @@ public class AgentImpl extends EntityImpl implements Agent { * <!-- end-user-doc --> * @generated */ - public NetworkInterface getNetInt() { - if (netInt != null && netInt.eIsProxy()) { - InternalEObject oldNetInt = (InternalEObject) netInt; - netInt = (NetworkInterface) eResolveProxy(oldNetInt); - if (netInt != oldNetInt) { - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.RESOLVE, IPos_DatamodelPackage.AGENT__NET_INT, - oldNetInt, netInt)); - } - } - return netInt; - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public NetworkInterface basicGetNetInt() { - return netInt; + public String getAgentType() { + return agentType; } /** @@ -173,25 +109,12 @@ public class AgentImpl extends EntityImpl implements Agent { * <!-- end-user-doc --> * @generated */ - public void setNetInt(NetworkInterface newNetInt) { - NetworkInterface oldNetInt = netInt; - netInt = newNetInt; + public void setAgentType(String newAgentType) { + String oldAgentType = agentType; + agentType = newAgentType; if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, IPos_DatamodelPackage.AGENT__NET_INT, oldNetInt, - netInt)); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public EList<PositionSensor> getPSensors() { - if (pSensors == null) { - pSensors = new EObjectResolvingEList<PositionSensor>(PositionSensor.class, this, - IPos_DatamodelPackage.AGENT__PSENSORS); - } - return pSensors; + eNotify(new ENotificationImpl(this, Notification.SET, IPos_DatamodelPackage.AGENT__AGENT_TYPE, oldAgentType, + agentType)); } /** @@ -202,16 +125,10 @@ public class AgentImpl extends EntityImpl implements Agent { @Override public Object eGet(int featureID, boolean resolve, boolean coreType) { switch (featureID) { - case IPos_DatamodelPackage.AGENT__NAME: - return getName(); case IPos_DatamodelPackage.AGENT__LOBJECT: return getLObject(); - case IPos_DatamodelPackage.AGENT__NET_INT: - if (resolve) - return getNetInt(); - return basicGetNetInt(); - case IPos_DatamodelPackage.AGENT__PSENSORS: - return getPSensors(); + case IPos_DatamodelPackage.AGENT__AGENT_TYPE: + return getAgentType(); } return super.eGet(featureID, resolve, coreType); } @@ -225,19 +142,12 @@ public class AgentImpl extends EntityImpl implements Agent { @Override public void eSet(int featureID, Object newValue) { switch (featureID) { - case IPos_DatamodelPackage.AGENT__NAME: - setName((String) newValue); - return; case IPos_DatamodelPackage.AGENT__LOBJECT: getLObject().clear(); getLObject().addAll((Collection<? extends LocalizableObject>) newValue); return; - case IPos_DatamodelPackage.AGENT__NET_INT: - setNetInt((NetworkInterface) newValue); - return; - case IPos_DatamodelPackage.AGENT__PSENSORS: - getPSensors().clear(); - getPSensors().addAll((Collection<? extends PositionSensor>) newValue); + case IPos_DatamodelPackage.AGENT__AGENT_TYPE: + setAgentType((String) newValue); return; } super.eSet(featureID, newValue); @@ -251,17 +161,11 @@ public class AgentImpl extends EntityImpl implements Agent { @Override public void eUnset(int featureID) { switch (featureID) { - case IPos_DatamodelPackage.AGENT__NAME: - setName(NAME_EDEFAULT); - return; case IPos_DatamodelPackage.AGENT__LOBJECT: getLObject().clear(); return; - case IPos_DatamodelPackage.AGENT__NET_INT: - setNetInt((NetworkInterface) null); - return; - case IPos_DatamodelPackage.AGENT__PSENSORS: - getPSensors().clear(); + case IPos_DatamodelPackage.AGENT__AGENT_TYPE: + setAgentType(AGENT_TYPE_EDEFAULT); return; } super.eUnset(featureID); @@ -275,14 +179,10 @@ public class AgentImpl extends EntityImpl implements Agent { @Override public boolean eIsSet(int featureID) { switch (featureID) { - case IPos_DatamodelPackage.AGENT__NAME: - return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name); case IPos_DatamodelPackage.AGENT__LOBJECT: return lObject != null && !lObject.isEmpty(); - case IPos_DatamodelPackage.AGENT__NET_INT: - return netInt != null; - case IPos_DatamodelPackage.AGENT__PSENSORS: - return pSensors != null && !pSensors.isEmpty(); + case IPos_DatamodelPackage.AGENT__AGENT_TYPE: + return AGENT_TYPE_EDEFAULT == null ? agentType != null : !AGENT_TYPE_EDEFAULT.equals(agentType); } return super.eIsSet(featureID); } @@ -298,8 +198,8 @@ public class AgentImpl extends EntityImpl implements Agent { return super.toString(); StringBuilder result = new StringBuilder(super.toString()); - result.append(" (name: "); - result.append(name); + result.append(" (agentType: "); + result.append(agentType); result.append(')'); return result.toString(); } diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/AngularRateImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/AngularRateImpl.java deleted file mode 100644 index 7b59bd4c1d13f183026c03310a3922d3dea206d4..0000000000000000000000000000000000000000 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/AngularRateImpl.java +++ /dev/null @@ -1,39 +0,0 @@ -/** - */ -package ipos.project.DataModellntegration.iPos_Datamodel.impl; - -import ipos.project.DataModellntegration.iPos_Datamodel.AngularRate; -import ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage; - -import org.eclipse.emf.ecore.EClass; - -import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; - -/** - * <!-- begin-user-doc --> - * An implementation of the model object '<em><b>Angular Rate</b></em>'. - * <!-- end-user-doc --> - * - * @generated - */ -public class AngularRateImpl extends MinimalEObjectImpl.Container implements AngularRate { - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - protected AngularRateImpl() { - super(); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - @Override - protected EClass eStaticClass() { - return IPos_DatamodelPackage.Literals.ANGULAR_RATE; - } - -} //AngularRateImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/BeaconImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/BeaconImpl.java index eebdb2446bb178aefb6a1508acfe1434245cb22c..3835e0e43d4dcce2d1d2c1865b6e75706ddffece 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/BeaconImpl.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/BeaconImpl.java @@ -23,11 +23,12 @@ import org.eclipse.emf.ecore.impl.ENotificationImpl; * <ul> * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.BeaconImpl#getDistances <em>Distances</em>}</li> * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.BeaconImpl#getType <em>Type</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.BeaconImpl#getSensorId <em>Sensor Id</em>}</li> * </ul> * * @generated */ -public class BeaconImpl extends RawdataImpl implements Beacon { +public class BeaconImpl extends RawdataEventImpl implements Beacon { /** * The cached value of the '{@link #getDistances() <em>Distances</em>}' attribute. * <!-- begin-user-doc --> @@ -36,7 +37,7 @@ public class BeaconImpl extends RawdataImpl implements Beacon { * @generated * @ordered */ - protected Map<String, Integer> distances; + protected Map<String, Double> distances; /** * The default value of the '{@link #getType() <em>Type</em>}' attribute. @@ -58,6 +59,26 @@ public class BeaconImpl extends RawdataImpl implements Beacon { */ protected String type = TYPE_EDEFAULT; + /** + * The default value of the '{@link #getSensorId() <em>Sensor Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSensorId() + * @generated + * @ordered + */ + protected static final String SENSOR_ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getSensorId() <em>Sensor Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSensorId() + * @generated + * @ordered + */ + protected String sensorId = SENSOR_ID_EDEFAULT; + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -82,7 +103,7 @@ public class BeaconImpl extends RawdataImpl implements Beacon { * <!-- end-user-doc --> * @generated */ - public Map<String, Integer> getDistances() { + public Map<String, Double> getDistances() { return distances; } @@ -91,8 +112,8 @@ public class BeaconImpl extends RawdataImpl implements Beacon { * <!-- end-user-doc --> * @generated */ - public void setDistances(Map<String, Integer> newDistances) { - Map<String, Integer> oldDistances = distances; + public void setDistances(Map<String, Double> newDistances) { + Map<String, Double> oldDistances = distances; distances = newDistances; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, IPos_DatamodelPackage.BEACON__DISTANCES, oldDistances, @@ -120,6 +141,28 @@ public class BeaconImpl extends RawdataImpl implements Beacon { eNotify(new ENotificationImpl(this, Notification.SET, IPos_DatamodelPackage.BEACON__TYPE, oldType, type)); } + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getSensorId() { + return sensorId; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setSensorId(String newSensorId) { + String oldSensorId = sensorId; + sensorId = newSensorId; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, IPos_DatamodelPackage.BEACON__SENSOR_ID, oldSensorId, + sensorId)); + } + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -132,6 +175,8 @@ public class BeaconImpl extends RawdataImpl implements Beacon { return getDistances(); case IPos_DatamodelPackage.BEACON__TYPE: return getType(); + case IPos_DatamodelPackage.BEACON__SENSOR_ID: + return getSensorId(); } return super.eGet(featureID, resolve, coreType); } @@ -146,11 +191,14 @@ public class BeaconImpl extends RawdataImpl implements Beacon { public void eSet(int featureID, Object newValue) { switch (featureID) { case IPos_DatamodelPackage.BEACON__DISTANCES: - setDistances((Map<String, Integer>) newValue); + setDistances((Map<String, Double>) newValue); return; case IPos_DatamodelPackage.BEACON__TYPE: setType((String) newValue); return; + case IPos_DatamodelPackage.BEACON__SENSOR_ID: + setSensorId((String) newValue); + return; } super.eSet(featureID, newValue); } @@ -164,11 +212,14 @@ public class BeaconImpl extends RawdataImpl implements Beacon { public void eUnset(int featureID) { switch (featureID) { case IPos_DatamodelPackage.BEACON__DISTANCES: - setDistances((Map<String, Integer>) null); + setDistances((Map<String, Double>) null); return; case IPos_DatamodelPackage.BEACON__TYPE: setType(TYPE_EDEFAULT); return; + case IPos_DatamodelPackage.BEACON__SENSOR_ID: + setSensorId(SENSOR_ID_EDEFAULT); + return; } super.eUnset(featureID); } @@ -185,6 +236,8 @@ public class BeaconImpl extends RawdataImpl implements Beacon { return distances != null; case IPos_DatamodelPackage.BEACON__TYPE: return TYPE_EDEFAULT == null ? type != null : !TYPE_EDEFAULT.equals(type); + case IPos_DatamodelPackage.BEACON__SENSOR_ID: + return SENSOR_ID_EDEFAULT == null ? sensorId != null : !SENSOR_ID_EDEFAULT.equals(sensorId); } return super.eIsSet(featureID); } @@ -204,6 +257,8 @@ public class BeaconImpl extends RawdataImpl implements Beacon { result.append(distances); result.append(", type: "); result.append(type); + result.append(", sensorId: "); + result.append(sensorId); result.append(')'); return result.toString(); } diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/BluetoothImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/BluetoothImpl.java index 5e060bca1a9a05d5d5f4252d813294656384d40f..73493a86dd0de43c7127602275456d9cd501c70b 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/BluetoothImpl.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/BluetoothImpl.java @@ -35,7 +35,7 @@ public class BluetoothImpl extends BeaconImpl implements Bluetooth { * @generated * @ordered */ - protected Map<String, Integer> rss; + protected Map<String, Double> rss; /** * <!-- begin-user-doc --> @@ -61,7 +61,7 @@ public class BluetoothImpl extends BeaconImpl implements Bluetooth { * <!-- end-user-doc --> * @generated */ - public Map<String, Integer> getRss() { + public Map<String, Double> getRss() { return rss; } @@ -70,8 +70,8 @@ public class BluetoothImpl extends BeaconImpl implements Bluetooth { * <!-- end-user-doc --> * @generated */ - public void setRss(Map<String, Integer> newRss) { - Map<String, Integer> oldRss = rss; + public void setRss(Map<String, Double> newRss) { + Map<String, Double> oldRss = rss; rss = newRss; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, IPos_DatamodelPackage.BLUETOOTH__RSS, oldRss, rss)); @@ -101,7 +101,7 @@ public class BluetoothImpl extends BeaconImpl implements Bluetooth { public void eSet(int featureID, Object newValue) { switch (featureID) { case IPos_DatamodelPackage.BLUETOOTH__RSS: - setRss((Map<String, Integer>) newValue); + setRss((Map<String, Double>) newValue); return; } super.eSet(featureID, newValue); @@ -116,7 +116,7 @@ public class BluetoothImpl extends BeaconImpl implements Bluetooth { public void eUnset(int featureID) { switch (featureID) { case IPos_DatamodelPackage.BLUETOOTH__RSS: - setRss((Map<String, Integer>) null); + setRss((Map<String, Double>) null); return; } super.eUnset(featureID); diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/DataStorageQueryRequestImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/DataStorageQueryRequestImpl.java deleted file mode 100644 index 5ae52a5efe39d208fc982f227939081380e47045..0000000000000000000000000000000000000000 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/DataStorageQueryRequestImpl.java +++ /dev/null @@ -1,39 +0,0 @@ -/** - */ -package ipos.project.DataModellntegration.iPos_Datamodel.impl; - -import ipos.project.DataModellntegration.iPos_Datamodel.DataStorageQueryRequest; -import ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage; - -import org.eclipse.emf.ecore.EClass; - -import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; - -/** - * <!-- begin-user-doc --> - * An implementation of the model object '<em><b>Data Storage Query Request</b></em>'. - * <!-- end-user-doc --> - * - * @generated - */ -public class DataStorageQueryRequestImpl extends MinimalEObjectImpl.Container implements DataStorageQueryRequest { - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - protected DataStorageQueryRequestImpl() { - super(); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - @Override - protected EClass eStaticClass() { - return IPos_DatamodelPackage.Literals.DATA_STORAGE_QUERY_REQUEST; - } - -} //DataStorageQueryRequestImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/DataStorageQueryResponseImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/DataStorageQueryResponseImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..fe29bac5c50ec24a8fae557adb6a1161ab6251a6 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/DataStorageQueryResponseImpl.java @@ -0,0 +1,210 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.impl; + +import ipos.project.DataModellntegration.iPos_Datamodel.DataStorageQueryResponse; +import ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage; +import ipos.project.DataModellntegration.iPos_Datamodel.PositionEvent; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EObjectResolvingEList; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Data Storage Query Response</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.DataStorageQueryResponseImpl#getPositionEvents <em>Position Events</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.DataStorageQueryResponseImpl#getTrackingTaskId <em>Tracking Task Id</em>}</li> + * </ul> + * + * @generated + */ +public class DataStorageQueryResponseImpl extends MinimalEObjectImpl.Container implements DataStorageQueryResponse { + /** + * The cached value of the '{@link #getPositionEvents() <em>Position Events</em>}' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPositionEvents() + * @generated + * @ordered + */ + protected EList<PositionEvent> positionEvents; + + /** + * The default value of the '{@link #getTrackingTaskId() <em>Tracking Task Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTrackingTaskId() + * @generated + * @ordered + */ + protected static final String TRACKING_TASK_ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getTrackingTaskId() <em>Tracking Task Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTrackingTaskId() + * @generated + * @ordered + */ + protected String trackingTaskId = TRACKING_TASK_ID_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected DataStorageQueryResponseImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return IPos_DatamodelPackage.Literals.DATA_STORAGE_QUERY_RESPONSE; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EList<PositionEvent> getPositionEvents() { + if (positionEvents == null) { + positionEvents = new EObjectResolvingEList<PositionEvent>(PositionEvent.class, this, + IPos_DatamodelPackage.DATA_STORAGE_QUERY_RESPONSE__POSITION_EVENTS); + } + return positionEvents; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getTrackingTaskId() { + return trackingTaskId; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setTrackingTaskId(String newTrackingTaskId) { + String oldTrackingTaskId = trackingTaskId; + trackingTaskId = newTrackingTaskId; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, + IPos_DatamodelPackage.DATA_STORAGE_QUERY_RESPONSE__TRACKING_TASK_ID, oldTrackingTaskId, + trackingTaskId)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case IPos_DatamodelPackage.DATA_STORAGE_QUERY_RESPONSE__POSITION_EVENTS: + return getPositionEvents(); + case IPos_DatamodelPackage.DATA_STORAGE_QUERY_RESPONSE__TRACKING_TASK_ID: + return getTrackingTaskId(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case IPos_DatamodelPackage.DATA_STORAGE_QUERY_RESPONSE__POSITION_EVENTS: + getPositionEvents().clear(); + getPositionEvents().addAll((Collection<? extends PositionEvent>) newValue); + return; + case IPos_DatamodelPackage.DATA_STORAGE_QUERY_RESPONSE__TRACKING_TASK_ID: + setTrackingTaskId((String) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case IPos_DatamodelPackage.DATA_STORAGE_QUERY_RESPONSE__POSITION_EVENTS: + getPositionEvents().clear(); + return; + case IPos_DatamodelPackage.DATA_STORAGE_QUERY_RESPONSE__TRACKING_TASK_ID: + setTrackingTaskId(TRACKING_TASK_ID_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case IPos_DatamodelPackage.DATA_STORAGE_QUERY_RESPONSE__POSITION_EVENTS: + return positionEvents != null && !positionEvents.isEmpty(); + case IPos_DatamodelPackage.DATA_STORAGE_QUERY_RESPONSE__TRACKING_TASK_ID: + return TRACKING_TASK_ID_EDEFAULT == null ? trackingTaskId != null + : !TRACKING_TASK_ID_EDEFAULT.equals(trackingTaskId); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (trackingTaskId: "); + result.append(trackingTaskId); + result.append(')'); + return result.toString(); + } + +} //DataStorageQueryResponseImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/EventFilterConditionImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/EventFilterConditionImpl.java index ba1ffcb7c279ff27ca3416ebc088df25e96da744..efe5d185c0e47b6fa84501c7389459b36a01fa66 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/EventFilterConditionImpl.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/EventFilterConditionImpl.java @@ -3,11 +3,11 @@ package ipos.project.DataModellntegration.iPos_Datamodel.impl; import ipos.project.DataModellntegration.iPos_Datamodel.EventFilterCondition; -import ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelFactory; import ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage; import java.util.ArrayList; import java.util.List; +import java.util.Map; import org.eclipse.emf.common.notify.Notification; @@ -25,15 +25,16 @@ import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; * </p> * <ul> * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.EventFilterConditionImpl#getTimeCondition <em>Time Condition</em>}</li> - * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.EventFilterConditionImpl#getCategoryCondition <em>Category Condition</em>}</li> - * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.EventFilterConditionImpl#getIdCondition <em>Id Condition</em>}</li> * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.EventFilterConditionImpl#getAccuracyCondition <em>Accuracy Condition</em>}</li> * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.EventFilterConditionImpl#getPositionCondition <em>Position Condition</em>}</li> * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.EventFilterConditionImpl#getTimeMinInterval <em>Time Min Interval</em>}</li> * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.EventFilterConditionImpl#getPositionDelta <em>Position Delta</em>}</li> * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.EventFilterConditionImpl#getSensorIdCondition <em>Sensor Id Condition</em>}</li> * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.EventFilterConditionImpl#getFilterStructure <em>Filter Structure</em>}</li> - * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.EventFilterConditionImpl#getPositionConditionCell <em>Position Condition Cell</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.EventFilterConditionImpl#getPositionConditionCells <em>Position Condition Cells</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.EventFilterConditionImpl#getIdCondition <em>Id Condition</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.EventFilterConditionImpl#getCategoryCondition <em>Category Condition</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.EventFilterConditionImpl#getPropertyCondition <em>Property Condition</em>}</li> * </ul> * * @generated @@ -59,46 +60,6 @@ public class EventFilterConditionImpl extends MinimalEObjectImpl.Container imple */ protected ArrayList<String[]> timeCondition = TIME_CONDITION_EDEFAULT; - /** - * The default value of the '{@link #getCategoryCondition() <em>Category Condition</em>}' attribute. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @see #getCategoryCondition() - * @generated - * @ordered - */ - protected static final List<String> CATEGORY_CONDITION_EDEFAULT = null; - - /** - * The cached value of the '{@link #getCategoryCondition() <em>Category Condition</em>}' attribute. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @see #getCategoryCondition() - * @generated - * @ordered - */ - protected List<String> categoryCondition = CATEGORY_CONDITION_EDEFAULT; - - /** - * The default value of the '{@link #getIdCondition() <em>Id Condition</em>}' attribute. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @see #getIdCondition() - * @generated - * @ordered - */ - protected static final List<String> ID_CONDITION_EDEFAULT = null; - - /** - * The cached value of the '{@link #getIdCondition() <em>Id Condition</em>}' attribute. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @see #getIdCondition() - * @generated - * @ordered - */ - protected List<String> idCondition = ID_CONDITION_EDEFAULT; - /** * The default value of the '{@link #getAccuracyCondition() <em>Accuracy Condition</em>}' attribute. * <!-- begin-user-doc --> @@ -220,73 +181,82 @@ public class EventFilterConditionImpl extends MinimalEObjectImpl.Container imple protected boolean[] filterStructure = FILTER_STRUCTURE_EDEFAULT; /** - * The default value of the '{@link #getPositionConditionCell() <em>Position Condition Cell</em>}' attribute. + * The cached value of the '{@link #getPositionConditionCells() <em>Position Condition Cells</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @see #getPositionConditionCell() + * @see #getPositionConditionCells() * @generated * @ordered */ - protected static final ArrayList<Float[][]> POSITION_CONDITION_CELL_EDEFAULT = null; + protected Map<String, ArrayList<Float[][]>> positionConditionCells; /** - * The cached value of the '{@link #getPositionConditionCell() <em>Position Condition Cell</em>}' attribute. + * The default value of the '{@link #getIdCondition() <em>Id Condition</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @see #getPositionConditionCell() + * @see #getIdCondition() * @generated * @ordered */ - protected ArrayList<Float[][]> positionConditionCell = POSITION_CONDITION_CELL_EDEFAULT; + protected static final List<String> ID_CONDITION_EDEFAULT = null; /** + * The cached value of the '{@link #getIdCondition() <em>Id Condition</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> + * @see #getIdCondition() * @generated + * @ordered */ - protected EventFilterConditionImpl() { - super(); - } + protected List<String> idCondition = ID_CONDITION_EDEFAULT; + + /** + * The default value of the '{@link #getCategoryCondition() <em>Category Condition</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getCategoryCondition() + * @generated + * @ordered + */ + protected static final List<String> CATEGORY_CONDITION_EDEFAULT = null; /** + * The cached value of the '{@link #getCategoryCondition() <em>Category Condition</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> + * @see #getCategoryCondition() * @generated + * @ordered */ - @Override - protected EClass eStaticClass() { - return IPos_DatamodelPackage.Literals.EVENT_FILTER_CONDITION; - } + protected List<String> categoryCondition = CATEGORY_CONDITION_EDEFAULT; /** + * The default value of the '{@link #getPropertyCondition() <em>Property Condition</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> + * @see #getPropertyCondition() * @generated + * @ordered */ - public ArrayList<String[]> getTimeCondition() { - return timeCondition; - } + protected static final List<String> PROPERTY_CONDITION_EDEFAULT = null; /** + * The cached value of the '{@link #getPropertyCondition() <em>Property Condition</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> + * @see #getPropertyCondition() * @generated + * @ordered */ - public void setTimeCondition(ArrayList<String[]> newTimeCondition) { - ArrayList<String[]> oldTimeCondition = timeCondition; - timeCondition = newTimeCondition; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, - IPos_DatamodelPackage.EVENT_FILTER_CONDITION__TIME_CONDITION, oldTimeCondition, timeCondition)); - } + protected List<String> propertyCondition = PROPERTY_CONDITION_EDEFAULT; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ - public List<String> getCategoryCondition() { - return categoryCondition; + protected EventFilterConditionImpl() { + super(); } /** @@ -294,13 +264,9 @@ public class EventFilterConditionImpl extends MinimalEObjectImpl.Container imple * <!-- end-user-doc --> * @generated */ - public void setCategoryCondition(List<String> newCategoryCondition) { - List<String> oldCategoryCondition = categoryCondition; - categoryCondition = newCategoryCondition; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, - IPos_DatamodelPackage.EVENT_FILTER_CONDITION__CATEGORY_CONDITION, oldCategoryCondition, - categoryCondition)); + @Override + protected EClass eStaticClass() { + return IPos_DatamodelPackage.Literals.EVENT_FILTER_CONDITION; } /** @@ -308,8 +274,8 @@ public class EventFilterConditionImpl extends MinimalEObjectImpl.Container imple * <!-- end-user-doc --> * @generated */ - public List<String> getIdCondition() { - return idCondition; + public ArrayList<String[]> getTimeCondition() { + return timeCondition; } /** @@ -317,12 +283,12 @@ public class EventFilterConditionImpl extends MinimalEObjectImpl.Container imple * <!-- end-user-doc --> * @generated */ - public void setIdCondition(List<String> newIdCondition) { - List<String> oldIdCondition = idCondition; - idCondition = newIdCondition; + public void setTimeCondition(ArrayList<String[]> newTimeCondition) { + ArrayList<String[]> oldTimeCondition = timeCondition; + timeCondition = newTimeCondition; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, - IPos_DatamodelPackage.EVENT_FILTER_CONDITION__ID_CONDITION, oldIdCondition, idCondition)); + IPos_DatamodelPackage.EVENT_FILTER_CONDITION__TIME_CONDITION, oldTimeCondition, timeCondition)); } /** @@ -467,8 +433,8 @@ public class EventFilterConditionImpl extends MinimalEObjectImpl.Container imple * <!-- end-user-doc --> * @generated */ - public ArrayList<Float[][]> getPositionConditionCell() { - return positionConditionCell; + public Map<String, ArrayList<Float[][]>> getPositionConditionCells() { + return positionConditionCells; } /** @@ -476,13 +442,81 @@ public class EventFilterConditionImpl extends MinimalEObjectImpl.Container imple * <!-- end-user-doc --> * @generated */ - public void setPositionConditionCell(ArrayList<Float[][]> newPositionConditionCell) { - ArrayList<Float[][]> oldPositionConditionCell = positionConditionCell; - positionConditionCell = newPositionConditionCell; + public void setPositionConditionCells(Map<String, ArrayList<Float[][]>> newPositionConditionCells) { + Map<String, ArrayList<Float[][]>> oldPositionConditionCells = positionConditionCells; + positionConditionCells = newPositionConditionCells; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, - IPos_DatamodelPackage.EVENT_FILTER_CONDITION__POSITION_CONDITION_CELL, oldPositionConditionCell, - positionConditionCell)); + IPos_DatamodelPackage.EVENT_FILTER_CONDITION__POSITION_CONDITION_CELLS, oldPositionConditionCells, + positionConditionCells)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public List<String> getIdCondition() { + return idCondition; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setIdCondition(List<String> newIdCondition) { + List<String> oldIdCondition = idCondition; + idCondition = newIdCondition; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, + IPos_DatamodelPackage.EVENT_FILTER_CONDITION__ID_CONDITION, oldIdCondition, idCondition)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public List<String> getCategoryCondition() { + return categoryCondition; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setCategoryCondition(List<String> newCategoryCondition) { + List<String> oldCategoryCondition = categoryCondition; + categoryCondition = newCategoryCondition; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, + IPos_DatamodelPackage.EVENT_FILTER_CONDITION__CATEGORY_CONDITION, oldCategoryCondition, + categoryCondition)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public List<String> getPropertyCondition() { + return propertyCondition; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setPropertyCondition(List<String> newPropertyCondition) { + List<String> oldPropertyCondition = propertyCondition; + propertyCondition = newPropertyCondition; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, + IPos_DatamodelPackage.EVENT_FILTER_CONDITION__PROPERTY_CONDITION, oldPropertyCondition, + propertyCondition)); } /** @@ -495,10 +529,6 @@ public class EventFilterConditionImpl extends MinimalEObjectImpl.Container imple switch (featureID) { case IPos_DatamodelPackage.EVENT_FILTER_CONDITION__TIME_CONDITION: return getTimeCondition(); - case IPos_DatamodelPackage.EVENT_FILTER_CONDITION__CATEGORY_CONDITION: - return getCategoryCondition(); - case IPos_DatamodelPackage.EVENT_FILTER_CONDITION__ID_CONDITION: - return getIdCondition(); case IPos_DatamodelPackage.EVENT_FILTER_CONDITION__ACCURACY_CONDITION: return getAccuracyCondition(); case IPos_DatamodelPackage.EVENT_FILTER_CONDITION__POSITION_CONDITION: @@ -511,8 +541,14 @@ public class EventFilterConditionImpl extends MinimalEObjectImpl.Container imple return getSensorIdCondition(); case IPos_DatamodelPackage.EVENT_FILTER_CONDITION__FILTER_STRUCTURE: return getFilterStructure(); - case IPos_DatamodelPackage.EVENT_FILTER_CONDITION__POSITION_CONDITION_CELL: - return getPositionConditionCell(); + case IPos_DatamodelPackage.EVENT_FILTER_CONDITION__POSITION_CONDITION_CELLS: + return getPositionConditionCells(); + case IPos_DatamodelPackage.EVENT_FILTER_CONDITION__ID_CONDITION: + return getIdCondition(); + case IPos_DatamodelPackage.EVENT_FILTER_CONDITION__CATEGORY_CONDITION: + return getCategoryCondition(); + case IPos_DatamodelPackage.EVENT_FILTER_CONDITION__PROPERTY_CONDITION: + return getPropertyCondition(); } return super.eGet(featureID, resolve, coreType); } @@ -529,12 +565,6 @@ public class EventFilterConditionImpl extends MinimalEObjectImpl.Container imple case IPos_DatamodelPackage.EVENT_FILTER_CONDITION__TIME_CONDITION: setTimeCondition((ArrayList<String[]>) newValue); return; - case IPos_DatamodelPackage.EVENT_FILTER_CONDITION__CATEGORY_CONDITION: - setCategoryCondition((List<String>) newValue); - return; - case IPos_DatamodelPackage.EVENT_FILTER_CONDITION__ID_CONDITION: - setIdCondition((List<String>) newValue); - return; case IPos_DatamodelPackage.EVENT_FILTER_CONDITION__ACCURACY_CONDITION: setAccuracyCondition((Float) newValue); return; @@ -553,8 +583,17 @@ public class EventFilterConditionImpl extends MinimalEObjectImpl.Container imple case IPos_DatamodelPackage.EVENT_FILTER_CONDITION__FILTER_STRUCTURE: setFilterStructure((boolean[]) newValue); return; - case IPos_DatamodelPackage.EVENT_FILTER_CONDITION__POSITION_CONDITION_CELL: - setPositionConditionCell((ArrayList<Float[][]>) newValue); + case IPos_DatamodelPackage.EVENT_FILTER_CONDITION__POSITION_CONDITION_CELLS: + setPositionConditionCells((Map<String, ArrayList<Float[][]>>) newValue); + return; + case IPos_DatamodelPackage.EVENT_FILTER_CONDITION__ID_CONDITION: + setIdCondition((List<String>) newValue); + return; + case IPos_DatamodelPackage.EVENT_FILTER_CONDITION__CATEGORY_CONDITION: + setCategoryCondition((List<String>) newValue); + return; + case IPos_DatamodelPackage.EVENT_FILTER_CONDITION__PROPERTY_CONDITION: + setPropertyCondition((List<String>) newValue); return; } super.eSet(featureID, newValue); @@ -571,12 +610,6 @@ public class EventFilterConditionImpl extends MinimalEObjectImpl.Container imple case IPos_DatamodelPackage.EVENT_FILTER_CONDITION__TIME_CONDITION: setTimeCondition(TIME_CONDITION_EDEFAULT); return; - case IPos_DatamodelPackage.EVENT_FILTER_CONDITION__CATEGORY_CONDITION: - setCategoryCondition(CATEGORY_CONDITION_EDEFAULT); - return; - case IPos_DatamodelPackage.EVENT_FILTER_CONDITION__ID_CONDITION: - setIdCondition(ID_CONDITION_EDEFAULT); - return; case IPos_DatamodelPackage.EVENT_FILTER_CONDITION__ACCURACY_CONDITION: setAccuracyCondition(ACCURACY_CONDITION_EDEFAULT); return; @@ -595,8 +628,17 @@ public class EventFilterConditionImpl extends MinimalEObjectImpl.Container imple case IPos_DatamodelPackage.EVENT_FILTER_CONDITION__FILTER_STRUCTURE: setFilterStructure(FILTER_STRUCTURE_EDEFAULT); return; - case IPos_DatamodelPackage.EVENT_FILTER_CONDITION__POSITION_CONDITION_CELL: - setPositionConditionCell(POSITION_CONDITION_CELL_EDEFAULT); + case IPos_DatamodelPackage.EVENT_FILTER_CONDITION__POSITION_CONDITION_CELLS: + setPositionConditionCells((Map<String, ArrayList<Float[][]>>) null); + return; + case IPos_DatamodelPackage.EVENT_FILTER_CONDITION__ID_CONDITION: + setIdCondition(ID_CONDITION_EDEFAULT); + return; + case IPos_DatamodelPackage.EVENT_FILTER_CONDITION__CATEGORY_CONDITION: + setCategoryCondition(CATEGORY_CONDITION_EDEFAULT); + return; + case IPos_DatamodelPackage.EVENT_FILTER_CONDITION__PROPERTY_CONDITION: + setPropertyCondition(PROPERTY_CONDITION_EDEFAULT); return; } super.eUnset(featureID); @@ -613,11 +655,6 @@ public class EventFilterConditionImpl extends MinimalEObjectImpl.Container imple case IPos_DatamodelPackage.EVENT_FILTER_CONDITION__TIME_CONDITION: return TIME_CONDITION_EDEFAULT == null ? timeCondition != null : !TIME_CONDITION_EDEFAULT.equals(timeCondition); - case IPos_DatamodelPackage.EVENT_FILTER_CONDITION__CATEGORY_CONDITION: - return CATEGORY_CONDITION_EDEFAULT == null ? categoryCondition != null - : !CATEGORY_CONDITION_EDEFAULT.equals(categoryCondition); - case IPos_DatamodelPackage.EVENT_FILTER_CONDITION__ID_CONDITION: - return ID_CONDITION_EDEFAULT == null ? idCondition != null : !ID_CONDITION_EDEFAULT.equals(idCondition); case IPos_DatamodelPackage.EVENT_FILTER_CONDITION__ACCURACY_CONDITION: return accuracyCondition != ACCURACY_CONDITION_EDEFAULT; case IPos_DatamodelPackage.EVENT_FILTER_CONDITION__POSITION_CONDITION: @@ -633,9 +670,16 @@ public class EventFilterConditionImpl extends MinimalEObjectImpl.Container imple case IPos_DatamodelPackage.EVENT_FILTER_CONDITION__FILTER_STRUCTURE: return FILTER_STRUCTURE_EDEFAULT == null ? filterStructure != null : !FILTER_STRUCTURE_EDEFAULT.equals(filterStructure); - case IPos_DatamodelPackage.EVENT_FILTER_CONDITION__POSITION_CONDITION_CELL: - return POSITION_CONDITION_CELL_EDEFAULT == null ? positionConditionCell != null - : !POSITION_CONDITION_CELL_EDEFAULT.equals(positionConditionCell); + case IPos_DatamodelPackage.EVENT_FILTER_CONDITION__POSITION_CONDITION_CELLS: + return positionConditionCells != null; + case IPos_DatamodelPackage.EVENT_FILTER_CONDITION__ID_CONDITION: + return ID_CONDITION_EDEFAULT == null ? idCondition != null : !ID_CONDITION_EDEFAULT.equals(idCondition); + case IPos_DatamodelPackage.EVENT_FILTER_CONDITION__CATEGORY_CONDITION: + return CATEGORY_CONDITION_EDEFAULT == null ? categoryCondition != null + : !CATEGORY_CONDITION_EDEFAULT.equals(categoryCondition); + case IPos_DatamodelPackage.EVENT_FILTER_CONDITION__PROPERTY_CONDITION: + return PROPERTY_CONDITION_EDEFAULT == null ? propertyCondition != null + : !PROPERTY_CONDITION_EDEFAULT.equals(propertyCondition); } return super.eIsSet(featureID); } @@ -653,10 +697,6 @@ public class EventFilterConditionImpl extends MinimalEObjectImpl.Container imple StringBuilder result = new StringBuilder(super.toString()); result.append(" (timeCondition: "); result.append(timeCondition); - result.append(", categoryCondition: "); - result.append(categoryCondition); - result.append(", idCondition: "); - result.append(idCondition); result.append(", accuracyCondition: "); result.append(accuracyCondition); result.append(", positionCondition: "); @@ -669,8 +709,14 @@ public class EventFilterConditionImpl extends MinimalEObjectImpl.Container imple result.append(sensorIdCondition); result.append(", filterStructure: "); result.append(filterStructure); - result.append(", positionConditionCell: "); - result.append(positionConditionCell); + result.append(", positionConditionCells: "); + result.append(positionConditionCells); + result.append(", idCondition: "); + result.append(idCondition); + result.append(", categoryCondition: "); + result.append(categoryCondition); + result.append(", propertyCondition: "); + result.append(propertyCondition); result.append(')'); return result.toString(); } diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/EventFilterConfigurationImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/EventFilterConfigurationImpl.java index dff71e1af62b26c8a9a39ac1c68b592eda5cfd68..5c97820d652304ddc106f6343bb5f4110cdcf726 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/EventFilterConfigurationImpl.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/EventFilterConfigurationImpl.java @@ -2,10 +2,10 @@ */ package ipos.project.DataModellntegration.iPos_Datamodel.impl; -import ipos.project.DataModellntegration.iPos_Datamodel.EventFilterCondition; import ipos.project.DataModellntegration.iPos_Datamodel.EventFilterConfiguration; import ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage; +import ipos.project.DataModellntegration.iPos_Datamodel.TrackingTask; import java.util.Collection; import java.util.Map; @@ -86,7 +86,7 @@ public class EventFilterConfigurationImpl extends MinimalEObjectImpl.Container i * @generated * @ordered */ - protected EList<EventFilterCondition> eventfiltercondition; + protected EList<TrackingTask> eventfiltercondition; /** * <!-- begin-user-doc --> @@ -181,9 +181,9 @@ public class EventFilterConfigurationImpl extends MinimalEObjectImpl.Container i * <!-- end-user-doc --> * @generated */ - public EList<EventFilterCondition> getEventfiltercondition() { + public EList<TrackingTask> getEventfiltercondition() { if (eventfiltercondition == null) { - eventfiltercondition = new EObjectResolvingEList<EventFilterCondition>(EventFilterCondition.class, this, + eventfiltercondition = new EObjectResolvingEList<TrackingTask>(TrackingTask.class, this, IPos_DatamodelPackage.EVENT_FILTER_CONFIGURATION__EVENTFILTERCONDITION); } return eventfiltercondition; @@ -229,7 +229,7 @@ public class EventFilterConfigurationImpl extends MinimalEObjectImpl.Container i return; case IPos_DatamodelPackage.EVENT_FILTER_CONFIGURATION__EVENTFILTERCONDITION: getEventfiltercondition().clear(); - getEventfiltercondition().addAll((Collection<? extends EventFilterCondition>) newValue); + getEventfiltercondition().addAll((Collection<? extends TrackingTask>) newValue); return; } super.eSet(featureID, newValue); diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/IMUImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/IMUImpl.java index 296edc007eea1008dabc41eae055bc6b4f791994..774e5906e891669260432083438691ad30ddaf6d 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/IMUImpl.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/IMUImpl.java @@ -3,9 +3,9 @@ package ipos.project.DataModellntegration.iPos_Datamodel.impl; import ipos.project.DataModellntegration.iPos_Datamodel.Acceleration; -import ipos.project.DataModellntegration.iPos_Datamodel.AngularRate; import ipos.project.DataModellntegration.iPos_Datamodel.IMU; import ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage; +import ipos.project.DataModellntegration.iPos_Datamodel.Quaternion; import org.eclipse.emf.common.notify.Notification; @@ -24,11 +24,12 @@ import org.eclipse.emf.ecore.impl.ENotificationImpl; * <ul> * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.IMUImpl#getAngularrate <em>Angularrate</em>}</li> * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.IMUImpl#getAcceleration <em>Acceleration</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.IMUImpl#getSensorId <em>Sensor Id</em>}</li> * </ul> * * @generated */ -public class IMUImpl extends RawdataImpl implements IMU { +public class IMUImpl extends RawdataEventImpl implements IMU { /** * The cached value of the '{@link #getAngularrate() <em>Angularrate</em>}' reference. * <!-- begin-user-doc --> @@ -37,7 +38,7 @@ public class IMUImpl extends RawdataImpl implements IMU { * @generated * @ordered */ - protected AngularRate angularrate; + protected Quaternion angularrate; /** * The cached value of the '{@link #getAcceleration() <em>Acceleration</em>}' reference. @@ -49,6 +50,26 @@ public class IMUImpl extends RawdataImpl implements IMU { */ protected Acceleration acceleration; + /** + * The default value of the '{@link #getSensorId() <em>Sensor Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSensorId() + * @generated + * @ordered + */ + protected static final String SENSOR_ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getSensorId() <em>Sensor Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSensorId() + * @generated + * @ordered + */ + protected String sensorId = SENSOR_ID_EDEFAULT; + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -73,10 +94,10 @@ public class IMUImpl extends RawdataImpl implements IMU { * <!-- end-user-doc --> * @generated */ - public AngularRate getAngularrate() { + public Quaternion getAngularrate() { if (angularrate != null && angularrate.eIsProxy()) { InternalEObject oldAngularrate = (InternalEObject) angularrate; - angularrate = (AngularRate) eResolveProxy(oldAngularrate); + angularrate = (Quaternion) eResolveProxy(oldAngularrate); if (angularrate != oldAngularrate) { if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.RESOLVE, IPos_DatamodelPackage.IMU__ANGULARRATE, @@ -91,7 +112,7 @@ public class IMUImpl extends RawdataImpl implements IMU { * <!-- end-user-doc --> * @generated */ - public AngularRate basicGetAngularrate() { + public Quaternion basicGetAngularrate() { return angularrate; } @@ -100,8 +121,8 @@ public class IMUImpl extends RawdataImpl implements IMU { * <!-- end-user-doc --> * @generated */ - public void setAngularrate(AngularRate newAngularrate) { - AngularRate oldAngularrate = angularrate; + public void setAngularrate(Quaternion newAngularrate) { + Quaternion oldAngularrate = angularrate; angularrate = newAngularrate; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, IPos_DatamodelPackage.IMU__ANGULARRATE, @@ -148,6 +169,28 @@ public class IMUImpl extends RawdataImpl implements IMU { oldAcceleration, acceleration)); } + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getSensorId() { + return sensorId; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setSensorId(String newSensorId) { + String oldSensorId = sensorId; + sensorId = newSensorId; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, IPos_DatamodelPackage.IMU__SENSOR_ID, oldSensorId, + sensorId)); + } + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -164,6 +207,8 @@ public class IMUImpl extends RawdataImpl implements IMU { if (resolve) return getAcceleration(); return basicGetAcceleration(); + case IPos_DatamodelPackage.IMU__SENSOR_ID: + return getSensorId(); } return super.eGet(featureID, resolve, coreType); } @@ -177,11 +222,14 @@ public class IMUImpl extends RawdataImpl implements IMU { public void eSet(int featureID, Object newValue) { switch (featureID) { case IPos_DatamodelPackage.IMU__ANGULARRATE: - setAngularrate((AngularRate) newValue); + setAngularrate((Quaternion) newValue); return; case IPos_DatamodelPackage.IMU__ACCELERATION: setAcceleration((Acceleration) newValue); return; + case IPos_DatamodelPackage.IMU__SENSOR_ID: + setSensorId((String) newValue); + return; } super.eSet(featureID, newValue); } @@ -195,11 +243,14 @@ public class IMUImpl extends RawdataImpl implements IMU { public void eUnset(int featureID) { switch (featureID) { case IPos_DatamodelPackage.IMU__ANGULARRATE: - setAngularrate((AngularRate) null); + setAngularrate((Quaternion) null); return; case IPos_DatamodelPackage.IMU__ACCELERATION: setAcceleration((Acceleration) null); return; + case IPos_DatamodelPackage.IMU__SENSOR_ID: + setSensorId(SENSOR_ID_EDEFAULT); + return; } super.eUnset(featureID); } @@ -216,8 +267,27 @@ public class IMUImpl extends RawdataImpl implements IMU { return angularrate != null; case IPos_DatamodelPackage.IMU__ACCELERATION: return acceleration != null; + case IPos_DatamodelPackage.IMU__SENSOR_ID: + return SENSOR_ID_EDEFAULT == null ? sensorId != null : !SENSOR_ID_EDEFAULT.equals(sensorId); } return super.eIsSet(featureID); } + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (sensorId: "); + result.append(sensorId); + result.append(')'); + return result.toString(); + } + } //IMUImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/IPos_DatamodelFactoryImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/IPos_DatamodelFactoryImpl.java index ae77213762830574dbd3807475ca09381bb89b70..9813f0d08fa8b7cdd6e960ede6b33415657b3477 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/IPos_DatamodelFactoryImpl.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/IPos_DatamodelFactoryImpl.java @@ -5,6 +5,8 @@ package ipos.project.DataModellntegration.iPos_Datamodel.impl; import ipos.project.DataModellntegration.iPos_Datamodel.*; import java.util.ArrayList; +import java.util.HashMap; +import java.util.LinkedList; import java.util.List; import org.eclipse.emf.ecore.EClass; @@ -66,18 +68,12 @@ public class IPos_DatamodelFactoryImpl extends EFactoryImpl implements IPos_Data return createEntity(); case IPos_DatamodelPackage.LOCALIZABLE_OBJECT: return createLocalizableObject(); - case IPos_DatamodelPackage.POSITION_SENSOR: - return createPositionSensor(); case IPos_DatamodelPackage.PLACING: return createPlacing(); case IPos_DatamodelPackage.POSITION: return createPosition(); case IPos_DatamodelPackage.ORIENTATION: return createOrientation(); - case IPos_DatamodelPackage.ABSOLUTE_POSITION: - return createAbsolutePosition(); - case IPos_DatamodelPackage.RELATIVE_POSITION: - return createRelativePosition(); case IPos_DatamodelPackage.WGS84_POINT: return createWGS84Point(); case IPos_DatamodelPackage.ACCURACY: @@ -96,14 +92,14 @@ public class IPos_DatamodelFactoryImpl extends EFactoryImpl implements IPos_Data return createSpace(); case IPos_DatamodelPackage.MAP_TYPE: return createMapType(); - case IPos_DatamodelPackage.NETWORK_INTERFACE: - return createNetworkInterface(); case IPos_DatamodelPackage.QUATERNION: return createQuaternion(); case IPos_DatamodelPackage.GAUSSIAN: return createGaussian(); case IPos_DatamodelPackage.POINT: return createPoint(); + case IPos_DatamodelPackage.RAWDATA_EVENT: + return createRawdataEvent(); case IPos_DatamodelPackage.PROXIMITY: return createProximity(); case IPos_DatamodelPackage.RFID: @@ -112,32 +108,14 @@ public class IPos_DatamodelFactoryImpl extends EFactoryImpl implements IPos_Data return createNFC(); case IPos_DatamodelPackage.IMU: return createIMU(); - case IPos_DatamodelPackage.ANGULAR_RATE: - return createAngularRate(); case IPos_DatamodelPackage.ACCELERATION: return createAcceleration(); case IPos_DatamodelPackage.BEACON: return createBeacon(); case IPos_DatamodelPackage.POSITION_EVENT: return createPositionEvent(); - case IPos_DatamodelPackage.RAWDATA_EVENT: - return createRawdataEvent(); - case IPos_DatamodelPackage.TRACKING_REQUEST: - return createTrackingRequest(); - case IPos_DatamodelPackage.MONITORING_REQUEST: - return createMonitoringRequest(); - case IPos_DatamodelPackage.WORLD_MODEL_UPDATE_REQUEST: - return createWorldModelUpdateRequest(); - case IPos_DatamodelPackage.DATA_STORAGE_REQUEST: - return createDataStorageRequest(); case IPos_DatamodelPackage.EVENT_FILTER_CONFIGURATION: return createEventFilterConfiguration(); - case IPos_DatamodelPackage.WORLD_MODEL_QUERY_REQUEST: - return createWorldModelQueryRequest(); - case IPos_DatamodelPackage.DATA_STORAGE_QUERY_REQUEST: - return createDataStorageQueryRequest(); - case IPos_DatamodelPackage.AGENT_REGISTRATION_REQUEST: - return createAgentRegistrationRequest(); case IPos_DatamodelPackage.MONITORING_TASK: return createMonitoringTask(); case IPos_DatamodelPackage.TRACKING_TASK: @@ -152,14 +130,18 @@ public class IPos_DatamodelFactoryImpl extends EFactoryImpl implements IPos_Data return createBluetooth(); case IPos_DatamodelPackage.UWB: return createUWB(); - case IPos_DatamodelPackage.SENSOR_CONFIGURATION_REQUEST: - return createSensorConfigurationRequest(); case IPos_DatamodelPackage.OTHER_BEACON: return createOtherBeacon(); - case IPos_DatamodelPackage.REFERENCE_POSITION: - return createReferencePosition(); + case IPos_DatamodelPackage.POI: + return createPOI(); case IPos_DatamodelPackage.EVENT_FILTER_CONDITION: return createEventFilterCondition(); + case IPos_DatamodelPackage.ZONE_DESCRIPTOR: + return createZoneDescriptor(); + case IPos_DatamodelPackage.DATA_STORAGE_QUERY_RESPONSE: + return createDataStorageQueryResponse(); + case IPos_DatamodelPackage.MESSAGE_RECEIVED_EVENT: + return createMessageReceivedEvent(); default: throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); } @@ -183,6 +165,12 @@ public class IPos_DatamodelFactoryImpl extends EFactoryImpl implements IPos_Data return createBooleanListFromString(eDataType, initialValue); case IPos_DatamodelPackage.FLOAT_ARRAY: return createFloatArrayFromString(eDataType, initialValue); + case IPos_DatamodelPackage.BYTE_ARRAY: + return createByteArrayFromString(eDataType, initialValue); + case IPos_DatamodelPackage.LIST_OF_STRING_MAPS: + return createListOfStringMapsFromString(eDataType, initialValue); + case IPos_DatamodelPackage.INT_ARRAY: + return createIntArrayFromString(eDataType, initialValue); default: throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier"); } @@ -206,6 +194,12 @@ public class IPos_DatamodelFactoryImpl extends EFactoryImpl implements IPos_Data return convertBooleanListToString(eDataType, instanceValue); case IPos_DatamodelPackage.FLOAT_ARRAY: return convertFloatArrayToString(eDataType, instanceValue); + case IPos_DatamodelPackage.BYTE_ARRAY: + return convertByteArrayToString(eDataType, instanceValue); + case IPos_DatamodelPackage.LIST_OF_STRING_MAPS: + return convertListOfStringMapsToString(eDataType, instanceValue); + case IPos_DatamodelPackage.INT_ARRAY: + return convertIntArrayToString(eDataType, instanceValue); default: throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier"); } @@ -241,16 +235,6 @@ public class IPos_DatamodelFactoryImpl extends EFactoryImpl implements IPos_Data return localizableObject; } - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public PositionSensor createPositionSensor() { - PositionSensorImpl positionSensor = new PositionSensorImpl(); - return positionSensor; - } - /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -281,26 +265,6 @@ public class IPos_DatamodelFactoryImpl extends EFactoryImpl implements IPos_Data return orientation; } - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public AbsolutePosition createAbsolutePosition() { - AbsolutePositionImpl absolutePosition = new AbsolutePositionImpl(); - return absolutePosition; - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public RelativePosition createRelativePosition() { - RelativePositionImpl relativePosition = new RelativePositionImpl(); - return relativePosition; - } - /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -391,16 +355,6 @@ public class IPos_DatamodelFactoryImpl extends EFactoryImpl implements IPos_Data return mapType; } - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public NetworkInterface createNetworkInterface() { - NetworkInterfaceImpl networkInterface = new NetworkInterfaceImpl(); - return networkInterface; - } - /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -431,6 +385,16 @@ public class IPos_DatamodelFactoryImpl extends EFactoryImpl implements IPos_Data return point; } + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public RawdataEvent createRawdataEvent() { + RawdataEventImpl rawdataEvent = new RawdataEventImpl(); + return rawdataEvent; + } + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -471,16 +435,6 @@ public class IPos_DatamodelFactoryImpl extends EFactoryImpl implements IPos_Data return imu; } - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public AngularRate createAngularRate() { - AngularRateImpl angularRate = new AngularRateImpl(); - return angularRate; - } - /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -516,9 +470,9 @@ public class IPos_DatamodelFactoryImpl extends EFactoryImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public RawdataEvent createRawdataEvent() { - RawdataEventImpl rawdataEvent = new RawdataEventImpl(); - return rawdataEvent; + public EventFilterConfiguration createEventFilterConfiguration() { + EventFilterConfigurationImpl eventFilterConfiguration = new EventFilterConfigurationImpl(); + return eventFilterConfiguration; } /** @@ -526,9 +480,9 @@ public class IPos_DatamodelFactoryImpl extends EFactoryImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public TrackingRequest createTrackingRequest() { - TrackingRequestImpl trackingRequest = new TrackingRequestImpl(); - return trackingRequest; + public MonitoringTask createMonitoringTask() { + MonitoringTaskImpl monitoringTask = new MonitoringTaskImpl(); + return monitoringTask; } /** @@ -536,9 +490,9 @@ public class IPos_DatamodelFactoryImpl extends EFactoryImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public MonitoringRequest createMonitoringRequest() { - MonitoringRequestImpl monitoringRequest = new MonitoringRequestImpl(); - return monitoringRequest; + public TrackingTask createTrackingTask() { + TrackingTaskImpl trackingTask = new TrackingTaskImpl(); + return trackingTask; } /** @@ -546,9 +500,9 @@ public class IPos_DatamodelFactoryImpl extends EFactoryImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public WorldModelUpdateRequest createWorldModelUpdateRequest() { - WorldModelUpdateRequestImpl worldModelUpdateRequest = new WorldModelUpdateRequestImpl(); - return worldModelUpdateRequest; + public WorldModel createWorldModel() { + WorldModelImpl worldModel = new WorldModelImpl(); + return worldModel; } /** @@ -556,9 +510,9 @@ public class IPos_DatamodelFactoryImpl extends EFactoryImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public DataStorageRequest createDataStorageRequest() { - DataStorageRequestImpl dataStorageRequest = new DataStorageRequestImpl(); - return dataStorageRequest; + public Barcode createBarcode() { + BarcodeImpl barcode = new BarcodeImpl(); + return barcode; } /** @@ -566,9 +520,9 @@ public class IPos_DatamodelFactoryImpl extends EFactoryImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public EventFilterConfiguration createEventFilterConfiguration() { - EventFilterConfigurationImpl eventFilterConfiguration = new EventFilterConfigurationImpl(); - return eventFilterConfiguration; + public OtherProx createOtherProx() { + OtherProxImpl otherProx = new OtherProxImpl(); + return otherProx; } /** @@ -576,9 +530,9 @@ public class IPos_DatamodelFactoryImpl extends EFactoryImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public WorldModelQueryRequest createWorldModelQueryRequest() { - WorldModelQueryRequestImpl worldModelQueryRequest = new WorldModelQueryRequestImpl(); - return worldModelQueryRequest; + public Bluetooth createBluetooth() { + BluetoothImpl bluetooth = new BluetoothImpl(); + return bluetooth; } /** @@ -586,9 +540,9 @@ public class IPos_DatamodelFactoryImpl extends EFactoryImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public DataStorageQueryRequest createDataStorageQueryRequest() { - DataStorageQueryRequestImpl dataStorageQueryRequest = new DataStorageQueryRequestImpl(); - return dataStorageQueryRequest; + public UWB createUWB() { + UWBImpl uwb = new UWBImpl(); + return uwb; } /** @@ -596,9 +550,9 @@ public class IPos_DatamodelFactoryImpl extends EFactoryImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public AgentRegistrationRequest createAgentRegistrationRequest() { - AgentRegistrationRequestImpl agentRegistrationRequest = new AgentRegistrationRequestImpl(); - return agentRegistrationRequest; + public OtherBeacon createOtherBeacon() { + OtherBeaconImpl otherBeacon = new OtherBeaconImpl(); + return otherBeacon; } /** @@ -606,9 +560,9 @@ public class IPos_DatamodelFactoryImpl extends EFactoryImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public MonitoringTask createMonitoringTask() { - MonitoringTaskImpl monitoringTask = new MonitoringTaskImpl(); - return monitoringTask; + public POI createPOI() { + POIImpl poi = new POIImpl(); + return poi; } /** @@ -616,9 +570,9 @@ public class IPos_DatamodelFactoryImpl extends EFactoryImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public TrackingTask createTrackingTask() { - TrackingTaskImpl trackingTask = new TrackingTaskImpl(); - return trackingTask; + public EventFilterCondition createEventFilterCondition() { + EventFilterConditionImpl eventFilterCondition = new EventFilterConditionImpl(); + return eventFilterCondition; } /** @@ -626,9 +580,9 @@ public class IPos_DatamodelFactoryImpl extends EFactoryImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public WorldModel createWorldModel() { - WorldModelImpl worldModel = new WorldModelImpl(); - return worldModel; + public ZoneDescriptor createZoneDescriptor() { + ZoneDescriptorImpl zoneDescriptor = new ZoneDescriptorImpl(); + return zoneDescriptor; } /** @@ -636,9 +590,9 @@ public class IPos_DatamodelFactoryImpl extends EFactoryImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public Barcode createBarcode() { - BarcodeImpl barcode = new BarcodeImpl(); - return barcode; + public DataStorageQueryResponse createDataStorageQueryResponse() { + DataStorageQueryResponseImpl dataStorageQueryResponse = new DataStorageQueryResponseImpl(); + return dataStorageQueryResponse; } /** @@ -646,9 +600,9 @@ public class IPos_DatamodelFactoryImpl extends EFactoryImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public OtherProx createOtherProx() { - OtherProxImpl otherProx = new OtherProxImpl(); - return otherProx; + public MessageReceivedEvent createMessageReceivedEvent() { + MessageReceivedEventImpl messageReceivedEvent = new MessageReceivedEventImpl(); + return messageReceivedEvent; } /** @@ -656,9 +610,9 @@ public class IPos_DatamodelFactoryImpl extends EFactoryImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public Bluetooth createBluetooth() { - BluetoothImpl bluetooth = new BluetoothImpl(); - return bluetooth; + @SuppressWarnings("unchecked") + public List<String> createStringListFromString(EDataType eDataType, String initialValue) { + return (List<String>) super.createFromString(initialValue); } /** @@ -666,9 +620,8 @@ public class IPos_DatamodelFactoryImpl extends EFactoryImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public UWB createUWB() { - UWBImpl uwb = new UWBImpl(); - return uwb; + public String convertStringListToString(EDataType eDataType, Object instanceValue) { + return super.convertToString(instanceValue); } /** @@ -676,9 +629,9 @@ public class IPos_DatamodelFactoryImpl extends EFactoryImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public SensorConfigurationRequest createSensorConfigurationRequest() { - SensorConfigurationRequestImpl sensorConfigurationRequest = new SensorConfigurationRequestImpl(); - return sensorConfigurationRequest; + @SuppressWarnings("unchecked") + public ArrayList<String[]> createStringArrayFromString(EDataType eDataType, String initialValue) { + return (ArrayList<String[]>) super.createFromString(initialValue); } /** @@ -686,9 +639,8 @@ public class IPos_DatamodelFactoryImpl extends EFactoryImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public OtherBeacon createOtherBeacon() { - OtherBeaconImpl otherBeacon = new OtherBeaconImpl(); - return otherBeacon; + public String convertStringArrayToString(EDataType eDataType, Object instanceValue) { + return super.convertToString(instanceValue); } /** @@ -696,9 +648,9 @@ public class IPos_DatamodelFactoryImpl extends EFactoryImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public ReferencePosition createReferencePosition() { - ReferencePositionImpl referencePosition = new ReferencePositionImpl(); - return referencePosition; + @SuppressWarnings("unchecked") + public ArrayList<Float[][]> createFloatArray3dFromString(EDataType eDataType, String initialValue) { + return (ArrayList<Float[][]>) super.createFromString(initialValue); } /** @@ -706,9 +658,8 @@ public class IPos_DatamodelFactoryImpl extends EFactoryImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public EventFilterCondition createEventFilterCondition() { - EventFilterConditionImpl eventFilterCondition = new EventFilterConditionImpl(); - return eventFilterCondition; + public String convertFloatArray3dToString(EDataType eDataType, Object instanceValue) { + return super.convertToString(instanceValue); } /** @@ -716,9 +667,8 @@ public class IPos_DatamodelFactoryImpl extends EFactoryImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - @SuppressWarnings("unchecked") - public List<String> createStringListFromString(EDataType eDataType, String initialValue) { - return (List<String>) super.createFromString(initialValue); + public boolean[] createBooleanListFromString(EDataType eDataType, String initialValue) { + return (boolean[]) super.createFromString(initialValue); } /** @@ -726,7 +676,7 @@ public class IPos_DatamodelFactoryImpl extends EFactoryImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public String convertStringListToString(EDataType eDataType, Object instanceValue) { + public String convertBooleanListToString(EDataType eDataType, Object instanceValue) { return super.convertToString(instanceValue); } @@ -736,8 +686,8 @@ public class IPos_DatamodelFactoryImpl extends EFactoryImpl implements IPos_Data * @generated */ @SuppressWarnings("unchecked") - public ArrayList<String[]> createStringArrayFromString(EDataType eDataType, String initialValue) { - return (ArrayList<String[]>) super.createFromString(initialValue); + public ArrayList<Float[]> createFloatArrayFromString(EDataType eDataType, String initialValue) { + return (ArrayList<Float[]>) super.createFromString(initialValue); } /** @@ -745,7 +695,7 @@ public class IPos_DatamodelFactoryImpl extends EFactoryImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public String convertStringArrayToString(EDataType eDataType, Object instanceValue) { + public String convertFloatArrayToString(EDataType eDataType, Object instanceValue) { return super.convertToString(instanceValue); } @@ -754,9 +704,8 @@ public class IPos_DatamodelFactoryImpl extends EFactoryImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - @SuppressWarnings("unchecked") - public ArrayList<Float[][]> createFloatArray3dFromString(EDataType eDataType, String initialValue) { - return (ArrayList<Float[][]>) super.createFromString(initialValue); + public byte[] createByteArrayFromString(EDataType eDataType, String initialValue) { + return (byte[]) super.createFromString(initialValue); } /** @@ -764,7 +713,7 @@ public class IPos_DatamodelFactoryImpl extends EFactoryImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public String convertFloatArray3dToString(EDataType eDataType, Object instanceValue) { + public String convertByteArrayToString(EDataType eDataType, Object instanceValue) { return super.convertToString(instanceValue); } @@ -773,8 +722,10 @@ public class IPos_DatamodelFactoryImpl extends EFactoryImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public boolean[] createBooleanListFromString(EDataType eDataType, String initialValue) { - return (boolean[]) super.createFromString(initialValue); + @SuppressWarnings("unchecked") + public LinkedList<HashMap<String, String>> createListOfStringMapsFromString(EDataType eDataType, + String initialValue) { + return (LinkedList<HashMap<String, String>>) super.createFromString(initialValue); } /** @@ -782,7 +733,7 @@ public class IPos_DatamodelFactoryImpl extends EFactoryImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public String convertBooleanListToString(EDataType eDataType, Object instanceValue) { + public String convertListOfStringMapsToString(EDataType eDataType, Object instanceValue) { return super.convertToString(instanceValue); } @@ -791,9 +742,8 @@ public class IPos_DatamodelFactoryImpl extends EFactoryImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - @SuppressWarnings("unchecked") - public ArrayList<Float[]> createFloatArrayFromString(EDataType eDataType, String initialValue) { - return (ArrayList<Float[]>) super.createFromString(initialValue); + public int[] createIntArrayFromString(EDataType eDataType, String initialValue) { + return (int[]) super.createFromString(initialValue); } /** @@ -801,7 +751,7 @@ public class IPos_DatamodelFactoryImpl extends EFactoryImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public String convertFloatArrayToString(EDataType eDataType, Object instanceValue) { + public String convertIntArrayToString(EDataType eDataType, Object instanceValue) { return super.convertToString(instanceValue); } diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/IPos_DatamodelPackageImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/IPos_DatamodelPackageImpl.java index b7fb9a8a4b044dedb69d0817d31910001f358c34..7d86cc238dcfe5bc3f7d31cce5a65029c457fe1a 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/IPos_DatamodelPackageImpl.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/IPos_DatamodelPackageImpl.java @@ -2,28 +2,35 @@ */ package ipos.project.DataModellntegration.iPos_Datamodel.impl; -import ipos.project.DataModellntegration.iPos_Datamodel.AbsolutePosition; import ipos.project.DataModellntegration.iPos_Datamodel.Acceleration; import ipos.project.DataModellntegration.iPos_Datamodel.Accuracy; import ipos.project.DataModellntegration.iPos_Datamodel.Agent; -import ipos.project.DataModellntegration.iPos_Datamodel.AgentRegistrationRequest; -import ipos.project.DataModellntegration.iPos_Datamodel.AngularRate; import ipos.project.DataModellntegration.iPos_Datamodel.Barcode; import ipos.project.DataModellntegration.iPos_Datamodel.Beacon; import ipos.project.DataModellntegration.iPos_Datamodel.Bluetooth; -import ipos.project.DataModellntegration.iPos_Datamodel.DataStorageQueryRequest; -import ipos.project.DataModellntegration.iPos_Datamodel.DataStorageRequest; +import ipos.project.DataModellntegration.iPos_Datamodel.DataStorageQueryResponse; import ipos.project.DataModellntegration.iPos_Datamodel.Entity; import ipos.project.DataModellntegration.iPos_Datamodel.EventFilterCondition; import ipos.project.DataModellntegration.iPos_Datamodel.EventFilterConfiguration; import ipos.project.DataModellntegration.iPos_Datamodel.Gaussian; + +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitPackage; + +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.impl.IPosDevKitPackageImpl; + import ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelFactory; import ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage; import ipos.project.DataModellntegration.iPos_Datamodel.LocalizableObject; import ipos.project.DataModellntegration.iPos_Datamodel.MapType; -import ipos.project.DataModellntegration.iPos_Datamodel.MonitoringRequest; +import ipos.project.DataModellntegration.iPos_Datamodel.MessageReceivedEvent; import ipos.project.DataModellntegration.iPos_Datamodel.MonitoringTask; -import ipos.project.DataModellntegration.iPos_Datamodel.NetworkInterface; + +import ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.OFBizPackage; + +import ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.impl.OFBizPackageImpl; + +import ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMPackage; +import ipos.project.DataModellntegration.iPos_Datamodel.OSM.impl.OSMPackageImpl; import ipos.project.DataModellntegration.iPos_Datamodel.Orientation; import ipos.project.DataModellntegration.iPos_Datamodel.OtherBeacon; import ipos.project.DataModellntegration.iPos_Datamodel.OtherProx; @@ -33,26 +40,24 @@ import ipos.project.DataModellntegration.iPos_Datamodel.Point2D; import ipos.project.DataModellntegration.iPos_Datamodel.Point3D; import ipos.project.DataModellntegration.iPos_Datamodel.Position; import ipos.project.DataModellntegration.iPos_Datamodel.PositionEvent; -import ipos.project.DataModellntegration.iPos_Datamodel.PositionSensor; import ipos.project.DataModellntegration.iPos_Datamodel.Proximity; import ipos.project.DataModellntegration.iPos_Datamodel.Quaternion; -import ipos.project.DataModellntegration.iPos_Datamodel.Rawdata; import ipos.project.DataModellntegration.iPos_Datamodel.RawdataEvent; -import ipos.project.DataModellntegration.iPos_Datamodel.ReferencePosition; import ipos.project.DataModellntegration.iPos_Datamodel.ReferenceSystem; -import ipos.project.DataModellntegration.iPos_Datamodel.RelativePosition; -import ipos.project.DataModellntegration.iPos_Datamodel.SensorConfigurationRequest; import ipos.project.DataModellntegration.iPos_Datamodel.Space; -import ipos.project.DataModellntegration.iPos_Datamodel.TrackingRequest; +import ipos.project.DataModellntegration.iPos_Datamodel.Tooz.ToozPackage; +import ipos.project.DataModellntegration.iPos_Datamodel.Tooz.impl.ToozPackageImpl; import ipos.project.DataModellntegration.iPos_Datamodel.TrackingTask; +import ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.VDA5050Package; +import ipos.project.DataModellntegration.iPos_Datamodel.VDA5050.impl.VDA5050PackageImpl; import ipos.project.DataModellntegration.iPos_Datamodel.WGS84Point; import ipos.project.DataModellntegration.iPos_Datamodel.WorldModel; -import ipos.project.DataModellntegration.iPos_Datamodel.WorldModelQueryRequest; -import ipos.project.DataModellntegration.iPos_Datamodel.WorldModelUpdateRequest; import ipos.project.DataModellntegration.iPos_Datamodel.Zone; +import ipos.project.DataModellntegration.iPos_Datamodel.ZoneDescriptor; import ipos.project.DataModellntegration.iPos_Datamodel.ZoneMap; import java.util.ArrayList; +import java.util.LinkedList; import java.util.List; import org.eclipse.emf.ecore.EAttribute; @@ -94,13 +99,6 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data */ private EClass localizableObjectEClass = null; - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - private EClass positionSensorEClass = null; - /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -122,20 +120,6 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data */ private EClass orientationEClass = null; - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - private EClass absolutePositionEClass = null; - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - private EClass relativePositionEClass = null; - /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -199,13 +183,6 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data */ private EClass mapTypeEClass = null; - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - private EClass networkInterfaceEClass = null; - /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -232,7 +209,7 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - private EClass rawdataEClass = null; + private EClass rawdataEventEClass = null; /** * <!-- begin-user-doc --> @@ -262,13 +239,6 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data */ private EClass imuEClass = null; - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - private EClass angularRateEClass = null; - /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -295,175 +265,154 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - private EClass rawdataEventEClass = null; - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - private EClass trackingRequestEClass = null; - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - private EClass monitoringRequestEClass = null; - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - private EClass worldModelUpdateRequestEClass = null; + private EClass eventFilterConfigurationEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ - private EClass dataStorageRequestEClass = null; + private EClass monitoringTaskEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ - private EClass eventFilterConfigurationEClass = null; + private EClass trackingTaskEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ - private EClass worldModelQueryRequestEClass = null; + private EClass worldModelEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ - private EClass dataStorageQueryRequestEClass = null; + private EClass barcodeEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ - private EClass agentRegistrationRequestEClass = null; + private EClass otherProxEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ - private EClass monitoringTaskEClass = null; + private EClass bluetoothEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ - private EClass trackingTaskEClass = null; + private EClass uwbEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ - private EClass worldModelEClass = null; + private EClass otherBeaconEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ - private EClass barcodeEClass = null; + private EClass poiEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ - private EClass otherProxEClass = null; + private EClass eventFilterConditionEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ - private EClass bluetoothEClass = null; + private EClass zoneDescriptorEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ - private EClass uwbEClass = null; + private EClass dataStorageQueryResponseEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ - private EClass sensorConfigurationRequestEClass = null; + private EClass messageReceivedEventEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ - private EClass otherBeaconEClass = null; + private EDataType stringListEDataType = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ - private EClass referencePositionEClass = null; + private EDataType stringArrayEDataType = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ - private EClass eventFilterConditionEClass = null; + private EDataType floatArray3dEDataType = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ - private EDataType stringListEDataType = null; + private EDataType booleanListEDataType = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ - private EDataType stringArrayEDataType = null; + private EDataType floatArrayEDataType = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ - private EDataType floatArray3dEDataType = null; + private EDataType byteArrayEDataType = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ - private EDataType booleanListEDataType = null; + private EDataType listOfStringMapsEDataType = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ - private EDataType floatArrayEDataType = null; + private EDataType intArrayEDataType = null; /** * Creates an instance of the model <b>Package</b>, registered with @@ -518,11 +467,42 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data // Initialize simple dependencies XMLTypePackage.eINSTANCE.eClass(); + // Obtain or create and register interdependencies + Object registeredPackage = EPackage.Registry.INSTANCE.getEPackage(OFBizPackage.eNS_URI); + OFBizPackageImpl theOFBizPackage = (OFBizPackageImpl) (registeredPackage instanceof OFBizPackageImpl + ? registeredPackage + : OFBizPackage.eINSTANCE); + registeredPackage = EPackage.Registry.INSTANCE.getEPackage(IPosDevKitPackage.eNS_URI); + IPosDevKitPackageImpl theIPosDevKitPackage = (IPosDevKitPackageImpl) (registeredPackage instanceof IPosDevKitPackageImpl + ? registeredPackage + : IPosDevKitPackage.eINSTANCE); + registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ToozPackage.eNS_URI); + ToozPackageImpl theToozPackage = (ToozPackageImpl) (registeredPackage instanceof ToozPackageImpl + ? registeredPackage + : ToozPackage.eINSTANCE); + registeredPackage = EPackage.Registry.INSTANCE.getEPackage(VDA5050Package.eNS_URI); + VDA5050PackageImpl theVDA5050Package = (VDA5050PackageImpl) (registeredPackage instanceof VDA5050PackageImpl + ? registeredPackage + : VDA5050Package.eINSTANCE); + registeredPackage = EPackage.Registry.INSTANCE.getEPackage(OSMPackage.eNS_URI); + OSMPackageImpl theOSMPackage = (OSMPackageImpl) (registeredPackage instanceof OSMPackageImpl ? registeredPackage + : OSMPackage.eINSTANCE); + // Create package meta-data objects theIPos_DatamodelPackage.createPackageContents(); + theOFBizPackage.createPackageContents(); + theIPosDevKitPackage.createPackageContents(); + theToozPackage.createPackageContents(); + theVDA5050Package.createPackageContents(); + theOSMPackage.createPackageContents(); // Initialize created meta-data theIPos_DatamodelPackage.initializePackageContents(); + theOFBizPackage.initializePackageContents(); + theIPosDevKitPackage.initializePackageContents(); + theToozPackage.initializePackageContents(); + theVDA5050Package.initializePackageContents(); + theOSMPackage.initializePackageContents(); // Mark meta-data to indicate it can't be changed theIPos_DatamodelPackage.freeze(); @@ -541,31 +521,13 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data return agentEClass; } - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public EAttribute getAgent_Name() { - return (EAttribute) agentEClass.getEStructuralFeatures().get(0); - } - /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getAgent_LObject() { - return (EReference) agentEClass.getEStructuralFeatures().get(1); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public EReference getAgent_NetInt() { - return (EReference) agentEClass.getEStructuralFeatures().get(2); + return (EReference) agentEClass.getEStructuralFeatures().get(0); } /** @@ -573,8 +535,8 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public EReference getAgent_PSensors() { - return (EReference) agentEClass.getEStructuralFeatures().get(3); + public EAttribute getAgent_AgentType() { + return (EAttribute) agentEClass.getEStructuralFeatures().get(1); } /** @@ -604,49 +566,13 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data return localizableObjectEClass; } - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public EReference getLocalizableObject_PSensor() { - return (EReference) localizableObjectEClass.getEStructuralFeatures().get(0); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public EReference getLocalizableObject_CurrentPlacing() { - return (EReference) localizableObjectEClass.getEStructuralFeatures().get(1); - } - /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EAttribute getLocalizableObject_LastPosUpdate() { - return (EAttribute) localizableObjectEClass.getEStructuralFeatures().get(2); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public EAttribute getLocalizableObject_Type() { - return (EAttribute) localizableObjectEClass.getEStructuralFeatures().get(3); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public EClass getPositionSensor() { - return positionSensorEClass; + return (EAttribute) localizableObjectEClass.getEStructuralFeatures().get(0); } /** @@ -654,8 +580,8 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public EReference getPositionSensor_Agent() { - return (EReference) positionSensorEClass.getEStructuralFeatures().get(0); + public EAttribute getLocalizableObject_SensorType() { + return (EAttribute) localizableObjectEClass.getEStructuralFeatures().get(1); } /** @@ -663,8 +589,8 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public EReference getPositionSensor_LObject() { - return (EReference) positionSensorEClass.getEStructuralFeatures().get(1); + public EReference getLocalizableObject_Agent() { + return (EReference) localizableObjectEClass.getEStructuralFeatures().get(2); } /** @@ -672,8 +598,8 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public EAttribute getPositionSensor_Type() { - return (EAttribute) positionSensorEClass.getEStructuralFeatures().get(2); + public EReference getLocalizableObject_CurrentPlacing() { + return (EReference) localizableObjectEClass.getEStructuralFeatures().get(3); } /** @@ -685,22 +611,13 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data return placingEClass; } - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public EReference getPlacing_LObject() { - return (EReference) placingEClass.getEStructuralFeatures().get(0); - } - /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getPlacing_Position() { - return (EReference) placingEClass.getEStructuralFeatures().get(1); + return (EReference) placingEClass.getEStructuralFeatures().get(0); } /** @@ -709,7 +626,7 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data * @generated */ public EReference getPlacing_Orientation() { - return (EReference) placingEClass.getEStructuralFeatures().get(2); + return (EReference) placingEClass.getEStructuralFeatures().get(1); } /** @@ -735,35 +652,8 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public EClass getOrientation() { - return orientationEClass; - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public EClass getAbsolutePosition() { - return absolutePositionEClass; - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public EReference getAbsolutePosition_Point() { - return (EReference) absolutePositionEClass.getEStructuralFeatures().get(0); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public EClass getRelativePosition() { - return relativePositionEClass; + public EReference getPosition_Point() { + return (EReference) positionEClass.getEStructuralFeatures().get(1); } /** @@ -771,8 +661,8 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public EReference getRelativePosition_Reference() { - return (EReference) relativePositionEClass.getEStructuralFeatures().get(0); + public EReference getPosition_ReferenceSystem() { + return (EReference) positionEClass.getEStructuralFeatures().get(2); } /** @@ -780,8 +670,8 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public EReference getRelativePosition_Point() { - return (EReference) relativePositionEClass.getEStructuralFeatures().get(1); + public EClass getOrientation() { + return orientationEClass; } /** @@ -946,6 +836,24 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data return (EReference) zoneEClass.getEStructuralFeatures().get(0); } + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getZone_Name() { + return (EAttribute) zoneEClass.getEStructuralFeatures().get(1); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getZone_Id() { + return (EAttribute) zoneEClass.getEStructuralFeatures().get(2); + } + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -1005,8 +913,8 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public EClass getMapType() { - return mapTypeEClass; + public EReference getSpace_CentrePoint() { + return (EReference) spaceEClass.getEStructuralFeatures().get(3); } /** @@ -1014,8 +922,8 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public EClass getNetworkInterface() { - return networkInterfaceEClass; + public EClass getMapType() { + return mapTypeEClass; } /** @@ -1095,8 +1003,8 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public EClass getRawdata() { - return rawdataEClass; + public EClass getRawdataEvent() { + return rawdataEventEClass; } /** @@ -1104,8 +1012,8 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public EAttribute getRawdata_SensorId() { - return (EAttribute) rawdataEClass.getEStructuralFeatures().get(0); + public EAttribute getRawdataEvent_TimeStamp() { + return (EAttribute) rawdataEventEClass.getEStructuralFeatures().get(0); } /** @@ -1212,8 +1120,8 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public EClass getAngularRate() { - return angularRateEClass; + public EAttribute getIMU_SensorId() { + return (EAttribute) imuEClass.getEStructuralFeatures().get(2); } /** @@ -1230,8 +1138,8 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public EClass getBeacon() { - return beaconEClass; + public EAttribute getAcceleration_X() { + return (EAttribute) accelerationEClass.getEStructuralFeatures().get(0); } /** @@ -1239,8 +1147,8 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public EAttribute getBeacon_Distances() { - return (EAttribute) beaconEClass.getEStructuralFeatures().get(0); + public EAttribute getAcceleration_Y() { + return (EAttribute) accelerationEClass.getEStructuralFeatures().get(1); } /** @@ -1248,8 +1156,8 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public EAttribute getBeacon_Type() { - return (EAttribute) beaconEClass.getEStructuralFeatures().get(1); + public EAttribute getAcceleration_Z() { + return (EAttribute) accelerationEClass.getEStructuralFeatures().get(2); } /** @@ -1257,8 +1165,8 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public EClass getPositionEvent() { - return positionEventEClass; + public EClass getBeacon() { + return beaconEClass; } /** @@ -1266,8 +1174,8 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public EReference getPositionEvent_Placing() { - return (EReference) positionEventEClass.getEStructuralFeatures().get(0); + public EAttribute getBeacon_Distances() { + return (EAttribute) beaconEClass.getEStructuralFeatures().get(0); } /** @@ -1275,8 +1183,8 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public EAttribute getPositionEvent_TimeStamp() { - return (EAttribute) positionEventEClass.getEStructuralFeatures().get(1); + public EAttribute getBeacon_Type() { + return (EAttribute) beaconEClass.getEStructuralFeatures().get(1); } /** @@ -1284,8 +1192,8 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public EClass getRawdataEvent() { - return rawdataEventEClass; + public EAttribute getBeacon_SensorId() { + return (EAttribute) beaconEClass.getEStructuralFeatures().get(2); } /** @@ -1293,8 +1201,8 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public EReference getRawdataEvent_Rawdata() { - return (EReference) rawdataEventEClass.getEStructuralFeatures().get(0); + public EClass getPositionEvent() { + return positionEventEClass; } /** @@ -1302,8 +1210,8 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public EClass getTrackingRequest() { - return trackingRequestEClass; + public EReference getPositionEvent_Placing() { + return (EReference) positionEventEClass.getEStructuralFeatures().get(3); } /** @@ -1311,8 +1219,8 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public EClass getMonitoringRequest() { - return monitoringRequestEClass; + public EAttribute getPositionEvent_TimeStamp() { + return (EAttribute) positionEventEClass.getEStructuralFeatures().get(0); } /** @@ -1320,8 +1228,8 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public EClass getWorldModelUpdateRequest() { - return worldModelUpdateRequestEClass; + public EAttribute getPositionEvent_LObjectId() { + return (EAttribute) positionEventEClass.getEStructuralFeatures().get(1); } /** @@ -1329,8 +1237,8 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public EClass getDataStorageRequest() { - return dataStorageRequestEClass; + public EReference getPositionEvent_Zonedescriptors() { + return (EReference) positionEventEClass.getEStructuralFeatures().get(2); } /** @@ -1383,17 +1291,8 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public EClass getWorldModelQueryRequest() { - return worldModelQueryRequestEClass; - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public EClass getDataStorageQueryRequest() { - return dataStorageQueryRequestEClass; + public EClass getMonitoringTask() { + return monitoringTaskEClass; } /** @@ -1401,8 +1300,8 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public EClass getAgentRegistrationRequest() { - return agentRegistrationRequestEClass; + public EReference getMonitoringTask_Eventfilterconfiguration() { + return (EReference) monitoringTaskEClass.getEStructuralFeatures().get(0); } /** @@ -1410,8 +1309,8 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public EClass getMonitoringTask() { - return monitoringTaskEClass; + public EClass getTrackingTask() { + return trackingTaskEClass; } /** @@ -1419,8 +1318,8 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public EReference getMonitoringTask_Eventfilterconfiguration() { - return (EReference) monitoringTaskEClass.getEStructuralFeatures().get(0); + public EReference getTrackingTask_Eventfilterconfiguration() { + return (EReference) trackingTaskEClass.getEStructuralFeatures().get(0); } /** @@ -1428,8 +1327,8 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public EClass getTrackingTask() { - return trackingTaskEClass; + public EClass getWorldModel() { + return worldModelEClass; } /** @@ -1437,8 +1336,8 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public EReference getTrackingTask_Eventfilterconfiguration() { - return (EReference) trackingTaskEClass.getEStructuralFeatures().get(0); + public EReference getWorldModel_Agent() { + return (EReference) worldModelEClass.getEStructuralFeatures().get(0); } /** @@ -1446,8 +1345,8 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public EClass getWorldModel() { - return worldModelEClass; + public EReference getWorldModel_ZoneMap() { + return (EReference) worldModelEClass.getEStructuralFeatures().get(1); } /** @@ -1455,8 +1354,8 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public EReference getWorldModel_Agent() { - return (EReference) worldModelEClass.getEStructuralFeatures().get(0); + public EReference getWorldModel_Pois() { + return (EReference) worldModelEClass.getEStructuralFeatures().get(2); } /** @@ -1464,8 +1363,8 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public EReference getWorldModel_Zonemap() { - return (EReference) worldModelEClass.getEStructuralFeatures().get(1); + public EReference getWorldModel_ReferenceSystem() { + return (EReference) worldModelEClass.getEStructuralFeatures().get(3); } /** @@ -1522,15 +1421,6 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data return uwbEClass; } - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public EClass getSensorConfigurationRequest() { - return sensorConfigurationRequestEClass; - } - /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -1554,8 +1444,8 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public EClass getReferencePosition() { - return referencePositionEClass; + public EClass getPOI() { + return poiEClass; } /** @@ -1563,8 +1453,8 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public EReference getReferencePosition_Position() { - return (EReference) referencePositionEClass.getEStructuralFeatures().get(0); + public EReference getPOI_Placing() { + return (EReference) poiEClass.getEStructuralFeatures().get(0); } /** @@ -1572,8 +1462,8 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public EAttribute getReferencePosition_Id() { - return (EAttribute) referencePositionEClass.getEStructuralFeatures().get(1); + public EAttribute getPOI_Description() { + return (EAttribute) poiEClass.getEStructuralFeatures().get(1); } /** @@ -1581,8 +1471,8 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public EClass getEventFilterCondition() { - return eventFilterConditionEClass; + public EAttribute getPOI_Data() { + return (EAttribute) poiEClass.getEStructuralFeatures().get(2); } /** @@ -1590,8 +1480,8 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public EAttribute getEventFilterCondition_TimeCondition() { - return (EAttribute) eventFilterConditionEClass.getEStructuralFeatures().get(0); + public EAttribute getPOI_Id() { + return (EAttribute) poiEClass.getEStructuralFeatures().get(3); } /** @@ -1599,7 +1489,25 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public EAttribute getEventFilterCondition_CategoryCondition() { + public EClass getEventFilterCondition() { + return eventFilterConditionEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getEventFilterCondition_TimeCondition() { + return (EAttribute) eventFilterConditionEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getEventFilterCondition_AccuracyCondition() { return (EAttribute) eventFilterConditionEClass.getEStructuralFeatures().get(1); } @@ -1608,7 +1516,7 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public EAttribute getEventFilterCondition_IdCondition() { + public EAttribute getEventFilterCondition_PositionCondition() { return (EAttribute) eventFilterConditionEClass.getEStructuralFeatures().get(2); } @@ -1617,7 +1525,7 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public EAttribute getEventFilterCondition_AccuracyCondition() { + public EAttribute getEventFilterCondition_TimeMinInterval() { return (EAttribute) eventFilterConditionEClass.getEStructuralFeatures().get(3); } @@ -1626,7 +1534,7 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public EAttribute getEventFilterCondition_PositionCondition() { + public EAttribute getEventFilterCondition_PositionDelta() { return (EAttribute) eventFilterConditionEClass.getEStructuralFeatures().get(4); } @@ -1635,7 +1543,7 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public EAttribute getEventFilterCondition_TimeMinInterval() { + public EAttribute getEventFilterCondition_SensorIdCondition() { return (EAttribute) eventFilterConditionEClass.getEStructuralFeatures().get(5); } @@ -1644,7 +1552,7 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public EAttribute getEventFilterCondition_PositionDelta() { + public EAttribute getEventFilterCondition_FilterStructure() { return (EAttribute) eventFilterConditionEClass.getEStructuralFeatures().get(6); } @@ -1653,7 +1561,7 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public EAttribute getEventFilterCondition_SensorIdCondition() { + public EAttribute getEventFilterCondition_PositionConditionCells() { return (EAttribute) eventFilterConditionEClass.getEStructuralFeatures().get(7); } @@ -1662,7 +1570,7 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public EAttribute getEventFilterCondition_FilterStructure() { + public EAttribute getEventFilterCondition_IdCondition() { return (EAttribute) eventFilterConditionEClass.getEStructuralFeatures().get(8); } @@ -1671,10 +1579,127 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data * <!-- end-user-doc --> * @generated */ - public EAttribute getEventFilterCondition_PositionConditionCell() { + public EAttribute getEventFilterCondition_CategoryCondition() { return (EAttribute) eventFilterConditionEClass.getEStructuralFeatures().get(9); } + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getEventFilterCondition_PropertyCondition() { + return (EAttribute) eventFilterConditionEClass.getEStructuralFeatures().get(10); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getZoneDescriptor() { + return zoneDescriptorEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getZoneDescriptor_ZoneId() { + return (EAttribute) zoneDescriptorEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getZoneDescriptor_NotificationType() { + return (EAttribute) zoneDescriptorEClass.getEStructuralFeatures().get(1); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getDataStorageQueryResponse() { + return dataStorageQueryResponseEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EReference getDataStorageQueryResponse_PositionEvents() { + return (EReference) dataStorageQueryResponseEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getDataStorageQueryResponse_TrackingTaskId() { + return (EAttribute) dataStorageQueryResponseEClass.getEStructuralFeatures().get(1); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getMessageReceivedEvent() { + return messageReceivedEventEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getMessageReceivedEvent_ProtocolName() { + return (EAttribute) messageReceivedEventEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getMessageReceivedEvent_SerializedMsg() { + return (EAttribute) messageReceivedEventEClass.getEStructuralFeatures().get(1); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getMessageReceivedEvent_AgentId() { + return (EAttribute) messageReceivedEventEClass.getEStructuralFeatures().get(2); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getMessageReceivedEvent_ExtractedAttributes() { + return (EAttribute) messageReceivedEventEClass.getEStructuralFeatures().get(3); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getMessageReceivedEvent_Timestamp() { + return (EAttribute) messageReceivedEventEClass.getEStructuralFeatures().get(4); + } + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -1720,6 +1745,33 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data return floatArrayEDataType; } + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EDataType getByteArray() { + return byteArrayEDataType; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EDataType getListOfStringMaps() { + return listOfStringMapsEDataType; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EDataType getIntArray() { + return intArrayEDataType; + } + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -1750,42 +1802,29 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data // Create classes and their features agentEClass = createEClass(AGENT); - createEAttribute(agentEClass, AGENT__NAME); createEReference(agentEClass, AGENT__LOBJECT); - createEReference(agentEClass, AGENT__NET_INT); - createEReference(agentEClass, AGENT__PSENSORS); + createEAttribute(agentEClass, AGENT__AGENT_TYPE); entityEClass = createEClass(ENTITY); createEAttribute(entityEClass, ENTITY__ID); localizableObjectEClass = createEClass(LOCALIZABLE_OBJECT); - createEReference(localizableObjectEClass, LOCALIZABLE_OBJECT__PSENSOR); - createEReference(localizableObjectEClass, LOCALIZABLE_OBJECT__CURRENT_PLACING); createEAttribute(localizableObjectEClass, LOCALIZABLE_OBJECT__LAST_POS_UPDATE); - createEAttribute(localizableObjectEClass, LOCALIZABLE_OBJECT__TYPE); - - positionSensorEClass = createEClass(POSITION_SENSOR); - createEReference(positionSensorEClass, POSITION_SENSOR__AGENT); - createEReference(positionSensorEClass, POSITION_SENSOR__LOBJECT); - createEAttribute(positionSensorEClass, POSITION_SENSOR__TYPE); + createEAttribute(localizableObjectEClass, LOCALIZABLE_OBJECT__SENSOR_TYPE); + createEReference(localizableObjectEClass, LOCALIZABLE_OBJECT__AGENT); + createEReference(localizableObjectEClass, LOCALIZABLE_OBJECT__CURRENT_PLACING); placingEClass = createEClass(PLACING); - createEReference(placingEClass, PLACING__LOBJECT); createEReference(placingEClass, PLACING__POSITION); createEReference(placingEClass, PLACING__ORIENTATION); positionEClass = createEClass(POSITION); createEReference(positionEClass, POSITION__ACCURACY); + createEReference(positionEClass, POSITION__POINT); + createEReference(positionEClass, POSITION__REFERENCE_SYSTEM); orientationEClass = createEClass(ORIENTATION); - absolutePositionEClass = createEClass(ABSOLUTE_POSITION); - createEReference(absolutePositionEClass, ABSOLUTE_POSITION__POINT); - - relativePositionEClass = createEClass(RELATIVE_POSITION); - createEReference(relativePositionEClass, RELATIVE_POSITION__REFERENCE); - createEReference(relativePositionEClass, RELATIVE_POSITION__POINT); - wgs84PointEClass = createEClass(WGS84_POINT); createEAttribute(wgs84PointEClass, WGS84_POINT__LONGITUDE); createEAttribute(wgs84PointEClass, WGS84_POINT__LATITUDE); @@ -1809,6 +1848,8 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data zoneEClass = createEClass(ZONE); createEReference(zoneEClass, ZONE__SPACE); + createEAttribute(zoneEClass, ZONE__NAME); + createEAttribute(zoneEClass, ZONE__ID); zoneMapEClass = createEClass(ZONE_MAP); createEReference(zoneMapEClass, ZONE_MAP__ZONE); @@ -1817,11 +1858,10 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data createEAttribute(spaceEClass, SPACE__X); createEAttribute(spaceEClass, SPACE__Y); createEAttribute(spaceEClass, SPACE__Z); + createEReference(spaceEClass, SPACE__CENTRE_POINT); mapTypeEClass = createEClass(MAP_TYPE); - networkInterfaceEClass = createEClass(NETWORK_INTERFACE); - quaternionEClass = createEClass(QUATERNION); createEAttribute(quaternionEClass, QUATERNION__X); createEAttribute(quaternionEClass, QUATERNION__Y); @@ -1833,8 +1873,8 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data pointEClass = createEClass(POINT); - rawdataEClass = createEClass(RAWDATA); - createEAttribute(rawdataEClass, RAWDATA__SENSOR_ID); + rawdataEventEClass = createEClass(RAWDATA_EVENT); + createEAttribute(rawdataEventEClass, RAWDATA_EVENT__TIME_STAMP); proximityEClass = createEClass(PROXIMITY); createEAttribute(proximityEClass, PROXIMITY__TAG_ID); @@ -1850,29 +1890,23 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data imuEClass = createEClass(IMU); createEReference(imuEClass, IMU__ANGULARRATE); createEReference(imuEClass, IMU__ACCELERATION); - - angularRateEClass = createEClass(ANGULAR_RATE); + createEAttribute(imuEClass, IMU__SENSOR_ID); accelerationEClass = createEClass(ACCELERATION); + createEAttribute(accelerationEClass, ACCELERATION__X); + createEAttribute(accelerationEClass, ACCELERATION__Y); + createEAttribute(accelerationEClass, ACCELERATION__Z); beaconEClass = createEClass(BEACON); createEAttribute(beaconEClass, BEACON__DISTANCES); createEAttribute(beaconEClass, BEACON__TYPE); + createEAttribute(beaconEClass, BEACON__SENSOR_ID); positionEventEClass = createEClass(POSITION_EVENT); - createEReference(positionEventEClass, POSITION_EVENT__PLACING); createEAttribute(positionEventEClass, POSITION_EVENT__TIME_STAMP); - - rawdataEventEClass = createEClass(RAWDATA_EVENT); - createEReference(rawdataEventEClass, RAWDATA_EVENT__RAWDATA); - - trackingRequestEClass = createEClass(TRACKING_REQUEST); - - monitoringRequestEClass = createEClass(MONITORING_REQUEST); - - worldModelUpdateRequestEClass = createEClass(WORLD_MODEL_UPDATE_REQUEST); - - dataStorageRequestEClass = createEClass(DATA_STORAGE_REQUEST); + createEAttribute(positionEventEClass, POSITION_EVENT__LOBJECT_ID); + createEReference(positionEventEClass, POSITION_EVENT__ZONEDESCRIPTORS); + createEReference(positionEventEClass, POSITION_EVENT__PLACING); eventFilterConfigurationEClass = createEClass(EVENT_FILTER_CONFIGURATION); createEAttribute(eventFilterConfigurationEClass, EVENT_FILTER_CONFIGURATION__POSITION_AMBIGUITY_STRATEGY); @@ -1880,12 +1914,6 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data createEAttribute(eventFilterConfigurationEClass, EVENT_FILTER_CONFIGURATION__FILTER_CRITERIA); createEReference(eventFilterConfigurationEClass, EVENT_FILTER_CONFIGURATION__EVENTFILTERCONDITION); - worldModelQueryRequestEClass = createEClass(WORLD_MODEL_QUERY_REQUEST); - - dataStorageQueryRequestEClass = createEClass(DATA_STORAGE_QUERY_REQUEST); - - agentRegistrationRequestEClass = createEClass(AGENT_REGISTRATION_REQUEST); - monitoringTaskEClass = createEClass(MONITORING_TASK); createEReference(monitoringTaskEClass, MONITORING_TASK__EVENTFILTERCONFIGURATION); @@ -1894,7 +1922,9 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data worldModelEClass = createEClass(WORLD_MODEL); createEReference(worldModelEClass, WORLD_MODEL__AGENT); - createEReference(worldModelEClass, WORLD_MODEL__ZONEMAP); + createEReference(worldModelEClass, WORLD_MODEL__ZONE_MAP); + createEReference(worldModelEClass, WORLD_MODEL__POIS); + createEReference(worldModelEClass, WORLD_MODEL__REFERENCE_SYSTEM); barcodeEClass = createEClass(BARCODE); @@ -1906,26 +1936,42 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data uwbEClass = createEClass(UWB); - sensorConfigurationRequestEClass = createEClass(SENSOR_CONFIGURATION_REQUEST); - otherBeaconEClass = createEClass(OTHER_BEACON); createEAttribute(otherBeaconEClass, OTHER_BEACON__DATA); - referencePositionEClass = createEClass(REFERENCE_POSITION); - createEReference(referencePositionEClass, REFERENCE_POSITION__POSITION); - createEAttribute(referencePositionEClass, REFERENCE_POSITION__ID); + poiEClass = createEClass(POI); + createEReference(poiEClass, POI__PLACING); + createEAttribute(poiEClass, POI__DESCRIPTION); + createEAttribute(poiEClass, POI__DATA); + createEAttribute(poiEClass, POI__ID); eventFilterConditionEClass = createEClass(EVENT_FILTER_CONDITION); createEAttribute(eventFilterConditionEClass, EVENT_FILTER_CONDITION__TIME_CONDITION); - createEAttribute(eventFilterConditionEClass, EVENT_FILTER_CONDITION__CATEGORY_CONDITION); - createEAttribute(eventFilterConditionEClass, EVENT_FILTER_CONDITION__ID_CONDITION); createEAttribute(eventFilterConditionEClass, EVENT_FILTER_CONDITION__ACCURACY_CONDITION); createEAttribute(eventFilterConditionEClass, EVENT_FILTER_CONDITION__POSITION_CONDITION); createEAttribute(eventFilterConditionEClass, EVENT_FILTER_CONDITION__TIME_MIN_INTERVAL); createEAttribute(eventFilterConditionEClass, EVENT_FILTER_CONDITION__POSITION_DELTA); createEAttribute(eventFilterConditionEClass, EVENT_FILTER_CONDITION__SENSOR_ID_CONDITION); createEAttribute(eventFilterConditionEClass, EVENT_FILTER_CONDITION__FILTER_STRUCTURE); - createEAttribute(eventFilterConditionEClass, EVENT_FILTER_CONDITION__POSITION_CONDITION_CELL); + createEAttribute(eventFilterConditionEClass, EVENT_FILTER_CONDITION__POSITION_CONDITION_CELLS); + createEAttribute(eventFilterConditionEClass, EVENT_FILTER_CONDITION__ID_CONDITION); + createEAttribute(eventFilterConditionEClass, EVENT_FILTER_CONDITION__CATEGORY_CONDITION); + createEAttribute(eventFilterConditionEClass, EVENT_FILTER_CONDITION__PROPERTY_CONDITION); + + zoneDescriptorEClass = createEClass(ZONE_DESCRIPTOR); + createEAttribute(zoneDescriptorEClass, ZONE_DESCRIPTOR__ZONE_ID); + createEAttribute(zoneDescriptorEClass, ZONE_DESCRIPTOR__NOTIFICATION_TYPE); + + dataStorageQueryResponseEClass = createEClass(DATA_STORAGE_QUERY_RESPONSE); + createEReference(dataStorageQueryResponseEClass, DATA_STORAGE_QUERY_RESPONSE__POSITION_EVENTS); + createEAttribute(dataStorageQueryResponseEClass, DATA_STORAGE_QUERY_RESPONSE__TRACKING_TASK_ID); + + messageReceivedEventEClass = createEClass(MESSAGE_RECEIVED_EVENT); + createEAttribute(messageReceivedEventEClass, MESSAGE_RECEIVED_EVENT__PROTOCOL_NAME); + createEAttribute(messageReceivedEventEClass, MESSAGE_RECEIVED_EVENT__SERIALIZED_MSG); + createEAttribute(messageReceivedEventEClass, MESSAGE_RECEIVED_EVENT__AGENT_ID); + createEAttribute(messageReceivedEventEClass, MESSAGE_RECEIVED_EVENT__EXTRACTED_ATTRIBUTES); + createEAttribute(messageReceivedEventEClass, MESSAGE_RECEIVED_EVENT__TIMESTAMP); // Create data types stringListEDataType = createEDataType(STRING_LIST); @@ -1933,6 +1979,9 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data floatArray3dEDataType = createEDataType(FLOAT_ARRAY3D); booleanListEDataType = createEDataType(BOOLEAN_LIST); floatArrayEDataType = createEDataType(FLOAT_ARRAY); + byteArrayEDataType = createEDataType(BYTE_ARRAY); + listOfStringMapsEDataType = createEDataType(LIST_OF_STRING_MAPS); + intArrayEDataType = createEDataType(INT_ARRAY); } /** @@ -1960,9 +2009,23 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data setNsURI(eNS_URI); // Obtain other dependent packages + OFBizPackage theOFBizPackage = (OFBizPackage) EPackage.Registry.INSTANCE.getEPackage(OFBizPackage.eNS_URI); + IPosDevKitPackage theIPosDevKitPackage = (IPosDevKitPackage) EPackage.Registry.INSTANCE + .getEPackage(IPosDevKitPackage.eNS_URI); + ToozPackage theToozPackage = (ToozPackage) EPackage.Registry.INSTANCE.getEPackage(ToozPackage.eNS_URI); + VDA5050Package theVDA5050Package = (VDA5050Package) EPackage.Registry.INSTANCE + .getEPackage(VDA5050Package.eNS_URI); + OSMPackage theOSMPackage = (OSMPackage) EPackage.Registry.INSTANCE.getEPackage(OSMPackage.eNS_URI); XMLTypePackage theXMLTypePackage = (XMLTypePackage) EPackage.Registry.INSTANCE .getEPackage(XMLTypePackage.eNS_URI); + // Add subpackages + getESubpackages().add(theOFBizPackage); + getESubpackages().add(theIPosDevKitPackage); + getESubpackages().add(theToozPackage); + getESubpackages().add(theVDA5050Package); + getESubpackages().add(theOSMPackage); + // Create type parameters // Set bounds for type parameters @@ -1970,20 +2033,17 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data // Add supertypes to classes agentEClass.getESuperTypes().add(this.getEntity()); localizableObjectEClass.getESuperTypes().add(this.getEntity()); - positionSensorEClass.getESuperTypes().add(this.getEntity()); - absolutePositionEClass.getESuperTypes().add(this.getPosition()); - relativePositionEClass.getESuperTypes().add(this.getPosition()); + wgs84PointEClass.getESuperTypes().add(this.getPoint()); point2DEClass.getESuperTypes().add(this.getPoint()); point3DEClass.getESuperTypes().add(this.getPoint()); - zoneEClass.getESuperTypes().add(this.getReferenceSystem()); zoneMapEClass.getESuperTypes().add(this.getMapType()); quaternionEClass.getESuperTypes().add(this.getOrientation()); gaussianEClass.getESuperTypes().add(this.getAccuracy()); - proximityEClass.getESuperTypes().add(this.getRawdata()); + proximityEClass.getESuperTypes().add(this.getRawdataEvent()); rfidEClass.getESuperTypes().add(this.getProximity()); nfcEClass.getESuperTypes().add(this.getProximity()); - imuEClass.getESuperTypes().add(this.getRawdata()); - beaconEClass.getESuperTypes().add(this.getRawdata()); + imuEClass.getESuperTypes().add(this.getRawdataEvent()); + beaconEClass.getESuperTypes().add(this.getRawdataEvent()); barcodeEClass.getESuperTypes().add(this.getProximity()); otherProxEClass.getESuperTypes().add(this.getProximity()); bluetoothEClass.getESuperTypes().add(this.getBeacon()); @@ -1992,17 +2052,11 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data // Initialize classes, features, and operations; add parameters initEClass(agentEClass, Agent.class, "Agent", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEAttribute(getAgent_Name(), ecorePackage.getEString(), "name", null, 0, 1, Agent.class, !IS_TRANSIENT, - !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getAgent_LObject(), this.getLocalizableObject(), null, "lObject", null, 0, -1, Agent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEReference(getAgent_NetInt(), this.getNetworkInterface(), null, "netInt", null, 1, 1, Agent.class, - !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, - IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEReference(getAgent_PSensors(), this.getPositionSensor(), null, "pSensors", null, 0, -1, Agent.class, - !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, - IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getAgent_AgentType(), ecorePackage.getEString(), "agentType", null, 0, 1, Agent.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(entityEClass, Entity.class, "Entity", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEAttribute(getEntity_Id(), ecorePackage.getEString(), "id", null, 0, 1, Entity.class, !IS_TRANSIENT, @@ -2010,34 +2064,20 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data initEClass(localizableObjectEClass, LocalizableObject.class, "LocalizableObject", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEReference(getLocalizableObject_PSensor(), this.getPositionSensor(), null, "pSensor", null, 1, 1, - LocalizableObject.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, - !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEReference(getLocalizableObject_CurrentPlacing(), this.getPlacing(), this.getPlacing_LObject(), - "currentPlacing", null, 0, 1, LocalizableObject.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, - !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEAttribute(getLocalizableObject_LastPosUpdate(), ecorePackage.getEString(), "lastPosUpdate", null, 0, 1, LocalizableObject.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEAttribute(getLocalizableObject_Type(), ecorePackage.getEString(), "type", null, 0, 1, + initEAttribute(getLocalizableObject_SensorType(), ecorePackage.getEString(), "sensorType", null, 0, 1, LocalizableObject.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(positionSensorEClass, PositionSensor.class, "PositionSensor", !IS_ABSTRACT, !IS_INTERFACE, - IS_GENERATED_INSTANCE_CLASS); - initEReference(getPositionSensor_Agent(), this.getAgent(), null, "agent", null, 0, 1, PositionSensor.class, - !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, - IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEReference(getPositionSensor_LObject(), this.getLocalizableObject(), null, "lObject", null, 0, 1, - PositionSensor.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, + initEReference(getLocalizableObject_Agent(), this.getAgent(), null, "agent", null, 0, 1, + LocalizableObject.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, + !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getLocalizableObject_CurrentPlacing(), this.getPlacing(), null, "currentPlacing", null, 0, 1, + LocalizableObject.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEAttribute(getPositionSensor_Type(), ecorePackage.getEString(), "type", null, 0, 1, PositionSensor.class, - !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(placingEClass, Placing.class, "Placing", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEReference(getPlacing_LObject(), this.getLocalizableObject(), this.getLocalizableObject_CurrentPlacing(), - "lObject", null, 1, 1, Placing.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, - IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getPlacing_Position(), this.getPosition(), null, "position", null, 1, 1, Placing.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); @@ -2050,24 +2090,15 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data initEReference(getPosition_Accuracy(), this.getAccuracy(), null, "accuracy", null, 0, 1, Position.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(orientationEClass, Orientation.class, "Orientation", !IS_ABSTRACT, !IS_INTERFACE, - IS_GENERATED_INSTANCE_CLASS); - - initEClass(absolutePositionEClass, AbsolutePosition.class, "AbsolutePosition", !IS_ABSTRACT, !IS_INTERFACE, - IS_GENERATED_INSTANCE_CLASS); - initEReference(getAbsolutePosition_Point(), this.getWGS84Point(), null, "point", null, 1, 1, - AbsolutePosition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, + initEReference(getPosition_Point(), this.getPoint(), null, "point", null, 1, 1, Position.class, !IS_TRANSIENT, + !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, + IS_ORDERED); + initEReference(getPosition_ReferenceSystem(), this.getReferenceSystem(), null, "referenceSystem", null, 1, 1, + Position.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEClass(relativePositionEClass, RelativePosition.class, "RelativePosition", !IS_ABSTRACT, !IS_INTERFACE, + initEClass(orientationEClass, Orientation.class, "Orientation", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEReference(getRelativePosition_Reference(), this.getReferenceSystem(), null, "reference", null, 1, 1, - RelativePosition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, - !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEReference(getRelativePosition_Point(), this.getPoint(), null, "point", null, 1, 1, RelativePosition.class, - !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, - IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(wgs84PointEClass, WGS84Point.class, "WGS84Point", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); @@ -2100,7 +2131,7 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data initEClass(referenceSystemEClass, ReferenceSystem.class, "ReferenceSystem", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEReference(getReferenceSystem_Origin(), this.getPlacing(), null, "origin", null, 1, 1, + initEReference(getReferenceSystem_Origin(), this.getPlacing(), null, "origin", null, 0, 1, ReferenceSystem.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEAttribute(getReferenceSystem_Name(), ecorePackage.getEString(), "name", null, 0, 1, ReferenceSystem.class, @@ -2112,6 +2143,10 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data initEReference(getZone_Space(), this.getSpace(), null, "space", null, 0, -1, Zone.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getZone_Name(), ecorePackage.getEString(), "name", null, 0, 1, Zone.class, !IS_TRANSIENT, + !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getZone_Id(), ecorePackage.getEString(), "id", null, 0, 1, Zone.class, !IS_TRANSIENT, + !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(zoneMapEClass, ZoneMap.class, "ZoneMap", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getZoneMap_Zone(), this.getZone(), null, "zone", null, 0, -1, ZoneMap.class, !IS_TRANSIENT, @@ -2125,12 +2160,12 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEAttribute(getSpace_Z(), theXMLTypePackage.getFloat(), "z", null, 0, 1, Space.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getSpace_CentrePoint(), this.getPlacing(), null, "centrePoint", null, 1, 1, Space.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(mapTypeEClass, MapType.class, "MapType", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEClass(networkInterfaceEClass, NetworkInterface.class, "NetworkInterface", !IS_ABSTRACT, !IS_INTERFACE, - IS_GENERATED_INSTANCE_CLASS); - initEClass(quaternionEClass, Quaternion.class, "Quaternion", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEAttribute(getQuaternion_X(), ecorePackage.getEFloat(), "x", null, 0, 1, Quaternion.class, !IS_TRANSIENT, @@ -2150,9 +2185,11 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data initEClass(pointEClass, Point.class, "Point", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEClass(rawdataEClass, Rawdata.class, "Rawdata", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEAttribute(getRawdata_SensorId(), ecorePackage.getEString(), "sensorId", null, 0, 1, Rawdata.class, - !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEClass(rawdataEventEClass, RawdataEvent.class, "RawdataEvent", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getRawdataEvent_TimeStamp(), theXMLTypePackage.getString(), "timeStamp", null, 0, 1, + RawdataEvent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); initEClass(proximityEClass, Proximity.class, "Proximity", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); @@ -2174,7 +2211,7 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data EGenericType g1 = createEGenericType(ecorePackage.getEMap()); EGenericType g2 = createEGenericType(ecorePackage.getEString()); g1.getETypeArguments().add(g2); - g2 = createEGenericType(ecorePackage.getEObject()); + g2 = createEGenericType(ecorePackage.getEJavaObject()); g1.getETypeArguments().add(g2); initEAttribute(getNFC_TagData(), g1, "tagData", null, 0, 1, ipos.project.DataModellntegration.iPos_Datamodel.NFC.class, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, @@ -2182,57 +2219,53 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data initEClass(imuEClass, ipos.project.DataModellntegration.iPos_Datamodel.IMU.class, "IMU", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEReference(getIMU_Angularrate(), this.getAngularRate(), null, "angularrate", null, 1, 1, + initEReference(getIMU_Angularrate(), this.getQuaternion(), null, "angularrate", null, 1, 1, ipos.project.DataModellntegration.iPos_Datamodel.IMU.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getIMU_Acceleration(), this.getAcceleration(), null, "acceleration", null, 1, 1, ipos.project.DataModellntegration.iPos_Datamodel.IMU.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(angularRateEClass, AngularRate.class, "AngularRate", !IS_ABSTRACT, !IS_INTERFACE, - IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getIMU_SensorId(), theXMLTypePackage.getString(), "sensorId", null, 0, 1, + ipos.project.DataModellntegration.iPos_Datamodel.IMU.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, + !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(accelerationEClass, Acceleration.class, "Acceleration", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getAcceleration_X(), theXMLTypePackage.getFloat(), "x", null, 0, 1, Acceleration.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getAcceleration_Y(), theXMLTypePackage.getFloat(), "y", null, 0, 1, Acceleration.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getAcceleration_Z(), theXMLTypePackage.getFloat(), "z", null, 0, 1, Acceleration.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(beaconEClass, Beacon.class, "Beacon", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); g1 = createEGenericType(ecorePackage.getEMap()); g2 = createEGenericType(ecorePackage.getEString()); g1.getETypeArguments().add(g2); - g2 = createEGenericType(ecorePackage.getEIntegerObject()); + g2 = createEGenericType(ecorePackage.getEDoubleObject()); g1.getETypeArguments().add(g2); initEAttribute(getBeacon_Distances(), g1, "distances", null, 0, 1, Beacon.class, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEAttribute(getBeacon_Type(), ecorePackage.getEString(), "type", null, 0, 1, Beacon.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getBeacon_SensorId(), theXMLTypePackage.getString(), "sensorId", null, 0, 1, Beacon.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(positionEventEClass, PositionEvent.class, "PositionEvent", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEReference(getPositionEvent_Placing(), this.getPlacing(), null, "placing", null, 1, 1, PositionEvent.class, - !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, - IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEAttribute(getPositionEvent_TimeStamp(), theXMLTypePackage.getString(), "timeStamp", null, 0, 1, PositionEvent.class, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(rawdataEventEClass, RawdataEvent.class, "RawdataEvent", !IS_ABSTRACT, !IS_INTERFACE, - IS_GENERATED_INSTANCE_CLASS); - initEReference(getRawdataEvent_Rawdata(), this.getRawdata(), null, "rawdata", null, 1, -1, RawdataEvent.class, + initEAttribute(getPositionEvent_LObjectId(), ecorePackage.getEString(), "lObjectId", null, 0, 1, + PositionEvent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + initEReference(getPositionEvent_Zonedescriptors(), this.getZoneDescriptor(), null, "zonedescriptors", null, 0, + -1, PositionEvent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, + !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getPositionEvent_Placing(), this.getPlacing(), null, "placing", null, 1, 1, PositionEvent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEClass(trackingRequestEClass, TrackingRequest.class, "TrackingRequest", !IS_ABSTRACT, !IS_INTERFACE, - IS_GENERATED_INSTANCE_CLASS); - - initEClass(monitoringRequestEClass, MonitoringRequest.class, "MonitoringRequest", !IS_ABSTRACT, !IS_INTERFACE, - IS_GENERATED_INSTANCE_CLASS); - - initEClass(worldModelUpdateRequestEClass, WorldModelUpdateRequest.class, "WorldModelUpdateRequest", - !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - - initEClass(dataStorageRequestEClass, DataStorageRequest.class, "DataStorageRequest", !IS_ABSTRACT, - !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEClass(eventFilterConfigurationEClass, EventFilterConfiguration.class, "EventFilterConfiguration", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEAttribute(getEventFilterConfiguration_PositionAmbiguityStrategy(), ecorePackage.getEString(), @@ -2254,19 +2287,10 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data initEAttribute(getEventFilterConfiguration_FilterCriteria(), g1, "filterCriteria", null, 0, 1, EventFilterConfiguration.class, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEReference(getEventFilterConfiguration_Eventfiltercondition(), this.getEventFilterCondition(), null, + initEReference(getEventFilterConfiguration_Eventfiltercondition(), this.getTrackingTask(), null, "eventfiltercondition", null, 0, -1, EventFilterConfiguration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEClass(worldModelQueryRequestEClass, WorldModelQueryRequest.class, "WorldModelQueryRequest", !IS_ABSTRACT, - !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - - initEClass(dataStorageQueryRequestEClass, DataStorageQueryRequest.class, "DataStorageQueryRequest", - !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - - initEClass(agentRegistrationRequestEClass, AgentRegistrationRequest.class, "AgentRegistrationRequest", - !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEClass(monitoringTaskEClass, MonitoringTask.class, "MonitoringTask", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getMonitoringTask_Eventfilterconfiguration(), this.getEventFilterConfiguration(), null, @@ -2284,9 +2308,15 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data initEReference(getWorldModel_Agent(), this.getAgent(), null, "agent", null, 0, -1, WorldModel.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEReference(getWorldModel_Zonemap(), this.getZoneMap(), null, "zonemap", null, 0, -1, WorldModel.class, + initEReference(getWorldModel_ZoneMap(), this.getZoneMap(), null, "zoneMap", null, 0, -1, WorldModel.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getWorldModel_Pois(), this.getPOI(), null, "pois", null, 0, -1, WorldModel.class, !IS_TRANSIENT, + !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, + IS_ORDERED); + initEReference(getWorldModel_ReferenceSystem(), this.getReferenceSystem(), null, "referenceSystem", null, 0, -1, + WorldModel.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, + !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(barcodeEClass, Barcode.class, "Barcode", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); @@ -2295,7 +2325,7 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data g1 = createEGenericType(ecorePackage.getEMap()); g2 = createEGenericType(ecorePackage.getEString()); g1.getETypeArguments().add(g2); - g2 = createEGenericType(ecorePackage.getEObject()); + g2 = createEGenericType(ecorePackage.getEJavaObject()); g1.getETypeArguments().add(g2); initEAttribute(getOtherProx_Data(), g1, "data", null, 0, 1, OtherProx.class, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); @@ -2305,7 +2335,7 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data g1 = createEGenericType(ecorePackage.getEMap()); g2 = createEGenericType(ecorePackage.getEString()); g1.getETypeArguments().add(g2); - g2 = createEGenericType(ecorePackage.getEIntegerObject()); + g2 = createEGenericType(theXMLTypePackage.getDoubleObject()); g1.getETypeArguments().add(g2); initEAttribute(getBluetooth_Rss(), g1, "rss", null, 0, 1, Bluetooth.class, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); @@ -2313,38 +2343,41 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data initEClass(uwbEClass, ipos.project.DataModellntegration.iPos_Datamodel.UWB.class, "UWB", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEClass(sensorConfigurationRequestEClass, SensorConfigurationRequest.class, "SensorConfigurationRequest", - !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEClass(otherBeaconEClass, OtherBeacon.class, "OtherBeacon", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); g1 = createEGenericType(ecorePackage.getEMap()); g2 = createEGenericType(ecorePackage.getEString()); g1.getETypeArguments().add(g2); - g2 = createEGenericType(ecorePackage.getEObject()); + g2 = createEGenericType(ecorePackage.getEJavaObject()); g1.getETypeArguments().add(g2); initEAttribute(getOtherBeacon_Data(), g1, "data", null, 0, 1, OtherBeacon.class, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEClass(referencePositionEClass, ReferencePosition.class, "ReferencePosition", !IS_ABSTRACT, !IS_INTERFACE, - IS_GENERATED_INSTANCE_CLASS); - initEReference(getReferencePosition_Position(), this.getPosition(), null, "position", null, 1, 1, - ReferencePosition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, - !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEAttribute(getReferencePosition_Id(), ecorePackage.getEString(), "id", null, 0, 1, ReferencePosition.class, - !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEClass(poiEClass, ipos.project.DataModellntegration.iPos_Datamodel.POI.class, "POI", !IS_ABSTRACT, + !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getPOI_Placing(), this.getPlacing(), null, "placing", null, 1, 1, + ipos.project.DataModellntegration.iPos_Datamodel.POI.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, + !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getPOI_Description(), ecorePackage.getEString(), "description", null, 0, 1, + ipos.project.DataModellntegration.iPos_Datamodel.POI.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, + !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + g1 = createEGenericType(ecorePackage.getEMap()); + g2 = createEGenericType(ecorePackage.getEString()); + g1.getETypeArguments().add(g2); + g2 = createEGenericType(ecorePackage.getEString()); + g1.getETypeArguments().add(g2); + initEAttribute(getPOI_Data(), g1, "data", null, 0, 1, + ipos.project.DataModellntegration.iPos_Datamodel.POI.class, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, + !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getPOI_Id(), ecorePackage.getEString(), "id", null, 0, 1, + ipos.project.DataModellntegration.iPos_Datamodel.POI.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, + !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(eventFilterConditionEClass, EventFilterCondition.class, "EventFilterCondition", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEAttribute(getEventFilterCondition_TimeCondition(), this.getStringArray(), "timeCondition", null, 0, 1, EventFilterCondition.class, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEAttribute(getEventFilterCondition_CategoryCondition(), this.getStringList(), "categoryCondition", null, 0, - 1, EventFilterCondition.class, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, - IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEAttribute(getEventFilterCondition_IdCondition(), this.getStringList(), "idCondition", "", 0, 1, - EventFilterCondition.class, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, - IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEAttribute(getEventFilterCondition_AccuracyCondition(), theXMLTypePackage.getFloat(), "accuracyCondition", null, 0, 1, EventFilterCondition.class, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); @@ -2363,10 +2396,60 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data initEAttribute(getEventFilterCondition_FilterStructure(), this.getBooleanList(), "filterStructure", null, 0, 1, EventFilterCondition.class, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEAttribute(getEventFilterCondition_PositionConditionCell(), this.getFloatArray3d(), "positionConditionCell", - null, 0, 1, EventFilterCondition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, + g1 = createEGenericType(ecorePackage.getEMap()); + g2 = createEGenericType(theXMLTypePackage.getString()); + g1.getETypeArguments().add(g2); + g2 = createEGenericType(this.getFloatArray3d()); + g1.getETypeArguments().add(g2); + initEAttribute(getEventFilterCondition_PositionConditionCells(), g1, "positionConditionCells", null, 0, 1, + EventFilterCondition.class, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getEventFilterCondition_IdCondition(), this.getStringList(), "idCondition", null, 0, 1, + EventFilterCondition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getEventFilterCondition_CategoryCondition(), this.getStringList(), "categoryCondition", null, 0, + 1, EventFilterCondition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getEventFilterCondition_PropertyCondition(), this.getStringList(), "propertyCondition", null, 0, + 1, EventFilterCondition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(zoneDescriptorEClass, ZoneDescriptor.class, "ZoneDescriptor", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getZoneDescriptor_ZoneId(), theXMLTypePackage.getString(), "zoneId", null, 0, 1, + ZoneDescriptor.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + initEAttribute(getZoneDescriptor_NotificationType(), theXMLTypePackage.getString(), "notificationType", null, 0, + 1, ZoneDescriptor.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + + initEClass(dataStorageQueryResponseEClass, DataStorageQueryResponse.class, "DataStorageQueryResponse", + !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getDataStorageQueryResponse_PositionEvents(), this.getPositionEvent(), null, "positionEvents", + null, 0, -1, DataStorageQueryResponse.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, + IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getDataStorageQueryResponse_TrackingTaskId(), theXMLTypePackage.getString(), "trackingTaskId", + null, 0, 1, DataStorageQueryResponse.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEClass(messageReceivedEventEClass, MessageReceivedEvent.class, "MessageReceivedEvent", !IS_ABSTRACT, + !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getMessageReceivedEvent_ProtocolName(), ecorePackage.getEString(), "protocolName", null, 0, 1, + MessageReceivedEvent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getMessageReceivedEvent_SerializedMsg(), this.getByteArray(), "serializedMsg", null, 0, 1, + MessageReceivedEvent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getMessageReceivedEvent_AgentId(), ecorePackage.getEString(), "agentId", null, 0, 1, + MessageReceivedEvent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getMessageReceivedEvent_ExtractedAttributes(), this.getListOfStringMaps(), "extractedAttributes", + null, 0, 1, MessageReceivedEvent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, + !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getMessageReceivedEvent_Timestamp(), ecorePackage.getEString(), "timestamp", null, 0, 1, + MessageReceivedEvent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + // Initialize data types initEDataType(stringListEDataType, List.class, "StringList", IS_SERIALIZABLE, !IS_GENERATED_INSTANCE_CLASS, "java.util.List<java.lang.String>"); @@ -2378,6 +2461,11 @@ public class IPos_DatamodelPackageImpl extends EPackageImpl implements IPos_Data !IS_GENERATED_INSTANCE_CLASS); initEDataType(floatArrayEDataType, ArrayList.class, "FloatArray", IS_SERIALIZABLE, !IS_GENERATED_INSTANCE_CLASS, "java.util.ArrayList<java.lang.Float[]>"); + initEDataType(byteArrayEDataType, byte[].class, "ByteArray", IS_SERIALIZABLE, !IS_GENERATED_INSTANCE_CLASS); + initEDataType(listOfStringMapsEDataType, LinkedList.class, "ListOfStringMaps", IS_SERIALIZABLE, + !IS_GENERATED_INSTANCE_CLASS, + "java.util.LinkedList<java.util.HashMap<java.lang.String, java.lang.String>>"); + initEDataType(intArrayEDataType, int[].class, "IntArray", IS_SERIALIZABLE, !IS_GENERATED_INSTANCE_CLASS); // Create resource createResource(eNS_URI); diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/LocalizableObjectImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/LocalizableObjectImpl.java index 96a49c7b88c04a75c0025946b21cc57d16b67907..42ae011eeb711158edf64a2aff3bcb70345c7fc3 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/LocalizableObjectImpl.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/LocalizableObjectImpl.java @@ -2,14 +2,11 @@ */ package ipos.project.DataModellntegration.iPos_Datamodel.impl; +import ipos.project.DataModellntegration.iPos_Datamodel.Agent; import ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage; import ipos.project.DataModellntegration.iPos_Datamodel.LocalizableObject; import ipos.project.DataModellntegration.iPos_Datamodel.Placing; -import ipos.project.DataModellntegration.iPos_Datamodel.PositionSensor; - import org.eclipse.emf.common.notify.Notification; -import org.eclipse.emf.common.notify.NotificationChain; - import org.eclipse.emf.ecore.EClass; import org.eclipse.emf.ecore.InternalEObject; @@ -23,74 +20,74 @@ import org.eclipse.emf.ecore.impl.ENotificationImpl; * The following features are implemented: * </p> * <ul> - * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.LocalizableObjectImpl#getPSensor <em>PSensor</em>}</li> - * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.LocalizableObjectImpl#getCurrentPlacing <em>Current Placing</em>}</li> * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.LocalizableObjectImpl#getLastPosUpdate <em>Last Pos Update</em>}</li> - * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.LocalizableObjectImpl#getType <em>Type</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.LocalizableObjectImpl#getSensorType <em>Sensor Type</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.LocalizableObjectImpl#getAgent <em>Agent</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.LocalizableObjectImpl#getCurrentPlacing <em>Current Placing</em>}</li> * </ul> * * @generated */ public class LocalizableObjectImpl extends EntityImpl implements LocalizableObject { /** - * The cached value of the '{@link #getPSensor() <em>PSensor</em>}' reference. + * The default value of the '{@link #getLastPosUpdate() <em>Last Pos Update</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @see #getPSensor() + * @see #getLastPosUpdate() * @generated * @ordered */ - protected PositionSensor pSensor; + protected static final String LAST_POS_UPDATE_EDEFAULT = null; /** - * The cached value of the '{@link #getCurrentPlacing() <em>Current Placing</em>}' reference. + * The cached value of the '{@link #getLastPosUpdate() <em>Last Pos Update</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @see #getCurrentPlacing() + * @see #getLastPosUpdate() * @generated * @ordered */ - protected Placing currentPlacing; + protected String lastPosUpdate = LAST_POS_UPDATE_EDEFAULT; /** - * The default value of the '{@link #getLastPosUpdate() <em>Last Pos Update</em>}' attribute. + * The default value of the '{@link #getSensorType() <em>Sensor Type</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @see #getLastPosUpdate() + * @see #getSensorType() * @generated * @ordered */ - protected static final String LAST_POS_UPDATE_EDEFAULT = null; + protected static final String SENSOR_TYPE_EDEFAULT = null; /** - * The cached value of the '{@link #getLastPosUpdate() <em>Last Pos Update</em>}' attribute. + * The cached value of the '{@link #getSensorType() <em>Sensor Type</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @see #getLastPosUpdate() + * @see #getSensorType() * @generated * @ordered */ - protected String lastPosUpdate = LAST_POS_UPDATE_EDEFAULT; + protected String sensorType = SENSOR_TYPE_EDEFAULT; /** - * The default value of the '{@link #getType() <em>Type</em>}' attribute. + * The cached value of the '{@link #getAgent() <em>Agent</em>}' reference. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @see #getType() + * @see #getAgent() * @generated * @ordered */ - protected static final String TYPE_EDEFAULT = null; + protected Agent agent; /** - * The cached value of the '{@link #getType() <em>Type</em>}' attribute. + * The cached value of the '{@link #getCurrentPlacing() <em>Current Placing</em>}' reference. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @see #getType() + * @see #getCurrentPlacing() * @generated * @ordered */ - protected String type = TYPE_EDEFAULT; + protected Placing currentPlacing; /** * <!-- begin-user-doc --> @@ -116,26 +113,8 @@ public class LocalizableObjectImpl extends EntityImpl implements LocalizableObje * <!-- end-user-doc --> * @generated */ - public PositionSensor getPSensor() { - if (pSensor != null && pSensor.eIsProxy()) { - InternalEObject oldPSensor = (InternalEObject) pSensor; - pSensor = (PositionSensor) eResolveProxy(oldPSensor); - if (pSensor != oldPSensor) { - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.RESOLVE, - IPos_DatamodelPackage.LOCALIZABLE_OBJECT__PSENSOR, oldPSensor, pSensor)); - } - } - return pSensor; - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public PositionSensor basicGetPSensor() { - return pSensor; + public String getLastPosUpdate() { + return lastPosUpdate; } /** @@ -143,12 +122,12 @@ public class LocalizableObjectImpl extends EntityImpl implements LocalizableObje * <!-- end-user-doc --> * @generated */ - public void setPSensor(PositionSensor newPSensor) { - PositionSensor oldPSensor = pSensor; - pSensor = newPSensor; + public void setLastPosUpdate(String newLastPosUpdate) { + String oldLastPosUpdate = lastPosUpdate; + lastPosUpdate = newLastPosUpdate; if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, IPos_DatamodelPackage.LOCALIZABLE_OBJECT__PSENSOR, - oldPSensor, pSensor)); + eNotify(new ENotificationImpl(this, Notification.SET, + IPos_DatamodelPackage.LOCALIZABLE_OBJECT__LAST_POS_UPDATE, oldLastPosUpdate, lastPosUpdate)); } /** @@ -156,18 +135,8 @@ public class LocalizableObjectImpl extends EntityImpl implements LocalizableObje * <!-- end-user-doc --> * @generated */ - public Placing getCurrentPlacing() { - if (currentPlacing != null && currentPlacing.eIsProxy()) { - InternalEObject oldCurrentPlacing = (InternalEObject) currentPlacing; - currentPlacing = (Placing) eResolveProxy(oldCurrentPlacing); - if (currentPlacing != oldCurrentPlacing) { - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.RESOLVE, - IPos_DatamodelPackage.LOCALIZABLE_OBJECT__CURRENT_PLACING, oldCurrentPlacing, - currentPlacing)); - } - } - return currentPlacing; + public String getSensorType() { + return sensorType; } /** @@ -175,8 +144,12 @@ public class LocalizableObjectImpl extends EntityImpl implements LocalizableObje * <!-- end-user-doc --> * @generated */ - public Placing basicGetCurrentPlacing() { - return currentPlacing; + public void setSensorType(String newSensorType) { + String oldSensorType = sensorType; + sensorType = newSensorType; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, IPos_DatamodelPackage.LOCALIZABLE_OBJECT__SENSOR_TYPE, + oldSensorType, sensorType)); } /** @@ -184,18 +157,17 @@ public class LocalizableObjectImpl extends EntityImpl implements LocalizableObje * <!-- end-user-doc --> * @generated */ - public NotificationChain basicSetCurrentPlacing(Placing newCurrentPlacing, NotificationChain msgs) { - Placing oldCurrentPlacing = currentPlacing; - currentPlacing = newCurrentPlacing; - if (eNotificationRequired()) { - ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, - IPos_DatamodelPackage.LOCALIZABLE_OBJECT__CURRENT_PLACING, oldCurrentPlacing, newCurrentPlacing); - if (msgs == null) - msgs = notification; - else - msgs.add(notification); + public Agent getAgent() { + if (agent != null && agent.eIsProxy()) { + InternalEObject oldAgent = (InternalEObject) agent; + agent = (Agent) eResolveProxy(oldAgent); + if (agent != oldAgent) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, + IPos_DatamodelPackage.LOCALIZABLE_OBJECT__AGENT, oldAgent, agent)); + } } - return msgs; + return agent; } /** @@ -203,21 +175,8 @@ public class LocalizableObjectImpl extends EntityImpl implements LocalizableObje * <!-- end-user-doc --> * @generated */ - public void setCurrentPlacing(Placing newCurrentPlacing) { - if (newCurrentPlacing != currentPlacing) { - NotificationChain msgs = null; - if (currentPlacing != null) - msgs = ((InternalEObject) currentPlacing).eInverseRemove(this, IPos_DatamodelPackage.PLACING__LOBJECT, - Placing.class, msgs); - if (newCurrentPlacing != null) - msgs = ((InternalEObject) newCurrentPlacing).eInverseAdd(this, IPos_DatamodelPackage.PLACING__LOBJECT, - Placing.class, msgs); - msgs = basicSetCurrentPlacing(newCurrentPlacing, msgs); - if (msgs != null) - msgs.dispatch(); - } else if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, - IPos_DatamodelPackage.LOCALIZABLE_OBJECT__CURRENT_PLACING, newCurrentPlacing, newCurrentPlacing)); + public Agent basicGetAgent() { + return agent; } /** @@ -225,21 +184,12 @@ public class LocalizableObjectImpl extends EntityImpl implements LocalizableObje * <!-- end-user-doc --> * @generated */ - public String getLastPosUpdate() { - return lastPosUpdate; - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public void setLastPosUpdate(String newLastPosUpdate) { - String oldLastPosUpdate = lastPosUpdate; - lastPosUpdate = newLastPosUpdate; + public void setAgent(Agent newAgent) { + Agent oldAgent = agent; + agent = newAgent; if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, - IPos_DatamodelPackage.LOCALIZABLE_OBJECT__LAST_POS_UPDATE, oldLastPosUpdate, lastPosUpdate)); + eNotify(new ENotificationImpl(this, Notification.SET, IPos_DatamodelPackage.LOCALIZABLE_OBJECT__AGENT, + oldAgent, agent)); } /** @@ -247,21 +197,18 @@ public class LocalizableObjectImpl extends EntityImpl implements LocalizableObje * <!-- end-user-doc --> * @generated */ - public String getType() { - return type; - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public void setType(String newType) { - String oldType = type; - type = newType; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, IPos_DatamodelPackage.LOCALIZABLE_OBJECT__TYPE, - oldType, type)); + public Placing getCurrentPlacing() { + if (currentPlacing != null && currentPlacing.eIsProxy()) { + InternalEObject oldCurrentPlacing = (InternalEObject) currentPlacing; + currentPlacing = (Placing) eResolveProxy(oldCurrentPlacing); + if (currentPlacing != oldCurrentPlacing) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, + IPos_DatamodelPackage.LOCALIZABLE_OBJECT__CURRENT_PLACING, oldCurrentPlacing, + currentPlacing)); + } + } + return currentPlacing; } /** @@ -269,16 +216,8 @@ public class LocalizableObjectImpl extends EntityImpl implements LocalizableObje * <!-- end-user-doc --> * @generated */ - @Override - public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { - switch (featureID) { - case IPos_DatamodelPackage.LOCALIZABLE_OBJECT__CURRENT_PLACING: - if (currentPlacing != null) - msgs = ((InternalEObject) currentPlacing).eInverseRemove(this, IPos_DatamodelPackage.PLACING__LOBJECT, - Placing.class, msgs); - return basicSetCurrentPlacing((Placing) otherEnd, msgs); - } - return super.eInverseAdd(otherEnd, featureID, msgs); + public Placing basicGetCurrentPlacing() { + return currentPlacing; } /** @@ -286,13 +225,12 @@ public class LocalizableObjectImpl extends EntityImpl implements LocalizableObje * <!-- end-user-doc --> * @generated */ - @Override - public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { - switch (featureID) { - case IPos_DatamodelPackage.LOCALIZABLE_OBJECT__CURRENT_PLACING: - return basicSetCurrentPlacing(null, msgs); - } - return super.eInverseRemove(otherEnd, featureID, msgs); + public void setCurrentPlacing(Placing newCurrentPlacing) { + Placing oldCurrentPlacing = currentPlacing; + currentPlacing = newCurrentPlacing; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, + IPos_DatamodelPackage.LOCALIZABLE_OBJECT__CURRENT_PLACING, oldCurrentPlacing, currentPlacing)); } /** @@ -303,18 +241,18 @@ public class LocalizableObjectImpl extends EntityImpl implements LocalizableObje @Override public Object eGet(int featureID, boolean resolve, boolean coreType) { switch (featureID) { - case IPos_DatamodelPackage.LOCALIZABLE_OBJECT__PSENSOR: + case IPos_DatamodelPackage.LOCALIZABLE_OBJECT__LAST_POS_UPDATE: + return getLastPosUpdate(); + case IPos_DatamodelPackage.LOCALIZABLE_OBJECT__SENSOR_TYPE: + return getSensorType(); + case IPos_DatamodelPackage.LOCALIZABLE_OBJECT__AGENT: if (resolve) - return getPSensor(); - return basicGetPSensor(); + return getAgent(); + return basicGetAgent(); case IPos_DatamodelPackage.LOCALIZABLE_OBJECT__CURRENT_PLACING: if (resolve) return getCurrentPlacing(); return basicGetCurrentPlacing(); - case IPos_DatamodelPackage.LOCALIZABLE_OBJECT__LAST_POS_UPDATE: - return getLastPosUpdate(); - case IPos_DatamodelPackage.LOCALIZABLE_OBJECT__TYPE: - return getType(); } return super.eGet(featureID, resolve, coreType); } @@ -324,20 +262,21 @@ public class LocalizableObjectImpl extends EntityImpl implements LocalizableObje * <!-- end-user-doc --> * @generated */ + @SuppressWarnings("unchecked") @Override public void eSet(int featureID, Object newValue) { switch (featureID) { - case IPos_DatamodelPackage.LOCALIZABLE_OBJECT__PSENSOR: - setPSensor((PositionSensor) newValue); - return; - case IPos_DatamodelPackage.LOCALIZABLE_OBJECT__CURRENT_PLACING: - setCurrentPlacing((Placing) newValue); - return; case IPos_DatamodelPackage.LOCALIZABLE_OBJECT__LAST_POS_UPDATE: setLastPosUpdate((String) newValue); return; - case IPos_DatamodelPackage.LOCALIZABLE_OBJECT__TYPE: - setType((String) newValue); + case IPos_DatamodelPackage.LOCALIZABLE_OBJECT__SENSOR_TYPE: + setSensorType((String) newValue); + return; + case IPos_DatamodelPackage.LOCALIZABLE_OBJECT__AGENT: + setAgent((Agent) newValue); + return; + case IPos_DatamodelPackage.LOCALIZABLE_OBJECT__CURRENT_PLACING: + setCurrentPlacing((Placing) newValue); return; } super.eSet(featureID, newValue); @@ -351,17 +290,17 @@ public class LocalizableObjectImpl extends EntityImpl implements LocalizableObje @Override public void eUnset(int featureID) { switch (featureID) { - case IPos_DatamodelPackage.LOCALIZABLE_OBJECT__PSENSOR: - setPSensor((PositionSensor) null); - return; - case IPos_DatamodelPackage.LOCALIZABLE_OBJECT__CURRENT_PLACING: - setCurrentPlacing((Placing) null); - return; case IPos_DatamodelPackage.LOCALIZABLE_OBJECT__LAST_POS_UPDATE: setLastPosUpdate(LAST_POS_UPDATE_EDEFAULT); return; - case IPos_DatamodelPackage.LOCALIZABLE_OBJECT__TYPE: - setType(TYPE_EDEFAULT); + case IPos_DatamodelPackage.LOCALIZABLE_OBJECT__SENSOR_TYPE: + setSensorType(SENSOR_TYPE_EDEFAULT); + return; + case IPos_DatamodelPackage.LOCALIZABLE_OBJECT__AGENT: + setAgent((Agent) null); + return; + case IPos_DatamodelPackage.LOCALIZABLE_OBJECT__CURRENT_PLACING: + setCurrentPlacing((Placing) null); return; } super.eUnset(featureID); @@ -375,15 +314,15 @@ public class LocalizableObjectImpl extends EntityImpl implements LocalizableObje @Override public boolean eIsSet(int featureID) { switch (featureID) { - case IPos_DatamodelPackage.LOCALIZABLE_OBJECT__PSENSOR: - return pSensor != null; - case IPos_DatamodelPackage.LOCALIZABLE_OBJECT__CURRENT_PLACING: - return currentPlacing != null; case IPos_DatamodelPackage.LOCALIZABLE_OBJECT__LAST_POS_UPDATE: return LAST_POS_UPDATE_EDEFAULT == null ? lastPosUpdate != null : !LAST_POS_UPDATE_EDEFAULT.equals(lastPosUpdate); - case IPos_DatamodelPackage.LOCALIZABLE_OBJECT__TYPE: - return TYPE_EDEFAULT == null ? type != null : !TYPE_EDEFAULT.equals(type); + case IPos_DatamodelPackage.LOCALIZABLE_OBJECT__SENSOR_TYPE: + return SENSOR_TYPE_EDEFAULT == null ? sensorType != null : !SENSOR_TYPE_EDEFAULT.equals(sensorType); + case IPos_DatamodelPackage.LOCALIZABLE_OBJECT__AGENT: + return agent != null; + case IPos_DatamodelPackage.LOCALIZABLE_OBJECT__CURRENT_PLACING: + return currentPlacing != null; } return super.eIsSet(featureID); } @@ -401,8 +340,8 @@ public class LocalizableObjectImpl extends EntityImpl implements LocalizableObje StringBuilder result = new StringBuilder(super.toString()); result.append(" (lastPosUpdate: "); result.append(lastPosUpdate); - result.append(", type: "); - result.append(type); + result.append(", sensorType: "); + result.append(sensorType); result.append(')'); return result.toString(); } diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/MessageReceivedEventImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/MessageReceivedEventImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..971b5cf706333fd027209733a10c19e4fd1fda34 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/MessageReceivedEventImpl.java @@ -0,0 +1,392 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.impl; + +import ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage; +import ipos.project.DataModellntegration.iPos_Datamodel.MessageReceivedEvent; + +import java.util.HashMap; +import java.util.LinkedList; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Message Received Event</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.MessageReceivedEventImpl#getProtocolName <em>Protocol Name</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.MessageReceivedEventImpl#getSerializedMsg <em>Serialized Msg</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.MessageReceivedEventImpl#getAgentId <em>Agent Id</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.MessageReceivedEventImpl#getExtractedAttributes <em>Extracted Attributes</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.MessageReceivedEventImpl#getTimestamp <em>Timestamp</em>}</li> + * </ul> + * + * @generated + */ +public class MessageReceivedEventImpl extends MinimalEObjectImpl.Container implements MessageReceivedEvent { + /** + * The default value of the '{@link #getProtocolName() <em>Protocol Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getProtocolName() + * @generated + * @ordered + */ + protected static final String PROTOCOL_NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getProtocolName() <em>Protocol Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getProtocolName() + * @generated + * @ordered + */ + protected String protocolName = PROTOCOL_NAME_EDEFAULT; + + /** + * The default value of the '{@link #getSerializedMsg() <em>Serialized Msg</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSerializedMsg() + * @generated + * @ordered + */ + protected static final byte[] SERIALIZED_MSG_EDEFAULT = null; + + /** + * The cached value of the '{@link #getSerializedMsg() <em>Serialized Msg</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getSerializedMsg() + * @generated + * @ordered + */ + protected byte[] serializedMsg = SERIALIZED_MSG_EDEFAULT; + + /** + * The default value of the '{@link #getAgentId() <em>Agent Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getAgentId() + * @generated + * @ordered + */ + protected static final String AGENT_ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getAgentId() <em>Agent Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getAgentId() + * @generated + * @ordered + */ + protected String agentId = AGENT_ID_EDEFAULT; + + /** + * The default value of the '{@link #getExtractedAttributes() <em>Extracted Attributes</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getExtractedAttributes() + * @generated + * @ordered + */ + protected static final LinkedList<HashMap<String, String>> EXTRACTED_ATTRIBUTES_EDEFAULT = null; + + /** + * The cached value of the '{@link #getExtractedAttributes() <em>Extracted Attributes</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getExtractedAttributes() + * @generated + * @ordered + */ + protected LinkedList<HashMap<String, String>> extractedAttributes = EXTRACTED_ATTRIBUTES_EDEFAULT; + + /** + * The default value of the '{@link #getTimestamp() <em>Timestamp</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTimestamp() + * @generated + * @ordered + */ + protected static final String TIMESTAMP_EDEFAULT = null; + + /** + * The cached value of the '{@link #getTimestamp() <em>Timestamp</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTimestamp() + * @generated + * @ordered + */ + protected String timestamp = TIMESTAMP_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected MessageReceivedEventImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return IPos_DatamodelPackage.Literals.MESSAGE_RECEIVED_EVENT; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getProtocolName() { + return protocolName; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setProtocolName(String newProtocolName) { + String oldProtocolName = protocolName; + protocolName = newProtocolName; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, + IPos_DatamodelPackage.MESSAGE_RECEIVED_EVENT__PROTOCOL_NAME, oldProtocolName, protocolName)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public byte[] getSerializedMsg() { + return serializedMsg; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setSerializedMsg(byte[] newSerializedMsg) { + byte[] oldSerializedMsg = serializedMsg; + serializedMsg = newSerializedMsg; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, + IPos_DatamodelPackage.MESSAGE_RECEIVED_EVENT__SERIALIZED_MSG, oldSerializedMsg, serializedMsg)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getAgentId() { + return agentId; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setAgentId(String newAgentId) { + String oldAgentId = agentId; + agentId = newAgentId; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, + IPos_DatamodelPackage.MESSAGE_RECEIVED_EVENT__AGENT_ID, oldAgentId, agentId)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public LinkedList<HashMap<String, String>> getExtractedAttributes() { + return extractedAttributes; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setExtractedAttributes(LinkedList<HashMap<String, String>> newExtractedAttributes) { + LinkedList<HashMap<String, String>> oldExtractedAttributes = extractedAttributes; + extractedAttributes = newExtractedAttributes; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, + IPos_DatamodelPackage.MESSAGE_RECEIVED_EVENT__EXTRACTED_ATTRIBUTES, oldExtractedAttributes, + extractedAttributes)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getTimestamp() { + return timestamp; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setTimestamp(String newTimestamp) { + String oldTimestamp = timestamp; + timestamp = newTimestamp; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, + IPos_DatamodelPackage.MESSAGE_RECEIVED_EVENT__TIMESTAMP, oldTimestamp, timestamp)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case IPos_DatamodelPackage.MESSAGE_RECEIVED_EVENT__PROTOCOL_NAME: + return getProtocolName(); + case IPos_DatamodelPackage.MESSAGE_RECEIVED_EVENT__SERIALIZED_MSG: + return getSerializedMsg(); + case IPos_DatamodelPackage.MESSAGE_RECEIVED_EVENT__AGENT_ID: + return getAgentId(); + case IPos_DatamodelPackage.MESSAGE_RECEIVED_EVENT__EXTRACTED_ATTRIBUTES: + return getExtractedAttributes(); + case IPos_DatamodelPackage.MESSAGE_RECEIVED_EVENT__TIMESTAMP: + return getTimestamp(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case IPos_DatamodelPackage.MESSAGE_RECEIVED_EVENT__PROTOCOL_NAME: + setProtocolName((String) newValue); + return; + case IPos_DatamodelPackage.MESSAGE_RECEIVED_EVENT__SERIALIZED_MSG: + setSerializedMsg((byte[]) newValue); + return; + case IPos_DatamodelPackage.MESSAGE_RECEIVED_EVENT__AGENT_ID: + setAgentId((String) newValue); + return; + case IPos_DatamodelPackage.MESSAGE_RECEIVED_EVENT__EXTRACTED_ATTRIBUTES: + setExtractedAttributes((LinkedList<HashMap<String, String>>) newValue); + return; + case IPos_DatamodelPackage.MESSAGE_RECEIVED_EVENT__TIMESTAMP: + setTimestamp((String) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case IPos_DatamodelPackage.MESSAGE_RECEIVED_EVENT__PROTOCOL_NAME: + setProtocolName(PROTOCOL_NAME_EDEFAULT); + return; + case IPos_DatamodelPackage.MESSAGE_RECEIVED_EVENT__SERIALIZED_MSG: + setSerializedMsg(SERIALIZED_MSG_EDEFAULT); + return; + case IPos_DatamodelPackage.MESSAGE_RECEIVED_EVENT__AGENT_ID: + setAgentId(AGENT_ID_EDEFAULT); + return; + case IPos_DatamodelPackage.MESSAGE_RECEIVED_EVENT__EXTRACTED_ATTRIBUTES: + setExtractedAttributes(EXTRACTED_ATTRIBUTES_EDEFAULT); + return; + case IPos_DatamodelPackage.MESSAGE_RECEIVED_EVENT__TIMESTAMP: + setTimestamp(TIMESTAMP_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case IPos_DatamodelPackage.MESSAGE_RECEIVED_EVENT__PROTOCOL_NAME: + return PROTOCOL_NAME_EDEFAULT == null ? protocolName != null : !PROTOCOL_NAME_EDEFAULT.equals(protocolName); + case IPos_DatamodelPackage.MESSAGE_RECEIVED_EVENT__SERIALIZED_MSG: + return SERIALIZED_MSG_EDEFAULT == null ? serializedMsg != null + : !SERIALIZED_MSG_EDEFAULT.equals(serializedMsg); + case IPos_DatamodelPackage.MESSAGE_RECEIVED_EVENT__AGENT_ID: + return AGENT_ID_EDEFAULT == null ? agentId != null : !AGENT_ID_EDEFAULT.equals(agentId); + case IPos_DatamodelPackage.MESSAGE_RECEIVED_EVENT__EXTRACTED_ATTRIBUTES: + return EXTRACTED_ATTRIBUTES_EDEFAULT == null ? extractedAttributes != null + : !EXTRACTED_ATTRIBUTES_EDEFAULT.equals(extractedAttributes); + case IPos_DatamodelPackage.MESSAGE_RECEIVED_EVENT__TIMESTAMP: + return TIMESTAMP_EDEFAULT == null ? timestamp != null : !TIMESTAMP_EDEFAULT.equals(timestamp); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (protocolName: "); + result.append(protocolName); + result.append(", serializedMsg: "); + result.append(serializedMsg); + result.append(", agentId: "); + result.append(agentId); + result.append(", extractedAttributes: "); + result.append(extractedAttributes); + result.append(", timestamp: "); + result.append(timestamp); + result.append(')'); + return result.toString(); + } + +} //MessageReceivedEventImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/MonitoringRequestImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/MonitoringRequestImpl.java deleted file mode 100644 index 5291bb58bf5d73c376485f35837649e7e569287a..0000000000000000000000000000000000000000 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/MonitoringRequestImpl.java +++ /dev/null @@ -1,39 +0,0 @@ -/** - */ -package ipos.project.DataModellntegration.iPos_Datamodel.impl; - -import ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage; -import ipos.project.DataModellntegration.iPos_Datamodel.MonitoringRequest; - -import org.eclipse.emf.ecore.EClass; - -import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; - -/** - * <!-- begin-user-doc --> - * An implementation of the model object '<em><b>Monitoring Request</b></em>'. - * <!-- end-user-doc --> - * - * @generated - */ -public class MonitoringRequestImpl extends MinimalEObjectImpl.Container implements MonitoringRequest { - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - protected MonitoringRequestImpl() { - super(); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - @Override - protected EClass eStaticClass() { - return IPos_DatamodelPackage.Literals.MONITORING_REQUEST; - } - -} //MonitoringRequestImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/NFCImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/NFCImpl.java index c876a1dcedd2669a92d2abf90164d39106ddede6..02dd20a3ca3b0737f38bfc0fbb051e6d76eaa081 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/NFCImpl.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/NFCImpl.java @@ -10,7 +10,6 @@ import java.util.Map; import org.eclipse.emf.common.notify.Notification; import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.EObject; import org.eclipse.emf.ecore.impl.ENotificationImpl; @@ -36,7 +35,7 @@ public class NFCImpl extends ProximityImpl implements NFC { * @generated * @ordered */ - protected Map<String, EObject> tagData; + protected Map<String, Object> tagData; /** * <!-- begin-user-doc --> @@ -62,7 +61,7 @@ public class NFCImpl extends ProximityImpl implements NFC { * <!-- end-user-doc --> * @generated */ - public Map<String, EObject> getTagData() { + public Map<String, Object> getTagData() { return tagData; } @@ -71,8 +70,8 @@ public class NFCImpl extends ProximityImpl implements NFC { * <!-- end-user-doc --> * @generated */ - public void setTagData(Map<String, EObject> newTagData) { - Map<String, EObject> oldTagData = tagData; + public void setTagData(Map<String, Object> newTagData) { + Map<String, Object> oldTagData = tagData; tagData = newTagData; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, IPos_DatamodelPackage.NFC__TAG_DATA, oldTagData, @@ -103,7 +102,7 @@ public class NFCImpl extends ProximityImpl implements NFC { public void eSet(int featureID, Object newValue) { switch (featureID) { case IPos_DatamodelPackage.NFC__TAG_DATA: - setTagData((Map<String, EObject>) newValue); + setTagData((Map<String, Object>) newValue); return; } super.eSet(featureID, newValue); @@ -118,7 +117,7 @@ public class NFCImpl extends ProximityImpl implements NFC { public void eUnset(int featureID) { switch (featureID) { case IPos_DatamodelPackage.NFC__TAG_DATA: - setTagData((Map<String, EObject>) null); + setTagData((Map<String, Object>) null); return; } super.eUnset(featureID); diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/NetworkInterfaceImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/NetworkInterfaceImpl.java deleted file mode 100644 index 92ea5272be3f41fb9765082a329dd98771dc80c4..0000000000000000000000000000000000000000 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/NetworkInterfaceImpl.java +++ /dev/null @@ -1,39 +0,0 @@ -/** - */ -package ipos.project.DataModellntegration.iPos_Datamodel.impl; - -import ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage; -import ipos.project.DataModellntegration.iPos_Datamodel.NetworkInterface; - -import org.eclipse.emf.ecore.EClass; - -import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; - -/** - * <!-- begin-user-doc --> - * An implementation of the model object '<em><b>Network Interface</b></em>'. - * <!-- end-user-doc --> - * - * @generated - */ -public class NetworkInterfaceImpl extends MinimalEObjectImpl.Container implements NetworkInterface { - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - protected NetworkInterfaceImpl() { - super(); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - @Override - protected EClass eStaticClass() { - return IPos_DatamodelPackage.Literals.NETWORK_INTERFACE; - } - -} //NetworkInterfaceImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/OtherBeaconImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/OtherBeaconImpl.java index 9f5be7fe7e8ff69887a6d8c2fb4bda039f67ee25..d9731e044e68622bee9bb387c5d7fe8e0dfd5066 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/OtherBeaconImpl.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/OtherBeaconImpl.java @@ -10,7 +10,6 @@ import java.util.Map; import org.eclipse.emf.common.notify.Notification; import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.EObject; import org.eclipse.emf.ecore.impl.ENotificationImpl; @@ -36,7 +35,7 @@ public class OtherBeaconImpl extends BeaconImpl implements OtherBeacon { * @generated * @ordered */ - protected Map<String, EObject> data; + protected Map<String, Object> data; /** * <!-- begin-user-doc --> @@ -62,7 +61,7 @@ public class OtherBeaconImpl extends BeaconImpl implements OtherBeacon { * <!-- end-user-doc --> * @generated */ - public Map<String, EObject> getData() { + public Map<String, Object> getData() { return data; } @@ -71,8 +70,8 @@ public class OtherBeaconImpl extends BeaconImpl implements OtherBeacon { * <!-- end-user-doc --> * @generated */ - public void setData(Map<String, EObject> newData) { - Map<String, EObject> oldData = data; + public void setData(Map<String, Object> newData) { + Map<String, Object> oldData = data; data = newData; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, IPos_DatamodelPackage.OTHER_BEACON__DATA, oldData, @@ -103,7 +102,7 @@ public class OtherBeaconImpl extends BeaconImpl implements OtherBeacon { public void eSet(int featureID, Object newValue) { switch (featureID) { case IPos_DatamodelPackage.OTHER_BEACON__DATA: - setData((Map<String, EObject>) newValue); + setData((Map<String, Object>) newValue); return; } super.eSet(featureID, newValue); @@ -118,7 +117,7 @@ public class OtherBeaconImpl extends BeaconImpl implements OtherBeacon { public void eUnset(int featureID) { switch (featureID) { case IPos_DatamodelPackage.OTHER_BEACON__DATA: - setData((Map<String, EObject>) null); + setData((Map<String, Object>) null); return; } super.eUnset(featureID); diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/OtherProxImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/OtherProxImpl.java index e676358e0cdfb8d1be36a25551511093b1ef80bd..564bb22feabbcab1dec7032faf29e54197ec478c 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/OtherProxImpl.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/OtherProxImpl.java @@ -10,7 +10,6 @@ import java.util.Map; import org.eclipse.emf.common.notify.Notification; import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.EObject; import org.eclipse.emf.ecore.impl.ENotificationImpl; @@ -36,7 +35,7 @@ public class OtherProxImpl extends ProximityImpl implements OtherProx { * @generated * @ordered */ - protected Map<String, EObject> data; + protected Map<String, Object> data; /** * <!-- begin-user-doc --> @@ -62,7 +61,7 @@ public class OtherProxImpl extends ProximityImpl implements OtherProx { * <!-- end-user-doc --> * @generated */ - public Map<String, EObject> getData() { + public Map<String, Object> getData() { return data; } @@ -71,8 +70,8 @@ public class OtherProxImpl extends ProximityImpl implements OtherProx { * <!-- end-user-doc --> * @generated */ - public void setData(Map<String, EObject> newData) { - Map<String, EObject> oldData = data; + public void setData(Map<String, Object> newData) { + Map<String, Object> oldData = data; data = newData; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, IPos_DatamodelPackage.OTHER_PROX__DATA, oldData, @@ -103,7 +102,7 @@ public class OtherProxImpl extends ProximityImpl implements OtherProx { public void eSet(int featureID, Object newValue) { switch (featureID) { case IPos_DatamodelPackage.OTHER_PROX__DATA: - setData((Map<String, EObject>) newValue); + setData((Map<String, Object>) newValue); return; } super.eSet(featureID, newValue); @@ -118,7 +117,7 @@ public class OtherProxImpl extends ProximityImpl implements OtherProx { public void eUnset(int featureID) { switch (featureID) { case IPos_DatamodelPackage.OTHER_PROX__DATA: - setData((Map<String, EObject>) null); + setData((Map<String, Object>) null); return; } super.eUnset(featureID); diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/POIImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/POIImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..9b2e20ab0a0008f76668c5bf3b432773661e7a01 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/POIImpl.java @@ -0,0 +1,331 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.impl; + +import ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage; +import ipos.project.DataModellntegration.iPos_Datamodel.POI; +import ipos.project.DataModellntegration.iPos_Datamodel.Placing; + +import java.util.Map; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>POI</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.POIImpl#getPlacing <em>Placing</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.POIImpl#getDescription <em>Description</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.POIImpl#getData <em>Data</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.POIImpl#getId <em>Id</em>}</li> + * </ul> + * + * @generated + */ +public class POIImpl extends MinimalEObjectImpl.Container implements POI { + /** + * The cached value of the '{@link #getPlacing() <em>Placing</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPlacing() + * @generated + * @ordered + */ + protected Placing placing; + + /** + * The default value of the '{@link #getDescription() <em>Description</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDescription() + * @generated + * @ordered + */ + protected static final String DESCRIPTION_EDEFAULT = null; + + /** + * The cached value of the '{@link #getDescription() <em>Description</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDescription() + * @generated + * @ordered + */ + protected String description = DESCRIPTION_EDEFAULT; + + /** + * The cached value of the '{@link #getData() <em>Data</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getData() + * @generated + * @ordered + */ + protected Map<String, String> data; + + /** + * The default value of the '{@link #getId() <em>Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getId() + * @generated + * @ordered + */ + protected static final String ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getId() <em>Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getId() + * @generated + * @ordered + */ + protected String id = ID_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected POIImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return IPos_DatamodelPackage.Literals.POI; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Placing getPlacing() { + if (placing != null && placing.eIsProxy()) { + InternalEObject oldPlacing = (InternalEObject) placing; + placing = (Placing) eResolveProxy(oldPlacing); + if (placing != oldPlacing) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, IPos_DatamodelPackage.POI__PLACING, + oldPlacing, placing)); + } + } + return placing; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Placing basicGetPlacing() { + return placing; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setPlacing(Placing newPlacing) { + Placing oldPlacing = placing; + placing = newPlacing; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, IPos_DatamodelPackage.POI__PLACING, oldPlacing, + placing)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getDescription() { + return description; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setDescription(String newDescription) { + String oldDescription = description; + description = newDescription; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, IPos_DatamodelPackage.POI__DESCRIPTION, + oldDescription, description)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Map<String, String> getData() { + return data; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setData(Map<String, String> newData) { + Map<String, String> oldData = data; + data = newData; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, IPos_DatamodelPackage.POI__DATA, oldData, data)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getId() { + return id; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setId(String newId) { + String oldId = id; + id = newId; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, IPos_DatamodelPackage.POI__ID, oldId, id)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case IPos_DatamodelPackage.POI__PLACING: + if (resolve) + return getPlacing(); + return basicGetPlacing(); + case IPos_DatamodelPackage.POI__DESCRIPTION: + return getDescription(); + case IPos_DatamodelPackage.POI__DATA: + return getData(); + case IPos_DatamodelPackage.POI__ID: + return getId(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case IPos_DatamodelPackage.POI__PLACING: + setPlacing((Placing) newValue); + return; + case IPos_DatamodelPackage.POI__DESCRIPTION: + setDescription((String) newValue); + return; + case IPos_DatamodelPackage.POI__DATA: + setData((Map<String, String>) newValue); + return; + case IPos_DatamodelPackage.POI__ID: + setId((String) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case IPos_DatamodelPackage.POI__PLACING: + setPlacing((Placing) null); + return; + case IPos_DatamodelPackage.POI__DESCRIPTION: + setDescription(DESCRIPTION_EDEFAULT); + return; + case IPos_DatamodelPackage.POI__DATA: + setData((Map<String, String>) null); + return; + case IPos_DatamodelPackage.POI__ID: + setId(ID_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case IPos_DatamodelPackage.POI__PLACING: + return placing != null; + case IPos_DatamodelPackage.POI__DESCRIPTION: + return DESCRIPTION_EDEFAULT == null ? description != null : !DESCRIPTION_EDEFAULT.equals(description); + case IPos_DatamodelPackage.POI__DATA: + return data != null; + case IPos_DatamodelPackage.POI__ID: + return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (description: "); + result.append(description); + result.append(", data: "); + result.append(data); + result.append(", id: "); + result.append(id); + result.append(')'); + return result.toString(); + } + +} //POIImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/PlacingImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/PlacingImpl.java index 4b20757e1796103f23f5c08bacd51f0d571b1680..bea7fad65df80238e586e92372830ae7549c7d00 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/PlacingImpl.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/PlacingImpl.java @@ -3,13 +3,11 @@ package ipos.project.DataModellntegration.iPos_Datamodel.impl; import ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage; -import ipos.project.DataModellntegration.iPos_Datamodel.LocalizableObject; import ipos.project.DataModellntegration.iPos_Datamodel.Orientation; import ipos.project.DataModellntegration.iPos_Datamodel.Placing; import ipos.project.DataModellntegration.iPos_Datamodel.Position; import org.eclipse.emf.common.notify.Notification; -import org.eclipse.emf.common.notify.NotificationChain; import org.eclipse.emf.ecore.EClass; import org.eclipse.emf.ecore.InternalEObject; @@ -25,7 +23,6 @@ import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; * The following features are implemented: * </p> * <ul> - * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.PlacingImpl#getLObject <em>LObject</em>}</li> * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.PlacingImpl#getPosition <em>Position</em>}</li> * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.PlacingImpl#getOrientation <em>Orientation</em>}</li> * </ul> @@ -33,16 +30,6 @@ import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; * @generated */ public class PlacingImpl extends MinimalEObjectImpl.Container implements Placing { - /** - * The cached value of the '{@link #getLObject() <em>LObject</em>}' reference. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @see #getLObject() - * @generated - * @ordered - */ - protected LocalizableObject lObject; - /** * The cached value of the '{@link #getPosition() <em>Position</em>}' reference. * <!-- begin-user-doc --> @@ -82,74 +69,6 @@ public class PlacingImpl extends MinimalEObjectImpl.Container implements Placing return IPos_DatamodelPackage.Literals.PLACING; } - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public LocalizableObject getLObject() { - if (lObject != null && lObject.eIsProxy()) { - InternalEObject oldLObject = (InternalEObject) lObject; - lObject = (LocalizableObject) eResolveProxy(oldLObject); - if (lObject != oldLObject) { - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.RESOLVE, IPos_DatamodelPackage.PLACING__LOBJECT, - oldLObject, lObject)); - } - } - return lObject; - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public LocalizableObject basicGetLObject() { - return lObject; - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public NotificationChain basicSetLObject(LocalizableObject newLObject, NotificationChain msgs) { - LocalizableObject oldLObject = lObject; - lObject = newLObject; - if (eNotificationRequired()) { - ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, - IPos_DatamodelPackage.PLACING__LOBJECT, oldLObject, newLObject); - if (msgs == null) - msgs = notification; - else - msgs.add(notification); - } - return msgs; - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public void setLObject(LocalizableObject newLObject) { - if (newLObject != lObject) { - NotificationChain msgs = null; - if (lObject != null) - msgs = ((InternalEObject) lObject).eInverseRemove(this, - IPos_DatamodelPackage.LOCALIZABLE_OBJECT__CURRENT_PLACING, LocalizableObject.class, msgs); - if (newLObject != null) - msgs = ((InternalEObject) newLObject).eInverseAdd(this, - IPos_DatamodelPackage.LOCALIZABLE_OBJECT__CURRENT_PLACING, LocalizableObject.class, msgs); - msgs = basicSetLObject(newLObject, msgs); - if (msgs != null) - msgs.dispatch(); - } else if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, IPos_DatamodelPackage.PLACING__LOBJECT, newLObject, - newLObject)); - } - /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -230,37 +149,6 @@ public class PlacingImpl extends MinimalEObjectImpl.Container implements Placing oldOrientation, orientation)); } - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - @Override - public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { - switch (featureID) { - case IPos_DatamodelPackage.PLACING__LOBJECT: - if (lObject != null) - msgs = ((InternalEObject) lObject).eInverseRemove(this, - IPos_DatamodelPackage.LOCALIZABLE_OBJECT__CURRENT_PLACING, LocalizableObject.class, msgs); - return basicSetLObject((LocalizableObject) otherEnd, msgs); - } - return super.eInverseAdd(otherEnd, featureID, msgs); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - @Override - public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { - switch (featureID) { - case IPos_DatamodelPackage.PLACING__LOBJECT: - return basicSetLObject(null, msgs); - } - return super.eInverseRemove(otherEnd, featureID, msgs); - } - /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -269,10 +157,6 @@ public class PlacingImpl extends MinimalEObjectImpl.Container implements Placing @Override public Object eGet(int featureID, boolean resolve, boolean coreType) { switch (featureID) { - case IPos_DatamodelPackage.PLACING__LOBJECT: - if (resolve) - return getLObject(); - return basicGetLObject(); case IPos_DatamodelPackage.PLACING__POSITION: if (resolve) return getPosition(); @@ -293,9 +177,6 @@ public class PlacingImpl extends MinimalEObjectImpl.Container implements Placing @Override public void eSet(int featureID, Object newValue) { switch (featureID) { - case IPos_DatamodelPackage.PLACING__LOBJECT: - setLObject((LocalizableObject) newValue); - return; case IPos_DatamodelPackage.PLACING__POSITION: setPosition((Position) newValue); return; @@ -314,9 +195,6 @@ public class PlacingImpl extends MinimalEObjectImpl.Container implements Placing @Override public void eUnset(int featureID) { switch (featureID) { - case IPos_DatamodelPackage.PLACING__LOBJECT: - setLObject((LocalizableObject) null); - return; case IPos_DatamodelPackage.PLACING__POSITION: setPosition((Position) null); return; @@ -335,8 +213,6 @@ public class PlacingImpl extends MinimalEObjectImpl.Container implements Placing @Override public boolean eIsSet(int featureID) { switch (featureID) { - case IPos_DatamodelPackage.PLACING__LOBJECT: - return lObject != null; case IPos_DatamodelPackage.PLACING__POSITION: return position != null; case IPos_DatamodelPackage.PLACING__ORIENTATION: diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/PositionEventImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/PositionEventImpl.java index bee60d5820e8bd1fc4a809b11fca1df84dda0b1e..c900e0efacc0a952ce17df3781324dae5eba0ee3 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/PositionEventImpl.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/PositionEventImpl.java @@ -5,15 +5,22 @@ package ipos.project.DataModellntegration.iPos_Datamodel.impl; import ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage; import ipos.project.DataModellntegration.iPos_Datamodel.Placing; import ipos.project.DataModellntegration.iPos_Datamodel.PositionEvent; +import ipos.project.DataModellntegration.iPos_Datamodel.ZoneDescriptor; + +import java.util.Collection; import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.util.EList; + import org.eclipse.emf.ecore.EClass; import org.eclipse.emf.ecore.InternalEObject; import org.eclipse.emf.ecore.impl.ENotificationImpl; import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; +import org.eclipse.emf.ecore.util.EObjectResolvingEList; + /** * <!-- begin-user-doc --> * An implementation of the model object '<em><b>Position Event</b></em>'. @@ -22,42 +29,74 @@ import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; * The following features are implemented: * </p> * <ul> - * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.PositionEventImpl#getPlacing <em>Placing</em>}</li> * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.PositionEventImpl#getTimeStamp <em>Time Stamp</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.PositionEventImpl#getLObjectId <em>LObject Id</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.PositionEventImpl#getZonedescriptors <em>Zonedescriptors</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.PositionEventImpl#getPlacing <em>Placing</em>}</li> * </ul> * * @generated */ public class PositionEventImpl extends MinimalEObjectImpl.Container implements PositionEvent { /** - * The cached value of the '{@link #getPlacing() <em>Placing</em>}' reference. + * The default value of the '{@link #getTimeStamp() <em>Time Stamp</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @see #getPlacing() + * @see #getTimeStamp() * @generated * @ordered */ - protected Placing placing; + protected static final String TIME_STAMP_EDEFAULT = null; /** - * The default value of the '{@link #getTimeStamp() <em>Time Stamp</em>}' attribute. + * The cached value of the '{@link #getTimeStamp() <em>Time Stamp</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getTimeStamp() * @generated * @ordered */ - protected static final String TIME_STAMP_EDEFAULT = null; + protected String timeStamp = TIME_STAMP_EDEFAULT; /** - * The cached value of the '{@link #getTimeStamp() <em>Time Stamp</em>}' attribute. + * The default value of the '{@link #getLObjectId() <em>LObject Id</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @see #getTimeStamp() + * @see #getLObjectId() * @generated * @ordered */ - protected String timeStamp = TIME_STAMP_EDEFAULT; + protected static final String LOBJECT_ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getLObjectId() <em>LObject Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getLObjectId() + * @generated + * @ordered + */ + protected String lObjectId = LOBJECT_ID_EDEFAULT; + + /** + * The cached value of the '{@link #getZonedescriptors() <em>Zonedescriptors</em>}' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getZonedescriptors() + * @generated + * @ordered + */ + protected EList<ZoneDescriptor> zonedescriptors; + + /** + * The cached value of the '{@link #getPlacing() <em>Placing</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPlacing() + * @generated + * @ordered + */ + protected Placing placing; /** * <!-- begin-user-doc --> @@ -140,6 +179,41 @@ public class PositionEventImpl extends MinimalEObjectImpl.Container implements P oldTimeStamp, timeStamp)); } + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getLObjectId() { + return lObjectId; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setLObjectId(String newLObjectId) { + String oldLObjectId = lObjectId; + lObjectId = newLObjectId; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, IPos_DatamodelPackage.POSITION_EVENT__LOBJECT_ID, + oldLObjectId, lObjectId)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EList<ZoneDescriptor> getZonedescriptors() { + if (zonedescriptors == null) { + zonedescriptors = new EObjectResolvingEList<ZoneDescriptor>(ZoneDescriptor.class, this, + IPos_DatamodelPackage.POSITION_EVENT__ZONEDESCRIPTORS); + } + return zonedescriptors; + } + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -148,12 +222,16 @@ public class PositionEventImpl extends MinimalEObjectImpl.Container implements P @Override public Object eGet(int featureID, boolean resolve, boolean coreType) { switch (featureID) { + case IPos_DatamodelPackage.POSITION_EVENT__TIME_STAMP: + return getTimeStamp(); + case IPos_DatamodelPackage.POSITION_EVENT__LOBJECT_ID: + return getLObjectId(); + case IPos_DatamodelPackage.POSITION_EVENT__ZONEDESCRIPTORS: + return getZonedescriptors(); case IPos_DatamodelPackage.POSITION_EVENT__PLACING: if (resolve) return getPlacing(); return basicGetPlacing(); - case IPos_DatamodelPackage.POSITION_EVENT__TIME_STAMP: - return getTimeStamp(); } return super.eGet(featureID, resolve, coreType); } @@ -163,15 +241,23 @@ public class PositionEventImpl extends MinimalEObjectImpl.Container implements P * <!-- end-user-doc --> * @generated */ + @SuppressWarnings("unchecked") @Override public void eSet(int featureID, Object newValue) { switch (featureID) { - case IPos_DatamodelPackage.POSITION_EVENT__PLACING: - setPlacing((Placing) newValue); - return; case IPos_DatamodelPackage.POSITION_EVENT__TIME_STAMP: setTimeStamp((String) newValue); return; + case IPos_DatamodelPackage.POSITION_EVENT__LOBJECT_ID: + setLObjectId((String) newValue); + return; + case IPos_DatamodelPackage.POSITION_EVENT__ZONEDESCRIPTORS: + getZonedescriptors().clear(); + getZonedescriptors().addAll((Collection<? extends ZoneDescriptor>) newValue); + return; + case IPos_DatamodelPackage.POSITION_EVENT__PLACING: + setPlacing((Placing) newValue); + return; } super.eSet(featureID, newValue); } @@ -184,12 +270,18 @@ public class PositionEventImpl extends MinimalEObjectImpl.Container implements P @Override public void eUnset(int featureID) { switch (featureID) { - case IPos_DatamodelPackage.POSITION_EVENT__PLACING: - setPlacing((Placing) null); - return; case IPos_DatamodelPackage.POSITION_EVENT__TIME_STAMP: setTimeStamp(TIME_STAMP_EDEFAULT); return; + case IPos_DatamodelPackage.POSITION_EVENT__LOBJECT_ID: + setLObjectId(LOBJECT_ID_EDEFAULT); + return; + case IPos_DatamodelPackage.POSITION_EVENT__ZONEDESCRIPTORS: + getZonedescriptors().clear(); + return; + case IPos_DatamodelPackage.POSITION_EVENT__PLACING: + setPlacing((Placing) null); + return; } super.eUnset(featureID); } @@ -202,10 +294,14 @@ public class PositionEventImpl extends MinimalEObjectImpl.Container implements P @Override public boolean eIsSet(int featureID) { switch (featureID) { - case IPos_DatamodelPackage.POSITION_EVENT__PLACING: - return placing != null; case IPos_DatamodelPackage.POSITION_EVENT__TIME_STAMP: return TIME_STAMP_EDEFAULT == null ? timeStamp != null : !TIME_STAMP_EDEFAULT.equals(timeStamp); + case IPos_DatamodelPackage.POSITION_EVENT__LOBJECT_ID: + return LOBJECT_ID_EDEFAULT == null ? lObjectId != null : !LOBJECT_ID_EDEFAULT.equals(lObjectId); + case IPos_DatamodelPackage.POSITION_EVENT__ZONEDESCRIPTORS: + return zonedescriptors != null && !zonedescriptors.isEmpty(); + case IPos_DatamodelPackage.POSITION_EVENT__PLACING: + return placing != null; } return super.eIsSet(featureID); } @@ -223,6 +319,8 @@ public class PositionEventImpl extends MinimalEObjectImpl.Container implements P StringBuilder result = new StringBuilder(super.toString()); result.append(" (timeStamp: "); result.append(timeStamp); + result.append(", lObjectId: "); + result.append(lObjectId); result.append(')'); return result.toString(); } diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/PositionImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/PositionImpl.java index 62e0e069c64f7b4bf3873b0bde8a29480cd7fe6e..e98eb26df56479dfcac5d1df0f187749634bea9a 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/PositionImpl.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/PositionImpl.java @@ -4,7 +4,9 @@ package ipos.project.DataModellntegration.iPos_Datamodel.impl; import ipos.project.DataModellntegration.iPos_Datamodel.Accuracy; import ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage; +import ipos.project.DataModellntegration.iPos_Datamodel.Point; import ipos.project.DataModellntegration.iPos_Datamodel.Position; +import ipos.project.DataModellntegration.iPos_Datamodel.ReferenceSystem; import org.eclipse.emf.common.notify.Notification; @@ -23,6 +25,8 @@ import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; * </p> * <ul> * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.PositionImpl#getAccuracy <em>Accuracy</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.PositionImpl#getPoint <em>Point</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.PositionImpl#getReferenceSystem <em>Reference System</em>}</li> * </ul> * * @generated @@ -38,6 +42,26 @@ public class PositionImpl extends MinimalEObjectImpl.Container implements Positi */ protected Accuracy accuracy; + /** + * The cached value of the '{@link #getPoint() <em>Point</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPoint() + * @generated + * @ordered + */ + protected Point point; + + /** + * The cached value of the '{@link #getReferenceSystem() <em>Reference System</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getReferenceSystem() + * @generated + * @ordered + */ + protected ReferenceSystem referenceSystem; + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -97,6 +121,86 @@ public class PositionImpl extends MinimalEObjectImpl.Container implements Positi accuracy)); } + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Point getPoint() { + if (point != null && point.eIsProxy()) { + InternalEObject oldPoint = (InternalEObject) point; + point = (Point) eResolveProxy(oldPoint); + if (point != oldPoint) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, IPos_DatamodelPackage.POSITION__POINT, + oldPoint, point)); + } + } + return point; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Point basicGetPoint() { + return point; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setPoint(Point newPoint) { + Point oldPoint = point; + point = newPoint; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, IPos_DatamodelPackage.POSITION__POINT, oldPoint, + point)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public ReferenceSystem getReferenceSystem() { + if (referenceSystem != null && referenceSystem.eIsProxy()) { + InternalEObject oldReferenceSystem = (InternalEObject) referenceSystem; + referenceSystem = (ReferenceSystem) eResolveProxy(oldReferenceSystem); + if (referenceSystem != oldReferenceSystem) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, + IPos_DatamodelPackage.POSITION__REFERENCE_SYSTEM, oldReferenceSystem, referenceSystem)); + } + } + return referenceSystem; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public ReferenceSystem basicGetReferenceSystem() { + return referenceSystem; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setReferenceSystem(ReferenceSystem newReferenceSystem) { + ReferenceSystem oldReferenceSystem = referenceSystem; + referenceSystem = newReferenceSystem; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, IPos_DatamodelPackage.POSITION__REFERENCE_SYSTEM, + oldReferenceSystem, referenceSystem)); + } + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -109,6 +213,14 @@ public class PositionImpl extends MinimalEObjectImpl.Container implements Positi if (resolve) return getAccuracy(); return basicGetAccuracy(); + case IPos_DatamodelPackage.POSITION__POINT: + if (resolve) + return getPoint(); + return basicGetPoint(); + case IPos_DatamodelPackage.POSITION__REFERENCE_SYSTEM: + if (resolve) + return getReferenceSystem(); + return basicGetReferenceSystem(); } return super.eGet(featureID, resolve, coreType); } @@ -124,6 +236,12 @@ public class PositionImpl extends MinimalEObjectImpl.Container implements Positi case IPos_DatamodelPackage.POSITION__ACCURACY: setAccuracy((Accuracy) newValue); return; + case IPos_DatamodelPackage.POSITION__POINT: + setPoint((Point) newValue); + return; + case IPos_DatamodelPackage.POSITION__REFERENCE_SYSTEM: + setReferenceSystem((ReferenceSystem) newValue); + return; } super.eSet(featureID, newValue); } @@ -139,6 +257,12 @@ public class PositionImpl extends MinimalEObjectImpl.Container implements Positi case IPos_DatamodelPackage.POSITION__ACCURACY: setAccuracy((Accuracy) null); return; + case IPos_DatamodelPackage.POSITION__POINT: + setPoint((Point) null); + return; + case IPos_DatamodelPackage.POSITION__REFERENCE_SYSTEM: + setReferenceSystem((ReferenceSystem) null); + return; } super.eUnset(featureID); } @@ -153,6 +277,10 @@ public class PositionImpl extends MinimalEObjectImpl.Container implements Positi switch (featureID) { case IPos_DatamodelPackage.POSITION__ACCURACY: return accuracy != null; + case IPos_DatamodelPackage.POSITION__POINT: + return point != null; + case IPos_DatamodelPackage.POSITION__REFERENCE_SYSTEM: + return referenceSystem != null; } return super.eIsSet(featureID); } diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/PositionSensorImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/PositionSensorImpl.java deleted file mode 100644 index 49c0bcfd908952cc5c44ea457415bdc3905919b5..0000000000000000000000000000000000000000 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/PositionSensorImpl.java +++ /dev/null @@ -1,293 +0,0 @@ -/** - */ -package ipos.project.DataModellntegration.iPos_Datamodel.impl; - -import ipos.project.DataModellntegration.iPos_Datamodel.Agent; -import ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage; -import ipos.project.DataModellntegration.iPos_Datamodel.LocalizableObject; -import ipos.project.DataModellntegration.iPos_Datamodel.PositionSensor; - -import org.eclipse.emf.common.notify.Notification; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.impl.ENotificationImpl; - -/** - * <!-- begin-user-doc --> - * An implementation of the model object '<em><b>Position Sensor</b></em>'. - * <!-- end-user-doc --> - * <p> - * The following features are implemented: - * </p> - * <ul> - * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.PositionSensorImpl#getAgent <em>Agent</em>}</li> - * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.PositionSensorImpl#getLObject <em>LObject</em>}</li> - * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.PositionSensorImpl#getType <em>Type</em>}</li> - * </ul> - * - * @generated - */ -public class PositionSensorImpl extends EntityImpl implements PositionSensor { - /** - * The cached value of the '{@link #getAgent() <em>Agent</em>}' reference. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @see #getAgent() - * @generated - * @ordered - */ - protected Agent agent; - - /** - * The cached value of the '{@link #getLObject() <em>LObject</em>}' reference. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @see #getLObject() - * @generated - * @ordered - */ - protected LocalizableObject lObject; - - /** - * The default value of the '{@link #getType() <em>Type</em>}' attribute. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @see #getType() - * @generated - * @ordered - */ - protected static final String TYPE_EDEFAULT = null; - - /** - * The cached value of the '{@link #getType() <em>Type</em>}' attribute. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @see #getType() - * @generated - * @ordered - */ - protected String type = TYPE_EDEFAULT; - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - protected PositionSensorImpl() { - super(); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - @Override - protected EClass eStaticClass() { - return IPos_DatamodelPackage.Literals.POSITION_SENSOR; - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public Agent getAgent() { - if (agent != null && agent.eIsProxy()) { - InternalEObject oldAgent = (InternalEObject) agent; - agent = (Agent) eResolveProxy(oldAgent); - if (agent != oldAgent) { - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.RESOLVE, - IPos_DatamodelPackage.POSITION_SENSOR__AGENT, oldAgent, agent)); - } - } - return agent; - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public Agent basicGetAgent() { - return agent; - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public void setAgent(Agent newAgent) { - Agent oldAgent = agent; - agent = newAgent; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, IPos_DatamodelPackage.POSITION_SENSOR__AGENT, - oldAgent, agent)); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public LocalizableObject getLObject() { - if (lObject != null && lObject.eIsProxy()) { - InternalEObject oldLObject = (InternalEObject) lObject; - lObject = (LocalizableObject) eResolveProxy(oldLObject); - if (lObject != oldLObject) { - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.RESOLVE, - IPos_DatamodelPackage.POSITION_SENSOR__LOBJECT, oldLObject, lObject)); - } - } - return lObject; - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public LocalizableObject basicGetLObject() { - return lObject; - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public void setLObject(LocalizableObject newLObject) { - LocalizableObject oldLObject = lObject; - lObject = newLObject; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, IPos_DatamodelPackage.POSITION_SENSOR__LOBJECT, - oldLObject, lObject)); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public String getType() { - return type; - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public void setType(String newType) { - String oldType = type; - type = newType; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, IPos_DatamodelPackage.POSITION_SENSOR__TYPE, oldType, - type)); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case IPos_DatamodelPackage.POSITION_SENSOR__AGENT: - if (resolve) - return getAgent(); - return basicGetAgent(); - case IPos_DatamodelPackage.POSITION_SENSOR__LOBJECT: - if (resolve) - return getLObject(); - return basicGetLObject(); - case IPos_DatamodelPackage.POSITION_SENSOR__TYPE: - return getType(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case IPos_DatamodelPackage.POSITION_SENSOR__AGENT: - setAgent((Agent) newValue); - return; - case IPos_DatamodelPackage.POSITION_SENSOR__LOBJECT: - setLObject((LocalizableObject) newValue); - return; - case IPos_DatamodelPackage.POSITION_SENSOR__TYPE: - setType((String) newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case IPos_DatamodelPackage.POSITION_SENSOR__AGENT: - setAgent((Agent) null); - return; - case IPos_DatamodelPackage.POSITION_SENSOR__LOBJECT: - setLObject((LocalizableObject) null); - return; - case IPos_DatamodelPackage.POSITION_SENSOR__TYPE: - setType(TYPE_EDEFAULT); - return; - } - super.eUnset(featureID); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case IPos_DatamodelPackage.POSITION_SENSOR__AGENT: - return agent != null; - case IPos_DatamodelPackage.POSITION_SENSOR__LOBJECT: - return lObject != null; - case IPos_DatamodelPackage.POSITION_SENSOR__TYPE: - return TYPE_EDEFAULT == null ? type != null : !TYPE_EDEFAULT.equals(type); - } - return super.eIsSet(featureID); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - @Override - public String toString() { - if (eIsProxy()) - return super.toString(); - - StringBuilder result = new StringBuilder(super.toString()); - result.append(" (type: "); - result.append(type); - result.append(')'); - return result.toString(); - } - -} //PositionSensorImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/ProximityImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/ProximityImpl.java index 3dccb64502adb01908962eabea8cfe8253430b59..33583af94f682e045b70a044a294b2c1d2791cd6 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/ProximityImpl.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/ProximityImpl.java @@ -26,7 +26,7 @@ import org.eclipse.emf.ecore.impl.ENotificationImpl; * * @generated */ -public class ProximityImpl extends RawdataImpl implements Proximity { +public class ProximityImpl extends RawdataEventImpl implements Proximity { /** * The default value of the '{@link #getTagId() <em>Tag Id</em>}' attribute. * <!-- begin-user-doc --> diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/RawdataEventImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/RawdataEventImpl.java index 5648bc0da0a289ec7eef16a07178e1dd5e2b53d5..e0b7832135b6a2ea18766707a6e8dbc45af38b1c 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/RawdataEventImpl.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/RawdataEventImpl.java @@ -3,19 +3,15 @@ package ipos.project.DataModellntegration.iPos_Datamodel.impl; import ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage; -import ipos.project.DataModellntegration.iPos_Datamodel.Rawdata; import ipos.project.DataModellntegration.iPos_Datamodel.RawdataEvent; -import java.util.Collection; - -import org.eclipse.emf.common.util.EList; +import org.eclipse.emf.common.notify.Notification; import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.impl.ENotificationImpl; import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; -import org.eclipse.emf.ecore.util.EObjectResolvingEList; - /** * <!-- begin-user-doc --> * An implementation of the model object '<em><b>Rawdata Event</b></em>'. @@ -24,21 +20,31 @@ import org.eclipse.emf.ecore.util.EObjectResolvingEList; * The following features are implemented: * </p> * <ul> - * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.RawdataEventImpl#getRawdata <em>Rawdata</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.RawdataEventImpl#getTimeStamp <em>Time Stamp</em>}</li> * </ul> * * @generated */ public class RawdataEventImpl extends MinimalEObjectImpl.Container implements RawdataEvent { /** - * The cached value of the '{@link #getRawdata() <em>Rawdata</em>}' reference list. + * The default value of the '{@link #getTimeStamp() <em>Time Stamp</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @see #getRawdata() + * @see #getTimeStamp() * @generated * @ordered */ - protected EList<Rawdata> rawdata; + protected static final String TIME_STAMP_EDEFAULT = null; + + /** + * The cached value of the '{@link #getTimeStamp() <em>Time Stamp</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getTimeStamp() + * @generated + * @ordered + */ + protected String timeStamp = TIME_STAMP_EDEFAULT; /** * <!-- begin-user-doc --> @@ -64,12 +70,21 @@ public class RawdataEventImpl extends MinimalEObjectImpl.Container implements Ra * <!-- end-user-doc --> * @generated */ - public EList<Rawdata> getRawdata() { - if (rawdata == null) { - rawdata = new EObjectResolvingEList<Rawdata>(Rawdata.class, this, - IPos_DatamodelPackage.RAWDATA_EVENT__RAWDATA); - } - return rawdata; + public String getTimeStamp() { + return timeStamp; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setTimeStamp(String newTimeStamp) { + String oldTimeStamp = timeStamp; + timeStamp = newTimeStamp; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, IPos_DatamodelPackage.RAWDATA_EVENT__TIME_STAMP, + oldTimeStamp, timeStamp)); } /** @@ -80,8 +95,8 @@ public class RawdataEventImpl extends MinimalEObjectImpl.Container implements Ra @Override public Object eGet(int featureID, boolean resolve, boolean coreType) { switch (featureID) { - case IPos_DatamodelPackage.RAWDATA_EVENT__RAWDATA: - return getRawdata(); + case IPos_DatamodelPackage.RAWDATA_EVENT__TIME_STAMP: + return getTimeStamp(); } return super.eGet(featureID, resolve, coreType); } @@ -91,13 +106,11 @@ public class RawdataEventImpl extends MinimalEObjectImpl.Container implements Ra * <!-- end-user-doc --> * @generated */ - @SuppressWarnings("unchecked") @Override public void eSet(int featureID, Object newValue) { switch (featureID) { - case IPos_DatamodelPackage.RAWDATA_EVENT__RAWDATA: - getRawdata().clear(); - getRawdata().addAll((Collection<? extends Rawdata>) newValue); + case IPos_DatamodelPackage.RAWDATA_EVENT__TIME_STAMP: + setTimeStamp((String) newValue); return; } super.eSet(featureID, newValue); @@ -111,8 +124,8 @@ public class RawdataEventImpl extends MinimalEObjectImpl.Container implements Ra @Override public void eUnset(int featureID) { switch (featureID) { - case IPos_DatamodelPackage.RAWDATA_EVENT__RAWDATA: - getRawdata().clear(); + case IPos_DatamodelPackage.RAWDATA_EVENT__TIME_STAMP: + setTimeStamp(TIME_STAMP_EDEFAULT); return; } super.eUnset(featureID); @@ -126,10 +139,27 @@ public class RawdataEventImpl extends MinimalEObjectImpl.Container implements Ra @Override public boolean eIsSet(int featureID) { switch (featureID) { - case IPos_DatamodelPackage.RAWDATA_EVENT__RAWDATA: - return rawdata != null && !rawdata.isEmpty(); + case IPos_DatamodelPackage.RAWDATA_EVENT__TIME_STAMP: + return TIME_STAMP_EDEFAULT == null ? timeStamp != null : !TIME_STAMP_EDEFAULT.equals(timeStamp); } return super.eIsSet(featureID); } + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (timeStamp: "); + result.append(timeStamp); + result.append(')'); + return result.toString(); + } + } //RawdataEventImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/ReferencePositionImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/ReferencePositionImpl.java deleted file mode 100644 index 66867aba7a20b2bca4097a6c1442bbbfcdffbc51..0000000000000000000000000000000000000000 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/ReferencePositionImpl.java +++ /dev/null @@ -1,230 +0,0 @@ -/** - */ -package ipos.project.DataModellntegration.iPos_Datamodel.impl; - -import ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage; -import ipos.project.DataModellntegration.iPos_Datamodel.Position; -import ipos.project.DataModellntegration.iPos_Datamodel.ReferencePosition; - -import org.eclipse.emf.common.notify.Notification; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.impl.ENotificationImpl; -import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; - -/** - * <!-- begin-user-doc --> - * An implementation of the model object '<em><b>Reference Position</b></em>'. - * <!-- end-user-doc --> - * <p> - * The following features are implemented: - * </p> - * <ul> - * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.ReferencePositionImpl#getPosition <em>Position</em>}</li> - * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.ReferencePositionImpl#getId <em>Id</em>}</li> - * </ul> - * - * @generated - */ -public class ReferencePositionImpl extends MinimalEObjectImpl.Container implements ReferencePosition { - /** - * The cached value of the '{@link #getPosition() <em>Position</em>}' reference. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @see #getPosition() - * @generated - * @ordered - */ - protected Position position; - - /** - * The default value of the '{@link #getId() <em>Id</em>}' attribute. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @see #getId() - * @generated - * @ordered - */ - protected static final String ID_EDEFAULT = null; - - /** - * The cached value of the '{@link #getId() <em>Id</em>}' attribute. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @see #getId() - * @generated - * @ordered - */ - protected String id = ID_EDEFAULT; - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - protected ReferencePositionImpl() { - super(); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - @Override - protected EClass eStaticClass() { - return IPos_DatamodelPackage.Literals.REFERENCE_POSITION; - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public Position getPosition() { - if (position != null && position.eIsProxy()) { - InternalEObject oldPosition = (InternalEObject) position; - position = (Position) eResolveProxy(oldPosition); - if (position != oldPosition) { - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.RESOLVE, - IPos_DatamodelPackage.REFERENCE_POSITION__POSITION, oldPosition, position)); - } - } - return position; - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public Position basicGetPosition() { - return position; - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public void setPosition(Position newPosition) { - Position oldPosition = position; - position = newPosition; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, IPos_DatamodelPackage.REFERENCE_POSITION__POSITION, - oldPosition, position)); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public String getId() { - return id; - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public void setId(String newId) { - String oldId = id; - id = newId; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, IPos_DatamodelPackage.REFERENCE_POSITION__ID, oldId, - id)); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case IPos_DatamodelPackage.REFERENCE_POSITION__POSITION: - if (resolve) - return getPosition(); - return basicGetPosition(); - case IPos_DatamodelPackage.REFERENCE_POSITION__ID: - return getId(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case IPos_DatamodelPackage.REFERENCE_POSITION__POSITION: - setPosition((Position) newValue); - return; - case IPos_DatamodelPackage.REFERENCE_POSITION__ID: - setId((String) newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case IPos_DatamodelPackage.REFERENCE_POSITION__POSITION: - setPosition((Position) null); - return; - case IPos_DatamodelPackage.REFERENCE_POSITION__ID: - setId(ID_EDEFAULT); - return; - } - super.eUnset(featureID); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case IPos_DatamodelPackage.REFERENCE_POSITION__POSITION: - return position != null; - case IPos_DatamodelPackage.REFERENCE_POSITION__ID: - return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id); - } - return super.eIsSet(featureID); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - @Override - public String toString() { - if (eIsProxy()) - return super.toString(); - - StringBuilder result = new StringBuilder(super.toString()); - result.append(" (id: "); - result.append(id); - result.append(')'); - return result.toString(); - } - -} //ReferencePositionImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/RelativePositionImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/RelativePositionImpl.java deleted file mode 100644 index 30262a5e66dd4d95940044f86073e4e4a71b2d34..0000000000000000000000000000000000000000 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/RelativePositionImpl.java +++ /dev/null @@ -1,223 +0,0 @@ -/** - */ -package ipos.project.DataModellntegration.iPos_Datamodel.impl; - -import ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage; -import ipos.project.DataModellntegration.iPos_Datamodel.Point; -import ipos.project.DataModellntegration.iPos_Datamodel.ReferenceSystem; -import ipos.project.DataModellntegration.iPos_Datamodel.RelativePosition; - -import org.eclipse.emf.common.notify.Notification; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.impl.ENotificationImpl; - -/** - * <!-- begin-user-doc --> - * An implementation of the model object '<em><b>Relative Position</b></em>'. - * <!-- end-user-doc --> - * <p> - * The following features are implemented: - * </p> - * <ul> - * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.RelativePositionImpl#getReference <em>Reference</em>}</li> - * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.RelativePositionImpl#getPoint <em>Point</em>}</li> - * </ul> - * - * @generated - */ -public class RelativePositionImpl extends PositionImpl implements RelativePosition { - /** - * The cached value of the '{@link #getReference() <em>Reference</em>}' reference. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @see #getReference() - * @generated - * @ordered - */ - protected ReferenceSystem reference; - - /** - * The cached value of the '{@link #getPoint() <em>Point</em>}' reference. - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @see #getPoint() - * @generated - * @ordered - */ - protected Point point; - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - protected RelativePositionImpl() { - super(); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - @Override - protected EClass eStaticClass() { - return IPos_DatamodelPackage.Literals.RELATIVE_POSITION; - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public ReferenceSystem getReference() { - if (reference != null && reference.eIsProxy()) { - InternalEObject oldReference = (InternalEObject) reference; - reference = (ReferenceSystem) eResolveProxy(oldReference); - if (reference != oldReference) { - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.RESOLVE, - IPos_DatamodelPackage.RELATIVE_POSITION__REFERENCE, oldReference, reference)); - } - } - return reference; - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public ReferenceSystem basicGetReference() { - return reference; - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public void setReference(ReferenceSystem newReference) { - ReferenceSystem oldReference = reference; - reference = newReference; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, IPos_DatamodelPackage.RELATIVE_POSITION__REFERENCE, - oldReference, reference)); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public Point getPoint() { - if (point != null && point.eIsProxy()) { - InternalEObject oldPoint = (InternalEObject) point; - point = (Point) eResolveProxy(oldPoint); - if (point != oldPoint) { - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.RESOLVE, - IPos_DatamodelPackage.RELATIVE_POSITION__POINT, oldPoint, point)); - } - } - return point; - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public Point basicGetPoint() { - return point; - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - public void setPoint(Point newPoint) { - Point oldPoint = point; - point = newPoint; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, IPos_DatamodelPackage.RELATIVE_POSITION__POINT, - oldPoint, point)); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case IPos_DatamodelPackage.RELATIVE_POSITION__REFERENCE: - if (resolve) - return getReference(); - return basicGetReference(); - case IPos_DatamodelPackage.RELATIVE_POSITION__POINT: - if (resolve) - return getPoint(); - return basicGetPoint(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case IPos_DatamodelPackage.RELATIVE_POSITION__REFERENCE: - setReference((ReferenceSystem) newValue); - return; - case IPos_DatamodelPackage.RELATIVE_POSITION__POINT: - setPoint((Point) newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case IPos_DatamodelPackage.RELATIVE_POSITION__REFERENCE: - setReference((ReferenceSystem) null); - return; - case IPos_DatamodelPackage.RELATIVE_POSITION__POINT: - setPoint((Point) null); - return; - } - super.eUnset(featureID); - } - - /** - * <!-- begin-user-doc --> - * <!-- end-user-doc --> - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case IPos_DatamodelPackage.RELATIVE_POSITION__REFERENCE: - return reference != null; - case IPos_DatamodelPackage.RELATIVE_POSITION__POINT: - return point != null; - } - return super.eIsSet(featureID); - } - -} //RelativePositionImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/SpaceImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/SpaceImpl.java index 028252acf2eef0055d652fbf9c593cdc275ebe7f..e402c02c8bd234e2954c6a502bcfa3faae2238d0 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/SpaceImpl.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/SpaceImpl.java @@ -3,11 +3,13 @@ package ipos.project.DataModellntegration.iPos_Datamodel.impl; import ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage; +import ipos.project.DataModellntegration.iPos_Datamodel.Placing; import ipos.project.DataModellntegration.iPos_Datamodel.Space; import org.eclipse.emf.common.notify.Notification; import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; import org.eclipse.emf.ecore.impl.ENotificationImpl; import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; @@ -23,6 +25,7 @@ import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.SpaceImpl#getX <em>X</em>}</li> * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.SpaceImpl#getY <em>Y</em>}</li> * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.SpaceImpl#getZ <em>Z</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.SpaceImpl#getCentrePoint <em>Centre Point</em>}</li> * </ul> * * @generated @@ -88,6 +91,16 @@ public class SpaceImpl extends MinimalEObjectImpl.Container implements Space { */ protected float z = Z_EDEFAULT; + /** + * The cached value of the '{@link #getCentrePoint() <em>Centre Point</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getCentrePoint() + * @generated + * @ordered + */ + protected Placing centrePoint; + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -170,6 +183,46 @@ public class SpaceImpl extends MinimalEObjectImpl.Container implements Space { eNotify(new ENotificationImpl(this, Notification.SET, IPos_DatamodelPackage.SPACE__Z, oldZ, z)); } + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Placing getCentrePoint() { + if (centrePoint != null && centrePoint.eIsProxy()) { + InternalEObject oldCentrePoint = (InternalEObject) centrePoint; + centrePoint = (Placing) eResolveProxy(oldCentrePoint); + if (centrePoint != oldCentrePoint) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, IPos_DatamodelPackage.SPACE__CENTRE_POINT, + oldCentrePoint, centrePoint)); + } + } + return centrePoint; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Placing basicGetCentrePoint() { + return centrePoint; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setCentrePoint(Placing newCentrePoint) { + Placing oldCentrePoint = centrePoint; + centrePoint = newCentrePoint; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, IPos_DatamodelPackage.SPACE__CENTRE_POINT, + oldCentrePoint, centrePoint)); + } + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -184,6 +237,10 @@ public class SpaceImpl extends MinimalEObjectImpl.Container implements Space { return getY(); case IPos_DatamodelPackage.SPACE__Z: return getZ(); + case IPos_DatamodelPackage.SPACE__CENTRE_POINT: + if (resolve) + return getCentrePoint(); + return basicGetCentrePoint(); } return super.eGet(featureID, resolve, coreType); } @@ -205,6 +262,9 @@ public class SpaceImpl extends MinimalEObjectImpl.Container implements Space { case IPos_DatamodelPackage.SPACE__Z: setZ((Float) newValue); return; + case IPos_DatamodelPackage.SPACE__CENTRE_POINT: + setCentrePoint((Placing) newValue); + return; } super.eSet(featureID, newValue); } @@ -226,6 +286,9 @@ public class SpaceImpl extends MinimalEObjectImpl.Container implements Space { case IPos_DatamodelPackage.SPACE__Z: setZ(Z_EDEFAULT); return; + case IPos_DatamodelPackage.SPACE__CENTRE_POINT: + setCentrePoint((Placing) null); + return; } super.eUnset(featureID); } @@ -244,6 +307,8 @@ public class SpaceImpl extends MinimalEObjectImpl.Container implements Space { return y != Y_EDEFAULT; case IPos_DatamodelPackage.SPACE__Z: return z != Z_EDEFAULT; + case IPos_DatamodelPackage.SPACE__CENTRE_POINT: + return centrePoint != null; } return super.eIsSet(featureID); } diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/WGS84PointImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/WGS84PointImpl.java index d10e4dad8157018667aa973e146a0da384f646b0..e140f5c22d1277f0c52036062ae2300ce4e36291 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/WGS84PointImpl.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/WGS84PointImpl.java @@ -10,7 +10,6 @@ import org.eclipse.emf.common.notify.Notification; import org.eclipse.emf.ecore.EClass; import org.eclipse.emf.ecore.impl.ENotificationImpl; -import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; /** * <!-- begin-user-doc --> @@ -27,7 +26,7 @@ import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; * * @generated */ -public class WGS84PointImpl extends MinimalEObjectImpl.Container implements WGS84Point { +public class WGS84PointImpl extends PointImpl implements WGS84Point { /** * The default value of the '{@link #getLongitude() <em>Longitude</em>}' attribute. * <!-- begin-user-doc --> diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/WorldModelImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/WorldModelImpl.java index 8a77addf4003671cf4e02a16e1336038b4499880..94fa6e2a417fc5c56491b514e71c66e285787f66 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/WorldModelImpl.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/WorldModelImpl.java @@ -4,6 +4,8 @@ package ipos.project.DataModellntegration.iPos_Datamodel.impl; import ipos.project.DataModellntegration.iPos_Datamodel.Agent; import ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage; +import ipos.project.DataModellntegration.iPos_Datamodel.POI; +import ipos.project.DataModellntegration.iPos_Datamodel.ReferenceSystem; import ipos.project.DataModellntegration.iPos_Datamodel.WorldModel; import ipos.project.DataModellntegration.iPos_Datamodel.ZoneMap; @@ -26,7 +28,9 @@ import org.eclipse.emf.ecore.util.EObjectResolvingEList; * </p> * <ul> * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.WorldModelImpl#getAgent <em>Agent</em>}</li> - * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.WorldModelImpl#getZonemap <em>Zonemap</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.WorldModelImpl#getZoneMap <em>Zone Map</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.WorldModelImpl#getPois <em>Pois</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.WorldModelImpl#getReferenceSystem <em>Reference System</em>}</li> * </ul> * * @generated @@ -43,14 +47,34 @@ public class WorldModelImpl extends MinimalEObjectImpl.Container implements Worl protected EList<Agent> agent; /** - * The cached value of the '{@link #getZonemap() <em>Zonemap</em>}' reference list. + * The cached value of the '{@link #getZoneMap() <em>Zone Map</em>}' reference list. * <!-- begin-user-doc --> * <!-- end-user-doc --> - * @see #getZonemap() + * @see #getZoneMap() * @generated * @ordered */ - protected EList<ZoneMap> zonemap; + protected EList<ZoneMap> zoneMap; + + /** + * The cached value of the '{@link #getPois() <em>Pois</em>}' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getPois() + * @generated + * @ordered + */ + protected EList<POI> pois; + + /** + * The cached value of the '{@link #getReferenceSystem() <em>Reference System</em>}' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getReferenceSystem() + * @generated + * @ordered + */ + protected EList<ReferenceSystem> referenceSystem; /** * <!-- begin-user-doc --> @@ -88,12 +112,37 @@ public class WorldModelImpl extends MinimalEObjectImpl.Container implements Worl * <!-- end-user-doc --> * @generated */ - public EList<ZoneMap> getZonemap() { - if (zonemap == null) { - zonemap = new EObjectResolvingEList<ZoneMap>(ZoneMap.class, this, - IPos_DatamodelPackage.WORLD_MODEL__ZONEMAP); + public EList<ZoneMap> getZoneMap() { + if (zoneMap == null) { + zoneMap = new EObjectResolvingEList<ZoneMap>(ZoneMap.class, this, + IPos_DatamodelPackage.WORLD_MODEL__ZONE_MAP); + } + return zoneMap; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EList<POI> getPois() { + if (pois == null) { + pois = new EObjectResolvingEList<POI>(POI.class, this, IPos_DatamodelPackage.WORLD_MODEL__POIS); } - return zonemap; + return pois; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EList<ReferenceSystem> getReferenceSystem() { + if (referenceSystem == null) { + referenceSystem = new EObjectResolvingEList<ReferenceSystem>(ReferenceSystem.class, this, + IPos_DatamodelPackage.WORLD_MODEL__REFERENCE_SYSTEM); + } + return referenceSystem; } /** @@ -106,8 +155,12 @@ public class WorldModelImpl extends MinimalEObjectImpl.Container implements Worl switch (featureID) { case IPos_DatamodelPackage.WORLD_MODEL__AGENT: return getAgent(); - case IPos_DatamodelPackage.WORLD_MODEL__ZONEMAP: - return getZonemap(); + case IPos_DatamodelPackage.WORLD_MODEL__ZONE_MAP: + return getZoneMap(); + case IPos_DatamodelPackage.WORLD_MODEL__POIS: + return getPois(); + case IPos_DatamodelPackage.WORLD_MODEL__REFERENCE_SYSTEM: + return getReferenceSystem(); } return super.eGet(featureID, resolve, coreType); } @@ -125,9 +178,17 @@ public class WorldModelImpl extends MinimalEObjectImpl.Container implements Worl getAgent().clear(); getAgent().addAll((Collection<? extends Agent>) newValue); return; - case IPos_DatamodelPackage.WORLD_MODEL__ZONEMAP: - getZonemap().clear(); - getZonemap().addAll((Collection<? extends ZoneMap>) newValue); + case IPos_DatamodelPackage.WORLD_MODEL__ZONE_MAP: + getZoneMap().clear(); + getZoneMap().addAll((Collection<? extends ZoneMap>) newValue); + return; + case IPos_DatamodelPackage.WORLD_MODEL__POIS: + getPois().clear(); + getPois().addAll((Collection<? extends POI>) newValue); + return; + case IPos_DatamodelPackage.WORLD_MODEL__REFERENCE_SYSTEM: + getReferenceSystem().clear(); + getReferenceSystem().addAll((Collection<? extends ReferenceSystem>) newValue); return; } super.eSet(featureID, newValue); @@ -144,8 +205,14 @@ public class WorldModelImpl extends MinimalEObjectImpl.Container implements Worl case IPos_DatamodelPackage.WORLD_MODEL__AGENT: getAgent().clear(); return; - case IPos_DatamodelPackage.WORLD_MODEL__ZONEMAP: - getZonemap().clear(); + case IPos_DatamodelPackage.WORLD_MODEL__ZONE_MAP: + getZoneMap().clear(); + return; + case IPos_DatamodelPackage.WORLD_MODEL__POIS: + getPois().clear(); + return; + case IPos_DatamodelPackage.WORLD_MODEL__REFERENCE_SYSTEM: + getReferenceSystem().clear(); return; } super.eUnset(featureID); @@ -161,8 +228,12 @@ public class WorldModelImpl extends MinimalEObjectImpl.Container implements Worl switch (featureID) { case IPos_DatamodelPackage.WORLD_MODEL__AGENT: return agent != null && !agent.isEmpty(); - case IPos_DatamodelPackage.WORLD_MODEL__ZONEMAP: - return zonemap != null && !zonemap.isEmpty(); + case IPos_DatamodelPackage.WORLD_MODEL__ZONE_MAP: + return zoneMap != null && !zoneMap.isEmpty(); + case IPos_DatamodelPackage.WORLD_MODEL__POIS: + return pois != null && !pois.isEmpty(); + case IPos_DatamodelPackage.WORLD_MODEL__REFERENCE_SYSTEM: + return referenceSystem != null && !referenceSystem.isEmpty(); } return super.eIsSet(featureID); } diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/ZoneDescriptorImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/ZoneDescriptorImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..fb9b988ccab577eeaf49221c0ffb1718cfc47e11 --- /dev/null +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/ZoneDescriptorImpl.java @@ -0,0 +1,221 @@ +/** + */ +package ipos.project.DataModellntegration.iPos_Datamodel.impl; + +import ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelPackage; +import ipos.project.DataModellntegration.iPos_Datamodel.ZoneDescriptor; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Zone Descriptor</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.ZoneDescriptorImpl#getZoneId <em>Zone Id</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.ZoneDescriptorImpl#getNotificationType <em>Notification Type</em>}</li> + * </ul> + * + * @generated + */ +public class ZoneDescriptorImpl extends MinimalEObjectImpl.Container implements ZoneDescriptor { + /** + * The default value of the '{@link #getZoneId() <em>Zone Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getZoneId() + * @generated + * @ordered + */ + protected static final String ZONE_ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getZoneId() <em>Zone Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getZoneId() + * @generated + * @ordered + */ + protected String zoneId = ZONE_ID_EDEFAULT; + + /** + * The default value of the '{@link #getNotificationType() <em>Notification Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getNotificationType() + * @generated + * @ordered + */ + protected static final String NOTIFICATION_TYPE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getNotificationType() <em>Notification Type</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getNotificationType() + * @generated + * @ordered + */ + protected String notificationType = NOTIFICATION_TYPE_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected ZoneDescriptorImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return IPos_DatamodelPackage.Literals.ZONE_DESCRIPTOR; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getZoneId() { + return zoneId; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setZoneId(String newZoneId) { + String oldZoneId = zoneId; + zoneId = newZoneId; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, IPos_DatamodelPackage.ZONE_DESCRIPTOR__ZONE_ID, + oldZoneId, zoneId)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getNotificationType() { + return notificationType; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setNotificationType(String newNotificationType) { + String oldNotificationType = notificationType; + notificationType = newNotificationType; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, + IPos_DatamodelPackage.ZONE_DESCRIPTOR__NOTIFICATION_TYPE, oldNotificationType, notificationType)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case IPos_DatamodelPackage.ZONE_DESCRIPTOR__ZONE_ID: + return getZoneId(); + case IPos_DatamodelPackage.ZONE_DESCRIPTOR__NOTIFICATION_TYPE: + return getNotificationType(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case IPos_DatamodelPackage.ZONE_DESCRIPTOR__ZONE_ID: + setZoneId((String) newValue); + return; + case IPos_DatamodelPackage.ZONE_DESCRIPTOR__NOTIFICATION_TYPE: + setNotificationType((String) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case IPos_DatamodelPackage.ZONE_DESCRIPTOR__ZONE_ID: + setZoneId(ZONE_ID_EDEFAULT); + return; + case IPos_DatamodelPackage.ZONE_DESCRIPTOR__NOTIFICATION_TYPE: + setNotificationType(NOTIFICATION_TYPE_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case IPos_DatamodelPackage.ZONE_DESCRIPTOR__ZONE_ID: + return ZONE_ID_EDEFAULT == null ? zoneId != null : !ZONE_ID_EDEFAULT.equals(zoneId); + case IPos_DatamodelPackage.ZONE_DESCRIPTOR__NOTIFICATION_TYPE: + return NOTIFICATION_TYPE_EDEFAULT == null ? notificationType != null + : !NOTIFICATION_TYPE_EDEFAULT.equals(notificationType); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (zoneId: "); + result.append(zoneId); + result.append(", notificationType: "); + result.append(notificationType); + result.append(')'); + return result.toString(); + } + +} //ZoneDescriptorImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/ZoneImpl.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/ZoneImpl.java index f756273e2bc48c6226d29364d807313d45a5f44d..72987b7c19692ba9b6464b0507f90b5e5e25daa5 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/ZoneImpl.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/impl/ZoneImpl.java @@ -8,6 +8,7 @@ import ipos.project.DataModellntegration.iPos_Datamodel.Zone; import java.util.Collection; +import org.eclipse.emf.common.notify.Notification; import org.eclipse.emf.common.notify.NotificationChain; import org.eclipse.emf.common.util.EList; @@ -15,6 +16,9 @@ import org.eclipse.emf.common.util.EList; import org.eclipse.emf.ecore.EClass; import org.eclipse.emf.ecore.InternalEObject; +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + import org.eclipse.emf.ecore.util.EObjectContainmentEList; import org.eclipse.emf.ecore.util.InternalEList; @@ -27,11 +31,13 @@ import org.eclipse.emf.ecore.util.InternalEList; * </p> * <ul> * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.ZoneImpl#getSpace <em>Space</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.ZoneImpl#getName <em>Name</em>}</li> + * <li>{@link ipos.project.DataModellntegration.iPos_Datamodel.impl.ZoneImpl#getId <em>Id</em>}</li> * </ul> * * @generated */ -public class ZoneImpl extends ReferenceSystemImpl implements Zone { +public class ZoneImpl extends MinimalEObjectImpl.Container implements Zone { /** * The cached value of the '{@link #getSpace() <em>Space</em>}' containment reference list. * <!-- begin-user-doc --> @@ -42,6 +48,46 @@ public class ZoneImpl extends ReferenceSystemImpl implements Zone { */ protected EList<Space> space; + /** + * The default value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected static final String NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected String name = NAME_EDEFAULT; + + /** + * The default value of the '{@link #getId() <em>Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getId() + * @generated + * @ordered + */ + protected static final String ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getId() <em>Id</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getId() + * @generated + * @ordered + */ + protected String id = ID_EDEFAULT; + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -73,6 +119,48 @@ public class ZoneImpl extends ReferenceSystemImpl implements Zone { return space; } + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getName() { + return name; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setName(String newName) { + String oldName = name; + name = newName; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, IPos_DatamodelPackage.ZONE__NAME, oldName, name)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getId() { + return id; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setId(String newId) { + String oldId = id; + id = newId; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, IPos_DatamodelPackage.ZONE__ID, oldId, id)); + } + /** * <!-- begin-user-doc --> * <!-- end-user-doc --> @@ -97,6 +185,10 @@ public class ZoneImpl extends ReferenceSystemImpl implements Zone { switch (featureID) { case IPos_DatamodelPackage.ZONE__SPACE: return getSpace(); + case IPos_DatamodelPackage.ZONE__NAME: + return getName(); + case IPos_DatamodelPackage.ZONE__ID: + return getId(); } return super.eGet(featureID, resolve, coreType); } @@ -114,6 +206,12 @@ public class ZoneImpl extends ReferenceSystemImpl implements Zone { getSpace().clear(); getSpace().addAll((Collection<? extends Space>) newValue); return; + case IPos_DatamodelPackage.ZONE__NAME: + setName((String) newValue); + return; + case IPos_DatamodelPackage.ZONE__ID: + setId((String) newValue); + return; } super.eSet(featureID, newValue); } @@ -129,6 +227,12 @@ public class ZoneImpl extends ReferenceSystemImpl implements Zone { case IPos_DatamodelPackage.ZONE__SPACE: getSpace().clear(); return; + case IPos_DatamodelPackage.ZONE__NAME: + setName(NAME_EDEFAULT); + return; + case IPos_DatamodelPackage.ZONE__ID: + setId(ID_EDEFAULT); + return; } super.eUnset(featureID); } @@ -143,8 +247,31 @@ public class ZoneImpl extends ReferenceSystemImpl implements Zone { switch (featureID) { case IPos_DatamodelPackage.ZONE__SPACE: return space != null && !space.isEmpty(); + case IPos_DatamodelPackage.ZONE__NAME: + return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name); + case IPos_DatamodelPackage.ZONE__ID: + return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id); } return super.eIsSet(featureID); } + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (name: "); + result.append(name); + result.append(", id: "); + result.append(id); + result.append(')'); + return result.toString(); + } + } //ZoneImpl diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/util/IPos_DatamodelAdapterFactory.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/util/IPos_DatamodelAdapterFactory.java index 5d576dd7e67637b8956d294ce25a8cad1cce6152..a32b36ef5d6007518efdae7a6f05357d43699201 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/util/IPos_DatamodelAdapterFactory.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/util/IPos_DatamodelAdapterFactory.java @@ -81,11 +81,6 @@ public class IPos_DatamodelAdapterFactory extends AdapterFactoryImpl { return createLocalizableObjectAdapter(); } - @Override - public Adapter casePositionSensor(PositionSensor object) { - return createPositionSensorAdapter(); - } - @Override public Adapter casePlacing(Placing object) { return createPlacingAdapter(); @@ -101,16 +96,6 @@ public class IPos_DatamodelAdapterFactory extends AdapterFactoryImpl { return createOrientationAdapter(); } - @Override - public Adapter caseAbsolutePosition(AbsolutePosition object) { - return createAbsolutePositionAdapter(); - } - - @Override - public Adapter caseRelativePosition(RelativePosition object) { - return createRelativePositionAdapter(); - } - @Override public Adapter caseWGS84Point(WGS84Point object) { return createWGS84PointAdapter(); @@ -156,11 +141,6 @@ public class IPos_DatamodelAdapterFactory extends AdapterFactoryImpl { return createMapTypeAdapter(); } - @Override - public Adapter caseNetworkInterface(NetworkInterface object) { - return createNetworkInterfaceAdapter(); - } - @Override public Adapter caseQuaternion(Quaternion object) { return createQuaternionAdapter(); @@ -177,8 +157,8 @@ public class IPos_DatamodelAdapterFactory extends AdapterFactoryImpl { } @Override - public Adapter caseRawdata(Rawdata object) { - return createRawdataAdapter(); + public Adapter caseRawdataEvent(RawdataEvent object) { + return createRawdataEventAdapter(); } @Override @@ -201,11 +181,6 @@ public class IPos_DatamodelAdapterFactory extends AdapterFactoryImpl { return createIMUAdapter(); } - @Override - public Adapter caseAngularRate(AngularRate object) { - return createAngularRateAdapter(); - } - @Override public Adapter caseAcceleration(Acceleration object) { return createAccelerationAdapter(); @@ -221,51 +196,11 @@ public class IPos_DatamodelAdapterFactory extends AdapterFactoryImpl { return createPositionEventAdapter(); } - @Override - public Adapter caseRawdataEvent(RawdataEvent object) { - return createRawdataEventAdapter(); - } - - @Override - public Adapter caseTrackingRequest(TrackingRequest object) { - return createTrackingRequestAdapter(); - } - - @Override - public Adapter caseMonitoringRequest(MonitoringRequest object) { - return createMonitoringRequestAdapter(); - } - - @Override - public Adapter caseWorldModelUpdateRequest(WorldModelUpdateRequest object) { - return createWorldModelUpdateRequestAdapter(); - } - - @Override - public Adapter caseDataStorageRequest(DataStorageRequest object) { - return createDataStorageRequestAdapter(); - } - @Override public Adapter caseEventFilterConfiguration(EventFilterConfiguration object) { return createEventFilterConfigurationAdapter(); } - @Override - public Adapter caseWorldModelQueryRequest(WorldModelQueryRequest object) { - return createWorldModelQueryRequestAdapter(); - } - - @Override - public Adapter caseDataStorageQueryRequest(DataStorageQueryRequest object) { - return createDataStorageQueryRequestAdapter(); - } - - @Override - public Adapter caseAgentRegistrationRequest(AgentRegistrationRequest object) { - return createAgentRegistrationRequestAdapter(); - } - @Override public Adapter caseMonitoringTask(MonitoringTask object) { return createMonitoringTaskAdapter(); @@ -301,19 +236,14 @@ public class IPos_DatamodelAdapterFactory extends AdapterFactoryImpl { return createUWBAdapter(); } - @Override - public Adapter caseSensorConfigurationRequest(SensorConfigurationRequest object) { - return createSensorConfigurationRequestAdapter(); - } - @Override public Adapter caseOtherBeacon(OtherBeacon object) { return createOtherBeaconAdapter(); } @Override - public Adapter caseReferencePosition(ReferencePosition object) { - return createReferencePositionAdapter(); + public Adapter casePOI(POI object) { + return createPOIAdapter(); } @Override @@ -321,6 +251,21 @@ public class IPos_DatamodelAdapterFactory extends AdapterFactoryImpl { return createEventFilterConditionAdapter(); } + @Override + public Adapter caseZoneDescriptor(ZoneDescriptor object) { + return createZoneDescriptorAdapter(); + } + + @Override + public Adapter caseDataStorageQueryResponse(DataStorageQueryResponse object) { + return createDataStorageQueryResponseAdapter(); + } + + @Override + public Adapter caseMessageReceivedEvent(MessageReceivedEvent object) { + return createMessageReceivedEventAdapter(); + } + @Override public Adapter defaultCase(EObject object) { return createEObjectAdapter(); @@ -382,20 +327,6 @@ public class IPos_DatamodelAdapterFactory extends AdapterFactoryImpl { return null; } - /** - * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.PositionSensor <em>Position Sensor</em>}'. - * <!-- begin-user-doc --> - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * <!-- end-user-doc --> - * @return the new adapter. - * @see ipos.project.DataModellntegration.iPos_Datamodel.PositionSensor - * @generated - */ - public Adapter createPositionSensorAdapter() { - return null; - } - /** * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.Placing <em>Placing</em>}'. * <!-- begin-user-doc --> @@ -438,34 +369,6 @@ public class IPos_DatamodelAdapterFactory extends AdapterFactoryImpl { return null; } - /** - * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.AbsolutePosition <em>Absolute Position</em>}'. - * <!-- begin-user-doc --> - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * <!-- end-user-doc --> - * @return the new adapter. - * @see ipos.project.DataModellntegration.iPos_Datamodel.AbsolutePosition - * @generated - */ - public Adapter createAbsolutePositionAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.RelativePosition <em>Relative Position</em>}'. - * <!-- begin-user-doc --> - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * <!-- end-user-doc --> - * @return the new adapter. - * @see ipos.project.DataModellntegration.iPos_Datamodel.RelativePosition - * @generated - */ - public Adapter createRelativePositionAdapter() { - return null; - } - /** * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.WGS84Point <em>WGS84 Point</em>}'. * <!-- begin-user-doc --> @@ -592,20 +495,6 @@ public class IPos_DatamodelAdapterFactory extends AdapterFactoryImpl { return null; } - /** - * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.NetworkInterface <em>Network Interface</em>}'. - * <!-- begin-user-doc --> - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * <!-- end-user-doc --> - * @return the new adapter. - * @see ipos.project.DataModellntegration.iPos_Datamodel.NetworkInterface - * @generated - */ - public Adapter createNetworkInterfaceAdapter() { - return null; - } - /** * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.Quaternion <em>Quaternion</em>}'. * <!-- begin-user-doc --> @@ -649,16 +538,16 @@ public class IPos_DatamodelAdapterFactory extends AdapterFactoryImpl { } /** - * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.Rawdata <em>Rawdata</em>}'. + * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.RawdataEvent <em>Rawdata Event</em>}'. * <!-- begin-user-doc --> * This default implementation returns null so that we can easily ignore cases; * it's useful to ignore a case when inheritance will catch all the cases anyway. * <!-- end-user-doc --> * @return the new adapter. - * @see ipos.project.DataModellntegration.iPos_Datamodel.Rawdata + * @see ipos.project.DataModellntegration.iPos_Datamodel.RawdataEvent * @generated */ - public Adapter createRawdataAdapter() { + public Adapter createRawdataEventAdapter() { return null; } @@ -718,20 +607,6 @@ public class IPos_DatamodelAdapterFactory extends AdapterFactoryImpl { return null; } - /** - * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.AngularRate <em>Angular Rate</em>}'. - * <!-- begin-user-doc --> - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * <!-- end-user-doc --> - * @return the new adapter. - * @see ipos.project.DataModellntegration.iPos_Datamodel.AngularRate - * @generated - */ - public Adapter createAngularRateAdapter() { - return null; - } - /** * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.Acceleration <em>Acceleration</em>}'. * <!-- begin-user-doc --> @@ -774,76 +649,6 @@ public class IPos_DatamodelAdapterFactory extends AdapterFactoryImpl { return null; } - /** - * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.RawdataEvent <em>Rawdata Event</em>}'. - * <!-- begin-user-doc --> - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * <!-- end-user-doc --> - * @return the new adapter. - * @see ipos.project.DataModellntegration.iPos_Datamodel.RawdataEvent - * @generated - */ - public Adapter createRawdataEventAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.TrackingRequest <em>Tracking Request</em>}'. - * <!-- begin-user-doc --> - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * <!-- end-user-doc --> - * @return the new adapter. - * @see ipos.project.DataModellntegration.iPos_Datamodel.TrackingRequest - * @generated - */ - public Adapter createTrackingRequestAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.MonitoringRequest <em>Monitoring Request</em>}'. - * <!-- begin-user-doc --> - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * <!-- end-user-doc --> - * @return the new adapter. - * @see ipos.project.DataModellntegration.iPos_Datamodel.MonitoringRequest - * @generated - */ - public Adapter createMonitoringRequestAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.WorldModelUpdateRequest <em>World Model Update Request</em>}'. - * <!-- begin-user-doc --> - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * <!-- end-user-doc --> - * @return the new adapter. - * @see ipos.project.DataModellntegration.iPos_Datamodel.WorldModelUpdateRequest - * @generated - */ - public Adapter createWorldModelUpdateRequestAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.DataStorageRequest <em>Data Storage Request</em>}'. - * <!-- begin-user-doc --> - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * <!-- end-user-doc --> - * @return the new adapter. - * @see ipos.project.DataModellntegration.iPos_Datamodel.DataStorageRequest - * @generated - */ - public Adapter createDataStorageRequestAdapter() { - return null; - } - /** * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.EventFilterConfiguration <em>Event Filter Configuration</em>}'. * <!-- begin-user-doc --> @@ -859,198 +664,184 @@ public class IPos_DatamodelAdapterFactory extends AdapterFactoryImpl { } /** - * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.WorldModelQueryRequest <em>World Model Query Request</em>}'. - * <!-- begin-user-doc --> - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * <!-- end-user-doc --> - * @return the new adapter. - * @see ipos.project.DataModellntegration.iPos_Datamodel.WorldModelQueryRequest - * @generated - */ - public Adapter createWorldModelQueryRequestAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.DataStorageQueryRequest <em>Data Storage Query Request</em>}'. + * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.MonitoringTask <em>Monitoring Task</em>}'. * <!-- begin-user-doc --> * This default implementation returns null so that we can easily ignore cases; * it's useful to ignore a case when inheritance will catch all the cases anyway. * <!-- end-user-doc --> * @return the new adapter. - * @see ipos.project.DataModellntegration.iPos_Datamodel.DataStorageQueryRequest + * @see ipos.project.DataModellntegration.iPos_Datamodel.MonitoringTask * @generated */ - public Adapter createDataStorageQueryRequestAdapter() { + public Adapter createMonitoringTaskAdapter() { return null; } /** - * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.AgentRegistrationRequest <em>Agent Registration Request</em>}'. + * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.TrackingTask <em>Tracking Task</em>}'. * <!-- begin-user-doc --> * This default implementation returns null so that we can easily ignore cases; * it's useful to ignore a case when inheritance will catch all the cases anyway. * <!-- end-user-doc --> * @return the new adapter. - * @see ipos.project.DataModellntegration.iPos_Datamodel.AgentRegistrationRequest + * @see ipos.project.DataModellntegration.iPos_Datamodel.TrackingTask * @generated */ - public Adapter createAgentRegistrationRequestAdapter() { + public Adapter createTrackingTaskAdapter() { return null; } /** - * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.MonitoringTask <em>Monitoring Task</em>}'. + * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.WorldModel <em>World Model</em>}'. * <!-- begin-user-doc --> * This default implementation returns null so that we can easily ignore cases; * it's useful to ignore a case when inheritance will catch all the cases anyway. * <!-- end-user-doc --> * @return the new adapter. - * @see ipos.project.DataModellntegration.iPos_Datamodel.MonitoringTask + * @see ipos.project.DataModellntegration.iPos_Datamodel.WorldModel * @generated */ - public Adapter createMonitoringTaskAdapter() { + public Adapter createWorldModelAdapter() { return null; } /** - * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.TrackingTask <em>Tracking Task</em>}'. + * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.Barcode <em>Barcode</em>}'. * <!-- begin-user-doc --> * This default implementation returns null so that we can easily ignore cases; * it's useful to ignore a case when inheritance will catch all the cases anyway. * <!-- end-user-doc --> * @return the new adapter. - * @see ipos.project.DataModellntegration.iPos_Datamodel.TrackingTask + * @see ipos.project.DataModellntegration.iPos_Datamodel.Barcode * @generated */ - public Adapter createTrackingTaskAdapter() { + public Adapter createBarcodeAdapter() { return null; } /** - * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.WorldModel <em>World Model</em>}'. + * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.OtherProx <em>Other Prox</em>}'. * <!-- begin-user-doc --> * This default implementation returns null so that we can easily ignore cases; * it's useful to ignore a case when inheritance will catch all the cases anyway. * <!-- end-user-doc --> * @return the new adapter. - * @see ipos.project.DataModellntegration.iPos_Datamodel.WorldModel + * @see ipos.project.DataModellntegration.iPos_Datamodel.OtherProx * @generated */ - public Adapter createWorldModelAdapter() { + public Adapter createOtherProxAdapter() { return null; } /** - * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.Barcode <em>Barcode</em>}'. + * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.Bluetooth <em>Bluetooth</em>}'. * <!-- begin-user-doc --> * This default implementation returns null so that we can easily ignore cases; * it's useful to ignore a case when inheritance will catch all the cases anyway. * <!-- end-user-doc --> * @return the new adapter. - * @see ipos.project.DataModellntegration.iPos_Datamodel.Barcode + * @see ipos.project.DataModellntegration.iPos_Datamodel.Bluetooth * @generated */ - public Adapter createBarcodeAdapter() { + public Adapter createBluetoothAdapter() { return null; } /** - * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.OtherProx <em>Other Prox</em>}'. + * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.UWB <em>UWB</em>}'. * <!-- begin-user-doc --> * This default implementation returns null so that we can easily ignore cases; * it's useful to ignore a case when inheritance will catch all the cases anyway. * <!-- end-user-doc --> * @return the new adapter. - * @see ipos.project.DataModellntegration.iPos_Datamodel.OtherProx + * @see ipos.project.DataModellntegration.iPos_Datamodel.UWB * @generated */ - public Adapter createOtherProxAdapter() { + public Adapter createUWBAdapter() { return null; } /** - * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.Bluetooth <em>Bluetooth</em>}'. + * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.OtherBeacon <em>Other Beacon</em>}'. * <!-- begin-user-doc --> * This default implementation returns null so that we can easily ignore cases; * it's useful to ignore a case when inheritance will catch all the cases anyway. * <!-- end-user-doc --> * @return the new adapter. - * @see ipos.project.DataModellntegration.iPos_Datamodel.Bluetooth + * @see ipos.project.DataModellntegration.iPos_Datamodel.OtherBeacon * @generated */ - public Adapter createBluetoothAdapter() { + public Adapter createOtherBeaconAdapter() { return null; } /** - * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.UWB <em>UWB</em>}'. + * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.POI <em>POI</em>}'. * <!-- begin-user-doc --> * This default implementation returns null so that we can easily ignore cases; * it's useful to ignore a case when inheritance will catch all the cases anyway. * <!-- end-user-doc --> * @return the new adapter. - * @see ipos.project.DataModellntegration.iPos_Datamodel.UWB + * @see ipos.project.DataModellntegration.iPos_Datamodel.POI * @generated */ - public Adapter createUWBAdapter() { + public Adapter createPOIAdapter() { return null; } /** - * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.SensorConfigurationRequest <em>Sensor Configuration Request</em>}'. + * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.EventFilterCondition <em>Event Filter Condition</em>}'. * <!-- begin-user-doc --> * This default implementation returns null so that we can easily ignore cases; * it's useful to ignore a case when inheritance will catch all the cases anyway. * <!-- end-user-doc --> * @return the new adapter. - * @see ipos.project.DataModellntegration.iPos_Datamodel.SensorConfigurationRequest + * @see ipos.project.DataModellntegration.iPos_Datamodel.EventFilterCondition * @generated */ - public Adapter createSensorConfigurationRequestAdapter() { + public Adapter createEventFilterConditionAdapter() { return null; } /** - * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.OtherBeacon <em>Other Beacon</em>}'. + * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.ZoneDescriptor <em>Zone Descriptor</em>}'. * <!-- begin-user-doc --> * This default implementation returns null so that we can easily ignore cases; * it's useful to ignore a case when inheritance will catch all the cases anyway. * <!-- end-user-doc --> * @return the new adapter. - * @see ipos.project.DataModellntegration.iPos_Datamodel.OtherBeacon + * @see ipos.project.DataModellntegration.iPos_Datamodel.ZoneDescriptor * @generated */ - public Adapter createOtherBeaconAdapter() { + public Adapter createZoneDescriptorAdapter() { return null; } /** - * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.ReferencePosition <em>Reference Position</em>}'. + * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.DataStorageQueryResponse <em>Data Storage Query Response</em>}'. * <!-- begin-user-doc --> * This default implementation returns null so that we can easily ignore cases; * it's useful to ignore a case when inheritance will catch all the cases anyway. * <!-- end-user-doc --> * @return the new adapter. - * @see ipos.project.DataModellntegration.iPos_Datamodel.ReferencePosition + * @see ipos.project.DataModellntegration.iPos_Datamodel.DataStorageQueryResponse * @generated */ - public Adapter createReferencePositionAdapter() { + public Adapter createDataStorageQueryResponseAdapter() { return null; } /** - * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.EventFilterCondition <em>Event Filter Condition</em>}'. + * Creates a new adapter for an object of class '{@link ipos.project.DataModellntegration.iPos_Datamodel.MessageReceivedEvent <em>Message Received Event</em>}'. * <!-- begin-user-doc --> * This default implementation returns null so that we can easily ignore cases; * it's useful to ignore a case when inheritance will catch all the cases anyway. * <!-- end-user-doc --> * @return the new adapter. - * @see ipos.project.DataModellntegration.iPos_Datamodel.EventFilterCondition + * @see ipos.project.DataModellntegration.iPos_Datamodel.MessageReceivedEvent * @generated */ - public Adapter createEventFilterConditionAdapter() { + public Adapter createMessageReceivedEventAdapter() { return null; } diff --git a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/util/IPos_DatamodelSwitch.java b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/util/IPos_DatamodelSwitch.java index 4652b193a2ba3bafef7a408dc484ab71fe536f0d..9a47158b6f8c4d29134c4ba62659328b80077c02 100644 --- a/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/util/IPos_DatamodelSwitch.java +++ b/src/main/java/ipos/project/DataModellntegration/iPos_Datamodel/util/IPos_DatamodelSwitch.java @@ -91,15 +91,6 @@ public class IPos_DatamodelSwitch<T> extends Switch<T> { result = defaultCase(theEObject); return result; } - case IPos_DatamodelPackage.POSITION_SENSOR: { - PositionSensor positionSensor = (PositionSensor) theEObject; - T result = casePositionSensor(positionSensor); - if (result == null) - result = caseEntity(positionSensor); - if (result == null) - result = defaultCase(theEObject); - return result; - } case IPos_DatamodelPackage.PLACING: { Placing placing = (Placing) theEObject; T result = casePlacing(placing); @@ -121,27 +112,11 @@ public class IPos_DatamodelSwitch<T> extends Switch<T> { result = defaultCase(theEObject); return result; } - case IPos_DatamodelPackage.ABSOLUTE_POSITION: { - AbsolutePosition absolutePosition = (AbsolutePosition) theEObject; - T result = caseAbsolutePosition(absolutePosition); - if (result == null) - result = casePosition(absolutePosition); - if (result == null) - result = defaultCase(theEObject); - return result; - } - case IPos_DatamodelPackage.RELATIVE_POSITION: { - RelativePosition relativePosition = (RelativePosition) theEObject; - T result = caseRelativePosition(relativePosition); - if (result == null) - result = casePosition(relativePosition); - if (result == null) - result = defaultCase(theEObject); - return result; - } case IPos_DatamodelPackage.WGS84_POINT: { WGS84Point wgs84Point = (WGS84Point) theEObject; T result = caseWGS84Point(wgs84Point); + if (result == null) + result = casePoint(wgs84Point); if (result == null) result = defaultCase(theEObject); return result; @@ -181,8 +156,6 @@ public class IPos_DatamodelSwitch<T> extends Switch<T> { case IPos_DatamodelPackage.ZONE: { Zone zone = (Zone) theEObject; T result = caseZone(zone); - if (result == null) - result = caseReferenceSystem(zone); if (result == null) result = defaultCase(theEObject); return result; @@ -210,13 +183,6 @@ public class IPos_DatamodelSwitch<T> extends Switch<T> { result = defaultCase(theEObject); return result; } - case IPos_DatamodelPackage.NETWORK_INTERFACE: { - NetworkInterface networkInterface = (NetworkInterface) theEObject; - T result = caseNetworkInterface(networkInterface); - if (result == null) - result = defaultCase(theEObject); - return result; - } case IPos_DatamodelPackage.QUATERNION: { Quaternion quaternion = (Quaternion) theEObject; T result = caseQuaternion(quaternion); @@ -242,9 +208,9 @@ public class IPos_DatamodelSwitch<T> extends Switch<T> { result = defaultCase(theEObject); return result; } - case IPos_DatamodelPackage.RAWDATA: { - Rawdata rawdata = (Rawdata) theEObject; - T result = caseRawdata(rawdata); + case IPos_DatamodelPackage.RAWDATA_EVENT: { + RawdataEvent rawdataEvent = (RawdataEvent) theEObject; + T result = caseRawdataEvent(rawdataEvent); if (result == null) result = defaultCase(theEObject); return result; @@ -253,7 +219,7 @@ public class IPos_DatamodelSwitch<T> extends Switch<T> { Proximity proximity = (Proximity) theEObject; T result = caseProximity(proximity); if (result == null) - result = caseRawdata(proximity); + result = caseRawdataEvent(proximity); if (result == null) result = defaultCase(theEObject); return result; @@ -264,7 +230,7 @@ public class IPos_DatamodelSwitch<T> extends Switch<T> { if (result == null) result = caseProximity(rfid); if (result == null) - result = caseRawdata(rfid); + result = caseRawdataEvent(rfid); if (result == null) result = defaultCase(theEObject); return result; @@ -275,7 +241,7 @@ public class IPos_DatamodelSwitch<T> extends Switch<T> { if (result == null) result = caseProximity(nfc); if (result == null) - result = caseRawdata(nfc); + result = caseRawdataEvent(nfc); if (result == null) result = defaultCase(theEObject); return result; @@ -284,14 +250,7 @@ public class IPos_DatamodelSwitch<T> extends Switch<T> { IMU imu = (IMU) theEObject; T result = caseIMU(imu); if (result == null) - result = caseRawdata(imu); - if (result == null) - result = defaultCase(theEObject); - return result; - } - case IPos_DatamodelPackage.ANGULAR_RATE: { - AngularRate angularRate = (AngularRate) theEObject; - T result = caseAngularRate(angularRate); + result = caseRawdataEvent(imu); if (result == null) result = defaultCase(theEObject); return result; @@ -307,7 +266,7 @@ public class IPos_DatamodelSwitch<T> extends Switch<T> { Beacon beacon = (Beacon) theEObject; T result = caseBeacon(beacon); if (result == null) - result = caseRawdata(beacon); + result = caseRawdataEvent(beacon); if (result == null) result = defaultCase(theEObject); return result; @@ -319,41 +278,6 @@ public class IPos_DatamodelSwitch<T> extends Switch<T> { result = defaultCase(theEObject); return result; } - case IPos_DatamodelPackage.RAWDATA_EVENT: { - RawdataEvent rawdataEvent = (RawdataEvent) theEObject; - T result = caseRawdataEvent(rawdataEvent); - if (result == null) - result = defaultCase(theEObject); - return result; - } - case IPos_DatamodelPackage.TRACKING_REQUEST: { - TrackingRequest trackingRequest = (TrackingRequest) theEObject; - T result = caseTrackingRequest(trackingRequest); - if (result == null) - result = defaultCase(theEObject); - return result; - } - case IPos_DatamodelPackage.MONITORING_REQUEST: { - MonitoringRequest monitoringRequest = (MonitoringRequest) theEObject; - T result = caseMonitoringRequest(monitoringRequest); - if (result == null) - result = defaultCase(theEObject); - return result; - } - case IPos_DatamodelPackage.WORLD_MODEL_UPDATE_REQUEST: { - WorldModelUpdateRequest worldModelUpdateRequest = (WorldModelUpdateRequest) theEObject; - T result = caseWorldModelUpdateRequest(worldModelUpdateRequest); - if (result == null) - result = defaultCase(theEObject); - return result; - } - case IPos_DatamodelPackage.DATA_STORAGE_REQUEST: { - DataStorageRequest dataStorageRequest = (DataStorageRequest) theEObject; - T result = caseDataStorageRequest(dataStorageRequest); - if (result == null) - result = defaultCase(theEObject); - return result; - } case IPos_DatamodelPackage.EVENT_FILTER_CONFIGURATION: { EventFilterConfiguration eventFilterConfiguration = (EventFilterConfiguration) theEObject; T result = caseEventFilterConfiguration(eventFilterConfiguration); @@ -361,27 +285,6 @@ public class IPos_DatamodelSwitch<T> extends Switch<T> { result = defaultCase(theEObject); return result; } - case IPos_DatamodelPackage.WORLD_MODEL_QUERY_REQUEST: { - WorldModelQueryRequest worldModelQueryRequest = (WorldModelQueryRequest) theEObject; - T result = caseWorldModelQueryRequest(worldModelQueryRequest); - if (result == null) - result = defaultCase(theEObject); - return result; - } - case IPos_DatamodelPackage.DATA_STORAGE_QUERY_REQUEST: { - DataStorageQueryRequest dataStorageQueryRequest = (DataStorageQueryRequest) theEObject; - T result = caseDataStorageQueryRequest(dataStorageQueryRequest); - if (result == null) - result = defaultCase(theEObject); - return result; - } - case IPos_DatamodelPackage.AGENT_REGISTRATION_REQUEST: { - AgentRegistrationRequest agentRegistrationRequest = (AgentRegistrationRequest) theEObject; - T result = caseAgentRegistrationRequest(agentRegistrationRequest); - if (result == null) - result = defaultCase(theEObject); - return result; - } case IPos_DatamodelPackage.MONITORING_TASK: { MonitoringTask monitoringTask = (MonitoringTask) theEObject; T result = caseMonitoringTask(monitoringTask); @@ -409,7 +312,7 @@ public class IPos_DatamodelSwitch<T> extends Switch<T> { if (result == null) result = caseProximity(barcode); if (result == null) - result = caseRawdata(barcode); + result = caseRawdataEvent(barcode); if (result == null) result = defaultCase(theEObject); return result; @@ -420,7 +323,7 @@ public class IPos_DatamodelSwitch<T> extends Switch<T> { if (result == null) result = caseProximity(otherProx); if (result == null) - result = caseRawdata(otherProx); + result = caseRawdataEvent(otherProx); if (result == null) result = defaultCase(theEObject); return result; @@ -431,7 +334,7 @@ public class IPos_DatamodelSwitch<T> extends Switch<T> { if (result == null) result = caseBeacon(bluetooth); if (result == null) - result = caseRawdata(bluetooth); + result = caseRawdataEvent(bluetooth); if (result == null) result = defaultCase(theEObject); return result; @@ -442,14 +345,7 @@ public class IPos_DatamodelSwitch<T> extends Switch<T> { if (result == null) result = caseBeacon(uwb); if (result == null) - result = caseRawdata(uwb); - if (result == null) - result = defaultCase(theEObject); - return result; - } - case IPos_DatamodelPackage.SENSOR_CONFIGURATION_REQUEST: { - SensorConfigurationRequest sensorConfigurationRequest = (SensorConfigurationRequest) theEObject; - T result = caseSensorConfigurationRequest(sensorConfigurationRequest); + result = caseRawdataEvent(uwb); if (result == null) result = defaultCase(theEObject); return result; @@ -460,14 +356,14 @@ public class IPos_DatamodelSwitch<T> extends Switch<T> { if (result == null) result = caseBeacon(otherBeacon); if (result == null) - result = caseRawdata(otherBeacon); + result = caseRawdataEvent(otherBeacon); if (result == null) result = defaultCase(theEObject); return result; } - case IPos_DatamodelPackage.REFERENCE_POSITION: { - ReferencePosition referencePosition = (ReferencePosition) theEObject; - T result = caseReferencePosition(referencePosition); + case IPos_DatamodelPackage.POI: { + POI poi = (POI) theEObject; + T result = casePOI(poi); if (result == null) result = defaultCase(theEObject); return result; @@ -479,6 +375,27 @@ public class IPos_DatamodelSwitch<T> extends Switch<T> { result = defaultCase(theEObject); return result; } + case IPos_DatamodelPackage.ZONE_DESCRIPTOR: { + ZoneDescriptor zoneDescriptor = (ZoneDescriptor) theEObject; + T result = caseZoneDescriptor(zoneDescriptor); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case IPos_DatamodelPackage.DATA_STORAGE_QUERY_RESPONSE: { + DataStorageQueryResponse dataStorageQueryResponse = (DataStorageQueryResponse) theEObject; + T result = caseDataStorageQueryResponse(dataStorageQueryResponse); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case IPos_DatamodelPackage.MESSAGE_RECEIVED_EVENT: { + MessageReceivedEvent messageReceivedEvent = (MessageReceivedEvent) theEObject; + T result = caseMessageReceivedEvent(messageReceivedEvent); + if (result == null) + result = defaultCase(theEObject); + return result; + } default: return defaultCase(theEObject); } @@ -529,21 +446,6 @@ public class IPos_DatamodelSwitch<T> extends Switch<T> { return null; } - /** - * Returns the result of interpreting the object as an instance of '<em>Position Sensor</em>'. - * <!-- begin-user-doc --> - * This implementation returns null; - * returning a non-null result will terminate the switch. - * <!-- end-user-doc --> - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of '<em>Position Sensor</em>'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T casePositionSensor(PositionSensor object) { - return null; - } - /** * Returns the result of interpreting the object as an instance of '<em>Placing</em>'. * <!-- begin-user-doc --> @@ -589,36 +491,6 @@ public class IPos_DatamodelSwitch<T> extends Switch<T> { return null; } - /** - * Returns the result of interpreting the object as an instance of '<em>Absolute Position</em>'. - * <!-- begin-user-doc --> - * This implementation returns null; - * returning a non-null result will terminate the switch. - * <!-- end-user-doc --> - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of '<em>Absolute Position</em>'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseAbsolutePosition(AbsolutePosition object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of '<em>Relative Position</em>'. - * <!-- begin-user-doc --> - * This implementation returns null; - * returning a non-null result will terminate the switch. - * <!-- end-user-doc --> - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of '<em>Relative Position</em>'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseRelativePosition(RelativePosition object) { - return null; - } - /** * Returns the result of interpreting the object as an instance of '<em>WGS84 Point</em>'. * <!-- begin-user-doc --> @@ -754,21 +626,6 @@ public class IPos_DatamodelSwitch<T> extends Switch<T> { return null; } - /** - * Returns the result of interpreting the object as an instance of '<em>Network Interface</em>'. - * <!-- begin-user-doc --> - * This implementation returns null; - * returning a non-null result will terminate the switch. - * <!-- end-user-doc --> - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of '<em>Network Interface</em>'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseNetworkInterface(NetworkInterface object) { - return null; - } - /** * Returns the result of interpreting the object as an instance of '<em>Quaternion</em>'. * <!-- begin-user-doc --> @@ -815,17 +672,17 @@ public class IPos_DatamodelSwitch<T> extends Switch<T> { } /** - * Returns the result of interpreting the object as an instance of '<em>Rawdata</em>'. + * Returns the result of interpreting the object as an instance of '<em>Rawdata Event</em>'. * <!-- begin-user-doc --> * This implementation returns null; * returning a non-null result will terminate the switch. * <!-- end-user-doc --> * @param object the target of the switch. - * @return the result of interpreting the object as an instance of '<em>Rawdata</em>'. + * @return the result of interpreting the object as an instance of '<em>Rawdata Event</em>'. * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) * @generated */ - public T caseRawdata(Rawdata object) { + public T caseRawdataEvent(RawdataEvent object) { return null; } @@ -889,21 +746,6 @@ public class IPos_DatamodelSwitch<T> extends Switch<T> { return null; } - /** - * Returns the result of interpreting the object as an instance of '<em>Angular Rate</em>'. - * <!-- begin-user-doc --> - * This implementation returns null; - * returning a non-null result will terminate the switch. - * <!-- end-user-doc --> - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of '<em>Angular Rate</em>'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseAngularRate(AngularRate object) { - return null; - } - /** * Returns the result of interpreting the object as an instance of '<em>Acceleration</em>'. * <!-- begin-user-doc --> @@ -949,81 +791,6 @@ public class IPos_DatamodelSwitch<T> extends Switch<T> { return null; } - /** - * Returns the result of interpreting the object as an instance of '<em>Rawdata Event</em>'. - * <!-- begin-user-doc --> - * This implementation returns null; - * returning a non-null result will terminate the switch. - * <!-- end-user-doc --> - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of '<em>Rawdata Event</em>'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseRawdataEvent(RawdataEvent object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of '<em>Tracking Request</em>'. - * <!-- begin-user-doc --> - * This implementation returns null; - * returning a non-null result will terminate the switch. - * <!-- end-user-doc --> - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of '<em>Tracking Request</em>'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseTrackingRequest(TrackingRequest object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of '<em>Monitoring Request</em>'. - * <!-- begin-user-doc --> - * This implementation returns null; - * returning a non-null result will terminate the switch. - * <!-- end-user-doc --> - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of '<em>Monitoring Request</em>'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseMonitoringRequest(MonitoringRequest object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of '<em>World Model Update Request</em>'. - * <!-- begin-user-doc --> - * This implementation returns null; - * returning a non-null result will terminate the switch. - * <!-- end-user-doc --> - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of '<em>World Model Update Request</em>'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseWorldModelUpdateRequest(WorldModelUpdateRequest object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of '<em>Data Storage Request</em>'. - * <!-- begin-user-doc --> - * This implementation returns null; - * returning a non-null result will terminate the switch. - * <!-- end-user-doc --> - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of '<em>Data Storage Request</em>'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseDataStorageRequest(DataStorageRequest object) { - return null; - } - /** * Returns the result of interpreting the object as an instance of '<em>Event Filter Configuration</em>'. * <!-- begin-user-doc --> @@ -1040,212 +807,197 @@ public class IPos_DatamodelSwitch<T> extends Switch<T> { } /** - * Returns the result of interpreting the object as an instance of '<em>World Model Query Request</em>'. - * <!-- begin-user-doc --> - * This implementation returns null; - * returning a non-null result will terminate the switch. - * <!-- end-user-doc --> - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of '<em>World Model Query Request</em>'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseWorldModelQueryRequest(WorldModelQueryRequest object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of '<em>Data Storage Query Request</em>'. + * Returns the result of interpreting the object as an instance of '<em>Monitoring Task</em>'. * <!-- begin-user-doc --> * This implementation returns null; * returning a non-null result will terminate the switch. * <!-- end-user-doc --> * @param object the target of the switch. - * @return the result of interpreting the object as an instance of '<em>Data Storage Query Request</em>'. + * @return the result of interpreting the object as an instance of '<em>Monitoring Task</em>'. * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) * @generated */ - public T caseDataStorageQueryRequest(DataStorageQueryRequest object) { + public T caseMonitoringTask(MonitoringTask object) { return null; } /** - * Returns the result of interpreting the object as an instance of '<em>Agent Registration Request</em>'. + * Returns the result of interpreting the object as an instance of '<em>Tracking Task</em>'. * <!-- begin-user-doc --> * This implementation returns null; * returning a non-null result will terminate the switch. * <!-- end-user-doc --> * @param object the target of the switch. - * @return the result of interpreting the object as an instance of '<em>Agent Registration Request</em>'. + * @return the result of interpreting the object as an instance of '<em>Tracking Task</em>'. * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) * @generated */ - public T caseAgentRegistrationRequest(AgentRegistrationRequest object) { + public T caseTrackingTask(TrackingTask object) { return null; } /** - * Returns the result of interpreting the object as an instance of '<em>Monitoring Task</em>'. + * Returns the result of interpreting the object as an instance of '<em>World Model</em>'. * <!-- begin-user-doc --> * This implementation returns null; * returning a non-null result will terminate the switch. * <!-- end-user-doc --> * @param object the target of the switch. - * @return the result of interpreting the object as an instance of '<em>Monitoring Task</em>'. + * @return the result of interpreting the object as an instance of '<em>World Model</em>'. * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) * @generated */ - public T caseMonitoringTask(MonitoringTask object) { + public T caseWorldModel(WorldModel object) { return null; } /** - * Returns the result of interpreting the object as an instance of '<em>Tracking Task</em>'. + * Returns the result of interpreting the object as an instance of '<em>Barcode</em>'. * <!-- begin-user-doc --> * This implementation returns null; * returning a non-null result will terminate the switch. * <!-- end-user-doc --> * @param object the target of the switch. - * @return the result of interpreting the object as an instance of '<em>Tracking Task</em>'. + * @return the result of interpreting the object as an instance of '<em>Barcode</em>'. * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) * @generated */ - public T caseTrackingTask(TrackingTask object) { + public T caseBarcode(Barcode object) { return null; } /** - * Returns the result of interpreting the object as an instance of '<em>World Model</em>'. + * Returns the result of interpreting the object as an instance of '<em>Other Prox</em>'. * <!-- begin-user-doc --> * This implementation returns null; * returning a non-null result will terminate the switch. * <!-- end-user-doc --> * @param object the target of the switch. - * @return the result of interpreting the object as an instance of '<em>World Model</em>'. + * @return the result of interpreting the object as an instance of '<em>Other Prox</em>'. * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) * @generated */ - public T caseWorldModel(WorldModel object) { + public T caseOtherProx(OtherProx object) { return null; } /** - * Returns the result of interpreting the object as an instance of '<em>Barcode</em>'. + * Returns the result of interpreting the object as an instance of '<em>Bluetooth</em>'. * <!-- begin-user-doc --> * This implementation returns null; * returning a non-null result will terminate the switch. * <!-- end-user-doc --> * @param object the target of the switch. - * @return the result of interpreting the object as an instance of '<em>Barcode</em>'. + * @return the result of interpreting the object as an instance of '<em>Bluetooth</em>'. * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) * @generated */ - public T caseBarcode(Barcode object) { + public T caseBluetooth(Bluetooth object) { return null; } /** - * Returns the result of interpreting the object as an instance of '<em>Other Prox</em>'. + * Returns the result of interpreting the object as an instance of '<em>UWB</em>'. * <!-- begin-user-doc --> * This implementation returns null; * returning a non-null result will terminate the switch. * <!-- end-user-doc --> * @param object the target of the switch. - * @return the result of interpreting the object as an instance of '<em>Other Prox</em>'. + * @return the result of interpreting the object as an instance of '<em>UWB</em>'. * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) * @generated */ - public T caseOtherProx(OtherProx object) { + public T caseUWB(UWB object) { return null; } /** - * Returns the result of interpreting the object as an instance of '<em>Bluetooth</em>'. + * Returns the result of interpreting the object as an instance of '<em>Other Beacon</em>'. * <!-- begin-user-doc --> * This implementation returns null; * returning a non-null result will terminate the switch. * <!-- end-user-doc --> * @param object the target of the switch. - * @return the result of interpreting the object as an instance of '<em>Bluetooth</em>'. + * @return the result of interpreting the object as an instance of '<em>Other Beacon</em>'. * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) * @generated */ - public T caseBluetooth(Bluetooth object) { + public T caseOtherBeacon(OtherBeacon object) { return null; } /** - * Returns the result of interpreting the object as an instance of '<em>UWB</em>'. + * Returns the result of interpreting the object as an instance of '<em>POI</em>'. * <!-- begin-user-doc --> * This implementation returns null; * returning a non-null result will terminate the switch. * <!-- end-user-doc --> * @param object the target of the switch. - * @return the result of interpreting the object as an instance of '<em>UWB</em>'. + * @return the result of interpreting the object as an instance of '<em>POI</em>'. * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) * @generated */ - public T caseUWB(UWB object) { + public T casePOI(POI object) { return null; } /** - * Returns the result of interpreting the object as an instance of '<em>Sensor Configuration Request</em>'. + * Returns the result of interpreting the object as an instance of '<em>Event Filter Condition</em>'. * <!-- begin-user-doc --> * This implementation returns null; * returning a non-null result will terminate the switch. * <!-- end-user-doc --> * @param object the target of the switch. - * @return the result of interpreting the object as an instance of '<em>Sensor Configuration Request</em>'. + * @return the result of interpreting the object as an instance of '<em>Event Filter Condition</em>'. * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) * @generated */ - public T caseSensorConfigurationRequest(SensorConfigurationRequest object) { + public T caseEventFilterCondition(EventFilterCondition object) { return null; } /** - * Returns the result of interpreting the object as an instance of '<em>Other Beacon</em>'. + * Returns the result of interpreting the object as an instance of '<em>Zone Descriptor</em>'. * <!-- begin-user-doc --> * This implementation returns null; * returning a non-null result will terminate the switch. * <!-- end-user-doc --> * @param object the target of the switch. - * @return the result of interpreting the object as an instance of '<em>Other Beacon</em>'. + * @return the result of interpreting the object as an instance of '<em>Zone Descriptor</em>'. * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) * @generated */ - public T caseOtherBeacon(OtherBeacon object) { + public T caseZoneDescriptor(ZoneDescriptor object) { return null; } /** - * Returns the result of interpreting the object as an instance of '<em>Reference Position</em>'. + * Returns the result of interpreting the object as an instance of '<em>Data Storage Query Response</em>'. * <!-- begin-user-doc --> * This implementation returns null; * returning a non-null result will terminate the switch. * <!-- end-user-doc --> * @param object the target of the switch. - * @return the result of interpreting the object as an instance of '<em>Reference Position</em>'. + * @return the result of interpreting the object as an instance of '<em>Data Storage Query Response</em>'. * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) * @generated */ - public T caseReferencePosition(ReferencePosition object) { + public T caseDataStorageQueryResponse(DataStorageQueryResponse object) { return null; } /** - * Returns the result of interpreting the object as an instance of '<em>Event Filter Condition</em>'. + * Returns the result of interpreting the object as an instance of '<em>Message Received Event</em>'. * <!-- begin-user-doc --> * This implementation returns null; * returning a non-null result will terminate the switch. * <!-- end-user-doc --> * @param object the target of the switch. - * @return the result of interpreting the object as an instance of '<em>Event Filter Condition</em>'. + * @return the result of interpreting the object as an instance of '<em>Message Received Event</em>'. * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) * @generated */ - public T caseEventFilterCondition(EventFilterCondition object) { + public T caseMessageReceivedEvent(MessageReceivedEvent object) { return null; } diff --git a/src/main/java/ipos/project/DataModellntegration/service/ExternalPubService.java b/src/main/java/ipos/project/DataModellntegration/service/ExternalPubService.java deleted file mode 100644 index dd88adcb324c74935d6a80a003717ee8ea7355de..0000000000000000000000000000000000000000 --- a/src/main/java/ipos/project/DataModellntegration/service/ExternalPubService.java +++ /dev/null @@ -1,5 +0,0 @@ -package ipos.project.DataModellntegration.service; - -public interface ExternalPubService { - void publish(final String topic, final String msg , int qos, boolean retained); -} diff --git a/src/main/java/ipos/project/DataModellntegration/service/impl/ExternalPubServiceImpl.java b/src/main/java/ipos/project/DataModellntegration/service/impl/ExternalPubServiceImpl.java deleted file mode 100644 index 52858352cf218b32556f5bdc90a933e15bcc5016..0000000000000000000000000000000000000000 --- a/src/main/java/ipos/project/DataModellntegration/service/impl/ExternalPubServiceImpl.java +++ /dev/null @@ -1,34 +0,0 @@ -package ipos.project.DataModellntegration.service.impl; - -import ipos.project.DataModellntegration.service.ExternalPubService; -import org.eclipse.paho.client.mqttv3.MqttAsyncClient; -import org.eclipse.paho.client.mqttv3.MqttException; -import org.eclipse.paho.client.mqttv3.MqttMessage; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -@Service -public class ExternalPubServiceImpl implements ExternalPubService { - - private final MqttAsyncClient mqttClient; - - @Autowired - public ExternalPubServiceImpl(MqttAsyncClient mqttClient) { - this.mqttClient = mqttClient; - } - - public void publish(final String topic, final String msg , int qos, boolean retained) { - MqttMessage mqttMessage = new MqttMessage(); - mqttMessage.setPayload(msg.getBytes()); - mqttMessage.setQos(qos); - mqttMessage.setRetained(retained); - - try { - mqttClient.publish(topic, mqttMessage); - } catch (MqttException e) { - e.printStackTrace(); - } - } -} diff --git a/src/main/java/ipos/project/Functionality/DataServices.java b/src/main/java/ipos/project/Functionality/DataServices.java new file mode 100644 index 0000000000000000000000000000000000000000..955387ee99957f8a2f79a38dd1ca212241d32310 --- /dev/null +++ b/src/main/java/ipos/project/Functionality/DataServices.java @@ -0,0 +1,257 @@ +package ipos.project.Functionality; + +import ipos.project.DataModellntegration.iPos_Datamodel.*; +import ipos.project.entity.IWorldModelAccess; +import ipos.project.entity.LocalObjectWorldModel; +import org.apache.logging.log4j.LogManager; + +import java.util.HashMap; +import java.util.LinkedList; +import java.util.List; +import java.util.Map; + +public class DataServices { + private static org.apache.logging.log4j.Logger LOG = LogManager.getLogger(); + private static IPos_DatamodelFactory modelFactory = IPos_DatamodelFactory.eINSTANCE; + + private static IWorldModelAccess wma; + + private static Map<String, List<PositionEvent>> trackingStorage = new HashMap<>(); + + public static void clearWorldModel(){ + wma = new LocalObjectWorldModel(); + } + + public static ReferenceSystem getReferenceSystemByIdOrNull(String refSystemId) { + for (ReferenceSystem refSystem : wma.getAllRefSystems()){ + if(refSystem.getId().equals(refSystemId)){ + return refSystem; + } + } + return null; + } + + public static LocalizableObject getLObjectByIdOrNull(String lObjectId) { + if(wma == null){ + LOG.info("wma is null. lObjectId: " + lObjectId); + return null; + } + for (Agent agent : wma.getAllAgents()){ + for (LocalizableObject lObject : agent.getLObject()){ + if (lObject.getId().equals(lObjectId)){ + return lObject; + } + } + } + return null; + } + + public static Zone getZoneByIdOrNull(String zoneId){ + for (var zone : wma.getAllZones()){ + if(zone.getId().equals(zoneId)){ + return zone; + } + } + return null; + } + + public static Agent getAgentForLocalizableObject(String lObjectId) throws IllegalArgumentException { + LocalizableObject lObject = DataServices.getLObjectByIdOrNull(lObjectId); + if (lObject == null || lObject.getAgent() == null) throw new IllegalArgumentException("localizable object unknown or has no agent associated"); + return lObject.getAgent(); + } + + public static void addZone(Zone zone_input) { + for (Zone zone_loaded : wma.getAllZones()){ + if (zone_loaded.getId().equals(zone_input.getId())){ + LOG.warn("Zone " + zone_input.getId() + " could not be added to world model, as it already contains" + + "a zone with the same id"); + return; + } + } + wma.addZone(zone_input); + } + + public static void persist(PositionEvent positionEvent, String trackingTaskId){ + List<PositionEvent> trackedPositions = trackingStorage.get(trackingTaskId); + if(trackedPositions == null){ + throw new IllegalArgumentException("unknown trackingTaskId"); + } + trackedPositions.add(positionEvent); + } + + public static List<PositionEvent> query(String trackingTaskId){ + List<PositionEvent> trackedPositions = trackingStorage.get(trackingTaskId); + if(trackedPositions == null){ + throw new IllegalArgumentException("unknown trackingTaskId"); + } + if (trackedPositions.equals(new LinkedList<PositionEvent>())){ + LOG.warn("No PositionEvents have been tracked for trackingTaskId " + trackingTaskId); + } + return trackedPositions; + } + + public static void initTrackingTask(String trackingTaskId){ + if (trackingStorage.get(trackingTaskId)!= null){ + LOG.warn("Cleaning tracking task " + trackingTaskId); + } + trackingStorage.put(trackingTaskId, new LinkedList<PositionEvent>()); + } + + public static void addAgent(Agent agent_input) { + for (Agent agent_loaded : wma.getAllAgents()){ + if (agent_loaded.getId().equals(agent_input.getId())){ + mergeInputAgentIntoLoadedAgent(agent_loaded, agent_input); + return; + // TODO: careful: What about those LObjects that point on the currently existing agent-object? + // wma.removeAgent(agent_loaded.getId()); + // wma.addAgent(agent_merged); + } + } + wma.addAgent(agent_input); + } + + /** + * Keeps those LocalizableObjects that are currently connected to the loaded agent + * and adds those LocalizableObjects that are additionally connected to the input-agent. + * @param agent_loaded + * @param agent_input + * @return + */ + private static Agent mergeInputAgentIntoLoadedAgent(Agent agent_loaded, Agent agent_input) { + List<LocalizableObject> lObjects_loaded = agent_loaded.getLObject(); + List<LocalizableObject> lObjects_input = agent_input.getLObject(); + for (LocalizableObject lObject_input : lObjects_input){ + if (!containsLObjectId(lObjects_loaded, lObject_input.getId())){ + lObjects_loaded.add(lObject_input); + LOG.info("Added lObject with id " + lObject_input.getId() + " to agent " + agent_loaded.getId()); + } + } + return agent_loaded; + } + + private static boolean containsLObjectId(List<LocalizableObject> lObjects, String id) { + for (LocalizableObject lObject : lObjects){ + if(lObject.getId().equals(id)){ + return true; + } + } + return false; + } + + public static void addRefSystem(ReferenceSystem refSystem_input) { + for (ReferenceSystem refSystem_loaded : wma.getAllRefSystems()){ + if (refSystem_loaded.getId().equals(refSystem_input.getId())){ + LOG.warn("Reference system " + refSystem_input.getId() + " could not be added to world model, as it already contains" + + "a reference system with the same id"); + return; + } + } + wma.addRefSystem(refSystem_input); + } + + public static void addPoi(POI poi_input) { + for (POI poi_loaded : wma.getAllPois()){ + if (poi_loaded.getId().equals(poi_input.getId())){ + LOG.warn("POI " + poi_input.getId() + " could not be added to world model, as it already contains" + + "a poi with the same id"); + return; + } + } + wma.addPoi(poi_input); + } + + public static POI createPOI(Placing placing, String description, Map<String, String> data){ + POI poi = modelFactory.createPOI(); + poi.setPlacing(placing); + poi.setDescription(description); + poi.setData(data); + return poi; + } + + public static Agent createAgent(String id, String type){ + Agent agent = modelFactory.createAgent(); + agent.setId(id); + agent.setAgentType(type); + return agent; + } + + public static LocalizableObject createLobject(String id, String sensorType, Agent agent, Placing currentPlacing){ + LocalizableObject lobject = modelFactory.createLocalizableObject(); + lobject.setAgent(agent); + lobject.setId(id); + lobject.setSensorType(sensorType); + lobject.setCurrentPlacing(currentPlacing); + return lobject; + } + + public static Placing createPlacing(Position position, Orientation orientation){ + Placing placing = modelFactory.createPlacing(); + placing.setPosition(position); + placing.setOrientation(orientation); + return placing; + } + + public static Position createPosition(Point3D point3D, Float accuracy, ReferenceSystem refSystem){ + Position position = modelFactory.createPosition(); + position.setPoint(point3D); + Gaussian accrcy = modelFactory.createGaussian(); + accrcy.setConfidenceInterval(accuracy); + position.setAccuracy(accrcy); + position.setReferenceSystem(refSystem); + return position; + } + + public static Point3D createPoint3D(float x, float y, float z){ + Point3D point3D = modelFactory.createPoint3D(); + point3D.setX(x); + point3D.setY(y); + point3D.setZ(z); + return point3D; + } + + public static ReferenceSystem createReferenceSystem(String name, String id, Placing origin){ + ReferenceSystem refSystem = modelFactory.createReferenceSystem(); + refSystem.setName(name); + refSystem.setId(id); + refSystem.setOrigin(origin); + return refSystem; + } + + public static Zone createZone(String name, String id, List<Space> spaces){ + Zone zone = modelFactory.createZone(); + zone.setName(name); + zone.setId(id); + for (var space : spaces) { + zone.getSpace().add(space); + } + return zone; + } + + public static Space createSpace(float x, float y, float z, Placing centrePoint){ + Space space = modelFactory.createSpace(); + space.setX(x); + space.setY(y); + space.setZ(z); + space.setCentrePoint(centrePoint); + return space; + } + + public static Quaternion createOrientation(float x, float y, float z, float w){ + Quaternion quaternion = modelFactory.createQuaternion(); + quaternion.setX(x); + quaternion.setY(y); + quaternion.setZ(z); + quaternion.setW(w); + return quaternion; + } + + public static POI getPoiByIdOrNull(String poiId) { + for (POI poi : wma.getAllPois()){ + if(poi.getId().equals(poiId)){ + return poi; + } + } + return null; + } +} diff --git a/src/main/java/ipos/project/Functionality/Odometry.java b/src/main/java/ipos/project/Functionality/Odometry.java index 876404b2bddfcf033b08d69afcbc08286e7f077f..79a92852f11838b147ed191c7c990c331b4a5c79 100644 --- a/src/main/java/ipos/project/Functionality/Odometry.java +++ b/src/main/java/ipos/project/Functionality/Odometry.java @@ -1,15 +1,147 @@ package ipos.project.Functionality; -import ipos.models.SimpleScene.IposPosition; +import ipos.project.DataModellntegration.iPos_Datamodel.*; +import org.apache.logging.log4j.LogManager; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import org.springframework.jms.annotation.JmsListener; import org.springframework.stereotype.Component; +import java.sql.Timestamp; +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.time.LocalDateTime; +import java.time.ZoneId; +import java.time.format.DateTimeFormatter; +import java.util.Date; +import java.util.MissingResourceException; + @Component public class Odometry { - private final Logger LOG = LoggerFactory.getLogger(getClass()); + private static org.apache.logging.log4j.Logger LOG = LogManager.getLogger(); + private final String agentId = ""; + private static double accuracy; + private static double timeOfLastCalibration; + private static double timeLastSensorEvent; + private static double [] a = new double[]{0, 0, 0}; + private static double [][] a_ori = new double[][]{{0,0,0,0,0,0,0,0,0,0},{0,0,0,0,0,0,0,0,0,0},{0,0,0,0,0,0,0,0,0,0}}; + private static double [] aOffset; + private static double [] v = new double[]{0, 0, 0}; + private static double [] p = new double[]{0, 0, 0}; + private static double [] delta = new double[]{0, 0, 0}; + private static double [] vLast = new double[]{0, 0, 0}; + private static double [] pLast = new double[]{0, 0, 0}; + private static double NS2S = 1/1000.0; + private static boolean calibrated = false; + private static int index_ori = 0; + static SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss.SSS"); + + //public Odometry(String agentId) { + // this.agentId = agentId; + //} + private static Date convertToDateViaInstant(LocalDateTime dateToConvert) { + return Date.from(dateToConvert.atZone(ZoneId.systemDefault()).toInstant()); + } + + private static LocalDateTime convertToLocalDateTimeViaInstant(Date dateToConvert){ + return dateToConvert.toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime(); + } + public static double average(double[] data) { + double sum = 0; + double average; + + for(int i=0; i < data.length; i++){ + sum = sum + data[i]; + } + average = sum/data.length; + return average; + } + public static void calibrate (PositionEvent event) throws ParseException { + v = new double[] {0,0,0}; + vLast = new double[] {0,0,0}; + aOffset = new double[] {average(a_ori[0]),average(a_ori[1]),average(a_ori[2])}; + accuracy = 0.03; + if (event.getPlacing().getPosition().getPoint() instanceof Point3D) { + pLast[0] = ((Point3D) event.getPlacing().getPosition().getPoint()).getX(); + pLast[1] = ((Point3D) event.getPlacing().getPosition().getPoint()).getY(); + pLast[2] = ((Point3D) event.getPlacing().getPosition().getPoint()).getZ(); + p = pLast; + } + LOG.info("Odometry: timestamp" + event.getTimeStamp()); + LocalDateTime eventTime = LocalDateTime.parse(event.getTimeStamp(), DateTimeFormatter.ISO_OFFSET_DATE_TIME); + Date date = convertToDateViaInstant(eventTime); + + timeOfLastCalibration = date.getTime(); + calibrated = true; + } + + public static PositionEvent update(IMU imuRawdataEvent) throws ParseException { + IPos_DatamodelFactory datamodelFactory = IPos_DatamodelFactory.eINSTANCE; + Timestamp timestamp = new Timestamp(System.currentTimeMillis()); + Date date = sdf2.parse(imuRawdataEvent.getTimeStamp()); + + if (calibrated) { + double dt = (date.getTime() - timeLastSensorEvent) * NS2S; + a_ori[0][index_ori] = imuRawdataEvent.getAcceleration().getX(); + a_ori[1][index_ori] = imuRawdataEvent.getAcceleration().getY(); + a_ori[2][index_ori] = imuRawdataEvent.getAcceleration().getZ(); + index_ori += 1; + if (index_ori>9) { + index_ori =0; + } + a[0] = imuRawdataEvent.getAcceleration().getX() - aOffset[0]; + a[1] = imuRawdataEvent.getAcceleration().getY() - aOffset[1]; + a[2] = imuRawdataEvent.getAcceleration().getZ() - aOffset[2]; + for (int index = 0; index < 3; ++index) { + v[index] = a[index] * dt + vLast[index]; + delta[index] = (v[index] + vLast[index]) / 2 * dt; + p[index] = pLast[index] + delta[index]; + pLast[index] = p[index]; + vLast[index] = v[index]; + } + accuracy = (date.getTime() - timeOfLastCalibration + 500) * 0.0001; + timeLastSensorEvent = date.getTime(); + Quaternion calOrientation = datamodelFactory.createQuaternion(); + PositionEvent calPositionEvent = datamodelFactory.createPositionEvent(); + Placing calPlacing = datamodelFactory.createPlacing(); + LocalizableObject calLObject = datamodelFactory.createLocalizableObject(); + Position calPosition = datamodelFactory.createPosition(); + Point3D calPoint3D = datamodelFactory.createPoint3D(); + Gaussian calGaussian = datamodelFactory.createGaussian(); + calGaussian.setConfidenceInterval((float) accuracy); + calPoint3D.setX((float) p[0]); + calPoint3D.setY((float) p[1]); + calPoint3D.setZ((float) p[2]); + calOrientation.setX(0); + calOrientation.setY(0); + calOrientation.setZ(0); + calOrientation.setW(0); + calPosition.setPoint(calPoint3D); + calPosition.setAccuracy(calGaussian); + calPosition.setReferenceSystem(DataServices.getReferenceSystemByIdOrNull("ROOT")); + calPlacing.setPosition(calPosition); + calPlacing.setOrientation(calOrientation); + //calLObject.setId(imuRawdataEvent.getSensorId()); + LocalDateTime timestamp_LDT=convertToLocalDateTimeViaInstant(date); + + + calPositionEvent.setLObjectId(imuRawdataEvent.getSensorId()); + calPositionEvent.setTimeStamp(timestamp_LDT.toString() + "+00:00"); + calPositionEvent.setPlacing(calPlacing); + return calPositionEvent; + } + else { + timeLastSensorEvent = date.getTime(); + a_ori[0][index_ori] = imuRawdataEvent.getAcceleration().getX(); + a_ori[1][index_ori] = imuRawdataEvent.getAcceleration().getY(); + a_ori[2][index_ori] = imuRawdataEvent.getAcceleration().getZ(); + index_ori += 1; + if (index_ori>9) { + index_ori =0; + } + throw new MissingResourceException("Odometry not calibrated!", "Odometry", "calibration"); + } + } //TODO // @JmsListener(destination = "/positions123", containerFactory = "myFactory") // public void receiveMessage(IposPosition pos) { diff --git a/src/main/java/ipos/project/Functionality/PositionCalculation.java b/src/main/java/ipos/project/Functionality/PositionCalculation.java new file mode 100644 index 0000000000000000000000000000000000000000..80f354c358449920189704f7db3a987d2d2008a5 --- /dev/null +++ b/src/main/java/ipos/project/Functionality/PositionCalculation.java @@ -0,0 +1,44 @@ +package ipos.project.Functionality; + +import ipos.project.DataModellntegration.iPos_Datamodel.*; +import org.apache.logging.log4j.LogManager; + +public class PositionCalculation { + + private static org.apache.logging.log4j.Logger LOG = LogManager.getLogger(); + + private static IPos_DatamodelFactory modelFactory = IPos_DatamodelFactory.eINSTANCE; + + public static PositionEvent calcPositionFromNfcOrNull(NFC nfcRawDataEvent) { + if (isMobileScanner(nfcRawDataEvent)){ + return createPosEvent(nfcRawDataEvent.getScannerId(), nfcRawDataEvent.getTagId(), nfcRawDataEvent.getTimeStamp()); + } + if(isMobileTag(nfcRawDataEvent)){ + return createPosEvent(nfcRawDataEvent.getTagId(), nfcRawDataEvent.getScannerId(), nfcRawDataEvent.getTimeStamp()); + } + LOG.warn("NFC-RawdataEvent could not be processed, as the provided scanner " + + "and/or tag-id could not be associated to an registered object and/or " + + "an registered poi"); + return null; + } + + private static PositionEvent createPosEvent(String lObjectId, String poiId, String timeStamp) { + PositionEvent positionEvent = modelFactory.createPositionEvent(); + positionEvent.setLObjectId(lObjectId); + positionEvent.setTimeStamp(timeStamp); + positionEvent.setPlacing(DataServices.getPoiByIdOrNull(poiId).getPlacing()); + return positionEvent; + } + + private static boolean isMobileScanner(NFC nfcRawDataEvent) { + Boolean scannerIsMobile = DataServices.getLObjectByIdOrNull(nfcRawDataEvent.getScannerId()) != null; + Boolean tagIsFixed = DataServices.getPoiByIdOrNull(nfcRawDataEvent.getTagId()) != null; + return scannerIsMobile && tagIsFixed; + } + + private static boolean isMobileTag(NFC nfcRawDataEvent) { + Boolean tagIsMobile = DataServices.getLObjectByIdOrNull(nfcRawDataEvent.getTagId()) != null; + Boolean scannerIsFixed = DataServices.getPoiByIdOrNull(nfcRawDataEvent.getScannerId()) != null; + return tagIsMobile && scannerIsFixed; + } +} diff --git a/src/main/java/ipos/project/Functionality/SRSConversion/Quaternion_math.java b/src/main/java/ipos/project/Functionality/SRSConversion/Quaternion_math.java new file mode 100644 index 0000000000000000000000000000000000000000..6a977da87e09b830dc75880fb960592bde795ba9 --- /dev/null +++ b/src/main/java/ipos/project/Functionality/SRSConversion/Quaternion_math.java @@ -0,0 +1,250 @@ +package ipos.project.Functionality.SRSConversion; + +public class Quaternion_math { + private float x; + private float y; + private float z; + private float w; + //private float[] matrixs; + + public Quaternion_math(final Quaternion_math q) { + this(q.x, q.y, q.z, q.w); + } + + public Quaternion_math(float x, float y, float z, float w) { + this.x = x; + this.y = y; + this.z = z; + this.w = w; + } + + public void set(final Quaternion_math q) { + //matrixs = null; + this.x = q.x; + this.y = q.y; + this.z = q.z; + this.w = q.w; + } + + public Quaternion_math(Vector_math axis, float angle) { + set(axis, angle); + } + + public float norm() { + return (float) Math.sqrt(dot(this)); + } + + public float getW() { + return w; + } + + public float getX() { + return x; + } + + public float getY() { + return y; + } + + public float getZ() { + return z; + } + + /** + * @param axis + * rotation axis, unit vector + * @param angle + * the rotation angle + * @return this + */ + public Quaternion_math set(Vector_math axis, float angle) { + //matrixs = null; + angle = (float) Math.toRadians(angle); + float s = (float) Math.sin(angle); + w = (float) Math.cos(angle); + x = axis.getX() * s; + y = axis.getY() * s; + z = axis.getZ() * s; + //System.out.println("angle set: " + angle); + return this; + } + + public Quaternion_math mulThis(Quaternion_math q) { + //matrixs = null; + float nw = w * q.w - x * q.x - y * q.y - z * q.z; + float nx = w * q.x + x * q.w + y * q.z - z * q.y; + float ny = w * q.y + y * q.w + z * q.x - x * q.z; + z = w * q.z + z * q.w + x * q.y - y * q.x; + w = nw; + x = nx; + y = ny; + return this; + } + + public Quaternion_math scaleThis(float scale) { + if (scale != 1) { + //matrixs = null; + w *= scale; + x *= scale; + y *= scale; + z *= scale; + } + return this; + } + + public Quaternion_math divThis(float scale) { + if (scale != 1) { + //matrixs = null; + w /= scale; + x /= scale; + y /= scale; + z /= scale; + } + return this; + } + + public float dot(Quaternion_math q) { + return x * q.x + y * q.y + z * q.z + w * q.w; + } + + public boolean equals(Quaternion_math q) { + return x == q.x && y == q.y && z == q.z && w == q.w; + } + + public Quaternion_math interpolateThis(Quaternion_math q, float t) { + if (!equals(q)) { + float d = dot(q); + float qx, qy, qz, qw; + + if (d < 0f) { + qx = -q.x; + qy = -q.y; + qz = -q.z; + qw = -q.w; + d = -d; + } else { + qx = q.x; + qy = q.y; + qz = q.z; + qw = q.w; + } + + float f0, f1; + + if ((1 - d) > 0.1f) { + float angle = (float) Math.acos(d); + float s = (float) Math.sin(angle); + float tAngle = t * angle; + f0 = (float) Math.sin(angle - tAngle) / s; + f1 = (float) Math.sin(tAngle) / s; + } else { + f0 = 1 - t; + f1 = t; + } + + x = f0 * x + f1 * qx; + y = f0 * y + f1 * qy; + z = f0 * z + f1 * qz; + w = f0 * w + f1 * qw; + } + + return this; + } + + public Quaternion_math inverse() { + float norm = norm(); + if (norm > 0.0) { + float invNorm = 1.0f / norm; + return new Quaternion_math(-x * invNorm, -y * invNorm, -z * invNorm, w + * invNorm); + } + // return an invalid result to flag the error + return new Quaternion_math(0,0,0,0); + } + public Quaternion_math normalizeThis() { + return divThis(norm()); + } + + public Quaternion_math interpolate(Quaternion_math q, float t) { + return new Quaternion_math(this).interpolateThis(q, t); + } + + + + + /** + * Converts this Quaternion_math into a matrix, returning it as a float array. + */ + public float[] toMatrix() { + float[] matrixs = new float[16]; + toMatrix(matrixs); + return matrixs; + } + /** Conjugate the Quaternion_math. + * + * @return This Quaternion_math for chaining */ + public Quaternion_math conjugate () { + x = -x; + y = -y; + z = -z; + return this; + } + + /** Multiplies this Quaternion_math with another one + * + * @param q Quaternion_math to multiply with + * @return This Quaternion_math for chaining */ + public Quaternion_math mul (Quaternion_math q) { + float newX = w * q.x + x * q.w + y * q.z - z * q.y; + float newY = w * q.y + y * q.w + z * q.x - x * q.z; + float newZ = w * q.z + z * q.w + x * q.y - y * q.x; + float newW = w * q.w - x * q.x - y * q.y - z * q.z; + x = newX; + y = newY; + z = newZ; + w = newW; + return this; + } + + /** Multiplies this Quaternion_math with another one in the form of q * this + * + * @param q Quaternion_math to multiply with + * @return This Quaternion_math for chaining */ + public Quaternion_math mulLeft (Quaternion_math q) { + float newX = q.w * x + q.x * w + q.y * z - q.z * y; + float newY = q.w * y + q.y * w + q.z * x - q.x * z; + float newZ = q.w * z + q.z * w + q.x * y - q.y * x; + float newW = q.w * w - q.x * x - q.y * y - q.z * z; + x = newX; + y = newY; + z = newZ; + w = newW; + return this; + } + + /** + * Converts this Quaternion_math into a matrix, placing the values into the given array. + * @param matrixs 16-length float array. + */ + public final void toMatrix(float[] matrixs) { + matrixs[3] = 0.0f; + matrixs[7] = 0.0f; + matrixs[11] = 0.0f; + matrixs[12] = 0.0f; + matrixs[13] = 0.0f; + matrixs[14] = 0.0f; + matrixs[15] = 1.0f; + + matrixs[0] = (float) (1.0f - (2.0f * ((y * y) + (z * z)))); + matrixs[1] = (float) (2.0f * ((x * y) - (z * w))); + matrixs[2] = (float) (2.0f * ((x * z) + (y * w))); + + matrixs[4] = (float) (2.0f * ((x * y) + (z * w))); + matrixs[5] = (float) (1.0f - (2.0f * ((x * x) + (z * z)))); + matrixs[6] = (float) (2.0f * ((y * z) - (x * w))); + + matrixs[8] = (float) (2.0f * ((x * z) - (y * w))); + matrixs[9] = (float) (2.0f * ((y * z) + (x * w))); + matrixs[10] = (float) (1.0f - (2.0f * ((x * x) + (y * y)))); + } +} diff --git a/src/main/java/ipos/project/Functionality/SRSConversion/SRSConversion.java b/src/main/java/ipos/project/Functionality/SRSConversion/SRSConversion.java new file mode 100644 index 0000000000000000000000000000000000000000..70de57a17d69ed7a7c63d71479eb377961f44c20 --- /dev/null +++ b/src/main/java/ipos/project/Functionality/SRSConversion/SRSConversion.java @@ -0,0 +1,115 @@ +package ipos.project.Functionality.SRSConversion; +import org.apache.logging.log4j.LogManager; +import org.eclipse.emf.common.util.EList; + +import ipos.project.DataModellntegration.iPos_Datamodel.*; + +/* +This class contains methods to convert the coordinate system of positions. +All reference Systems should be defined in the ROOT system. +*/ +public class SRSConversion { + + private static org.apache.logging.log4j.Logger LOG = LogManager.getLogger(); + + /* + This function converts the coordinate system of a position to a desired coordinate system. + p1 is the coordinate of the position in the original coordinate system + ref_1 is the origin point of the original coordinate system (A Point3D in ROOT) + ref_2 is the origin point of the desired coordinate system (A Point3D in ROOT) + quat_1 is the rotation of the original coordinate system (against ROOT) + quat_2 is the rotation of the desired coordinate system (against ROOT) + */ + public static void switchSRS(Placing pla, ReferenceSystem ref){ + IPos_DatamodelFactory datamodelFactory = IPos_DatamodelFactory.eINSTANCE; + Position pos = pla.getPosition(); + Point3D P = (Point3D) pos.getPoint(); + + Point3D R = (Point3D) ref.getOrigin().getPosition().getPoint(); + Quaternion Q1 = (Quaternion) pla.getOrientation(); + Quaternion Q2 = (Quaternion) ref.getOrigin().getOrientation(); + String ref_id = ref.getId(); + String pla_ref_id = pla.getPosition().getReferenceSystem().getId(); + + Vector_math p1 = new Vector_math(P.getX(), P.getY(), P.getZ()); + Vector_math ref_org = new Vector_math(R.getX(), R.getY(), R.getZ()); + Quaternion_math quat_1 = new Quaternion_math(Q1.getX(), Q1.getY(), Q1.getZ(), Q1.getW()); + Quaternion_math quat_2 = new Quaternion_math(Q2.getX(), Q2.getY(), Q2.getZ(), Q2.getW()); + //System.out.println("Quaterion_1: " + quat_1.getX() + ", "+ quat_1.getY() + ", "+ quat_1.getZ() + ", " + quat_1.getW()); + //System.out.println("Quaterion_2: " + quat_2.getX() + ", "+ quat_2.getY() + ", "+ quat_2.getZ() + ", " + quat_2.getW()); + + + if (pla_ref_id.equals(ref_id)) { + //System.out.println("inversed Quaterion_1: " + quat_1.inverse().getX() + ", "+ quat_1.inverse().getY() + ", "+ quat_1.inverse().getZ() + ", " + quat_1.inverse().getW()); + LOG.info("INDFRO-DEBUG: Transforming placing-SRS " + pla_ref_id + " to SRS " + ref.getOrigin().getPosition().getReferenceSystem().getId()); + quat_1.mulLeft(quat_2.inverse()); + + //System.out.println("phase 1 transfrom: " + p1.getX() + ", "+ p1.getY() + ", "+ p1.getZ()); + p1.rotate_quaternion(quat_2); + //System.out.println("phase 1 transfrom: " + p1.getX() + ", "+ p1.getY() + ", "+ p1.getZ()); + p1.add(ref_org); + pos.setReferenceSystem(ref.getOrigin().getPosition().getReferenceSystem()); + + } + else if(pla_ref_id.equals(ref.getOrigin().getPosition().getReferenceSystem().getId())) { + LOG.info("INDFRO-DEBUG: Transforming placing-SRS " + pla_ref_id + " to SRS " + ref_id); + //System.out.println("inversed Quaterion_1: " + quat_1.inverse().getX() + ", "+ quat_1.inverse().getY() + ", "+ quat_1.inverse().getZ() + ", " + quat_1.inverse().getW()); + quat_1.mulLeft(quat_2); + p1.substract(ref_org); + p1.rotate_quaternion(quat_2.inverse()); + pos.setReferenceSystem(ref); + } + else { + //error message + } + Q1.setX(quat_1.getX()); + Q1.setY(quat_1.getY()); + Q1.setZ(quat_1.getZ()); + Q1.setW(quat_1.getW()); + P.setX(p1.getX()); + P.setY(p1.getY()); + P.setZ(p1.getZ()); + pla.setOrientation(Q1); + pos.setPoint(P); + pla.setPosition(pos); + } + /*public static void switchSRSZone(Zone zone, ReferenceSystem ref){ + IPos_DatamodelFactory datamodelFactory = IPos_DatamodelFactory.eINSTANCE; + EList spaceList = zone.getSpace(); + for (int i = 0; i < spaceList.size(); i++) { + Space S = (Space)spaceList.get(i); + Placing P = S.getCentrePoint(); + Position Pos = P.getPosition(); + positionInOtherSystem(Pos, ref); + Quaternion Q1 = (Quaternion) P.getOrientation(); + Quaternion Q2 = (Quaternion) ref.getOrigin().getOrientation(); + + Quaternion_math quat_1 = new Quaternion_math(Q1.getX(), Q1.getY(), Q1.getZ(), Q1.getW()); + Quaternion_math quat_2 = new Quaternion_math(Q2.getX(), Q2.getY(), Q2.getZ(), Q2.getW()); + quat_1.mulLeft(quat_2); + Q1.setX(quat_1.getX()); + Q1.setY(quat_1.getY()); + Q1.setZ(quat_1.getZ()); + Q1.setW(quat_1.getW()); + P.setOrientation(Q1); + P.setPosition(Pos); + S.setCentrePoint(P); + spaceList.set(i, S); + } + } + public float[] getCordInOtherSystem (float[] cod, float[] ref, float[] quaternion){ + float[] new_cod = new float[3]; + //float[] conv_vec = new float[16]; + Vector_math cod_vec = new Vector_math(cod[0], cod[1], cod[2]); + Vector_math ref_new = new Vector_math(ref[0], ref[1], ref[2]); + Quaternion_math quaternion_new = new Quaternion_math(quaternion[0], quaternion[1], quaternion[2], quaternion[3]); + //conv_vec = quaternion_new.toMatrix(); + //float[][] conv_matrix = new float[][]{{conv_vec[0], conv_vec[1], conv_vec[2]}, {conv_vec[3], conv_vec[4], conv_vec[5]}, {conv_vec[6], conv_vec[7], conv_vec[8]}}; + cod_vec.transform(quaternion_new); + cod_vec.add(ref_new); + new_cod[0] = cod_vec.getX(); + new_cod[1] = cod_vec.getY(); + new_cod[2] = cod_vec.getZ(); + return new_cod; + }*/ +} diff --git a/src/main/java/ipos/project/Functionality/SRSConversion/Test plan.txt b/src/main/java/ipos/project/Functionality/SRSConversion/Test plan.txt new file mode 100644 index 0000000000000000000000000000000000000000..62b39ad134a7ba27841897ef4ee4a9ad0cb2a71b --- /dev/null +++ b/src/main/java/ipos/project/Functionality/SRSConversion/Test plan.txt @@ -0,0 +1,31 @@ +Test rotation based on quaternion: + +quaternion calculator: https://www.vcalc.com/equation/?uuid=fed09682-75fb-11e6-9770-bc764e2038f2 + +Definition of reference systems: + def CITI_ROOT against ROOT (0.5, 0.75, 1) rot: (0.7071067811865477,0.7071067811865474,0.0,0.0) //Rotate 90 degrees around x axis. + def CITI_ROBOLAB against CETI_ROOT (0.2,0.2,0.2) rot: (0.4082481001180531,0.4082481001180531,0.4082481001180531,0.7071067811865477) //Rotation 90 degrees around (0,0,1) + def CETI_ROBOTARM_CELL against CITI_ROBOLAB (0.0, 1.2, 2.2) rot: (0.2705992818596786,0.2705992818596786,0.0,0.9238795325112868) + def TL_TESTHALL against ROOT (40.0,60.0,0) rot (0.0,0.0,0.21643961393810285,0.9762960071199334) + + +1. CITI_ROOT -> ROOT -> CITI_ROOT -> CITI_ROBOLAB -> CETI_ROBOTARM_CELL + + original placing: (1,1,1) rot:(1,0,0,0) ref: CETI_ROOT + + change to ref: ROOT + expected result:(1.5, 1.75, 0) rot: (0.7071067811865474,0.0,0.0,0.7071067811865477) ref: ROOT + + change back to ref: CETI_ROOT + expected result: (1,1,1) rot:(1,0,0,0) ref: CETI_ROOT + + change to ref: CITI_ROBOLAB + expected result: (0.8, 0.8, 0.8) rot: (0.7071067811865477, 0.4082481001180531, -0.4082481001180531, w: -0.4082481001180531) + + change to ref: CETI_ROBOTARM_CELL + expected result: (-0.07573951,0.47573978,-1.5899485) rot:(0.4323382,0.37717205,-0.45804298,-0.6789863) + + +2. CETI_ROBOTARM_CELL -> CITI_ROBOLAB -> CITI_ROOT -> ROOT -> CITI_ROOT -> CITI_ROBOLAB -> CETI_ROBOTARM_CELL + + original placing: (-0.07573951,0.47573978,-1.5899485) rot:(0.4323382,0.37717205,-0.45804298,-0.6789863) ref: CETI_ROBOTARM_CELL \ No newline at end of file diff --git a/src/main/java/ipos/project/Functionality/SRSConversion/TestSRSConverter.java b/src/main/java/ipos/project/Functionality/SRSConversion/TestSRSConverter.java new file mode 100644 index 0000000000000000000000000000000000000000..81debca8c746886b5805737b5c59b3e98922f2a1 --- /dev/null +++ b/src/main/java/ipos/project/Functionality/SRSConversion/TestSRSConverter.java @@ -0,0 +1,75 @@ +package ipos.project.Functionality.SRSConversion; + +import ipos.project.DataModellntegration.iPos_Datamodel.*; +import ipos.project.Functionality.SRSConversion.SRSConversion; + +import java.sql.Timestamp; +import java.text.ParseException; +import java.text.SimpleDateFormat; + +public class TestSRSConverter { + public static void test() throws ParseException { + IPos_DatamodelFactory datamodelFactory = IPos_DatamodelFactory.eINSTANCE; + Vector_math axis = new Vector_math(1, 0,0); + Point3D testPoint3D = datamodelFactory.createPoint3D(); + Position testPosition = datamodelFactory.createPosition(); + Placing testPlacing = datamodelFactory.createPlacing(); + + testPoint3D.setX((float) 0); + testPoint3D.setY((float) 1); + testPoint3D.setZ((float) 0); + + ReferenceSystem testRef_1 = datamodelFactory.createReferenceSystem(); + Placing refPlacing_1 = datamodelFactory.createPlacing(); + Position refPosition_1 = datamodelFactory.createPosition(); + Point3D ref_1 = datamodelFactory.createPoint3D(); + Quaternion rot_1 = datamodelFactory.createQuaternion(); + Quaternion_math rot_1_math = new Quaternion_math(axis, 90); + rot_1.setX(rot_1_math.getX()); + rot_1.setY(rot_1_math.getY()); + rot_1.setZ(rot_1_math.getZ()); + rot_1.setW(rot_1_math.getW()); + ref_1.setX(1); + ref_1.setY(1); + ref_1.setZ(1); + refPosition_1.setPoint(ref_1); + refPlacing_1.setPosition(refPosition_1); + refPlacing_1.setOrientation(rot_1); + testRef_1.setId("CITI"); + testRef_1.setOrigin(refPlacing_1); + testPosition.setPoint(testPoint3D); + testPosition.setReferenceSystem(testRef_1); + testPlacing.setPosition(testPosition); + + + ReferenceSystem testRef_2 = datamodelFactory.createReferenceSystem(); + Placing refPlacing_2 = datamodelFactory.createPlacing(); + Position refPosition_2 = datamodelFactory.createPosition(); + Point3D ref_2 = datamodelFactory.createPoint3D(); + Quaternion rot_2 = datamodelFactory.createQuaternion(); + Quaternion_math rot_2_math = new Quaternion_math(axis, 0); + rot_2.setX(rot_2_math.getX()); + rot_2.setY(rot_2_math.getY()); + rot_2.setZ(rot_2_math.getZ()); + rot_2.setW(rot_2_math.getW()); + ref_2.setX(0); + ref_2.setY(0); + ref_2.setZ(0); + refPosition_2.setPoint(ref_2); + refPlacing_2.setPosition(refPosition_2); + refPlacing_2.setOrientation(rot_2); + testRef_2.setId("ROOT"); + testRef_2.setOrigin(refPlacing_2); + + + System.out.println("Position: refID " + ": " + testPosition.getReferenceSystem().getId()); + System.out.println("Position: coord " + ": " + testPosition.getPoint()); + + SRSConversion.switchSRS(testPlacing, testRef_2); + System.out.println("Position: refID " + ": " + testPosition.getReferenceSystem().getId()); + System.out.println("Position: coord " + ": " + testPosition.getPoint()); + + + + } +} diff --git a/src/main/java/ipos/project/Functionality/SRSConversion/Vector_math.java b/src/main/java/ipos/project/Functionality/SRSConversion/Vector_math.java new file mode 100644 index 0000000000000000000000000000000000000000..5d5b0a35a987a001eed6c078344dba5156514de7 --- /dev/null +++ b/src/main/java/ipos/project/Functionality/SRSConversion/Vector_math.java @@ -0,0 +1,96 @@ +package ipos.project.Functionality.SRSConversion; + +public final class Vector_math { + private static Quaternion_math tmp1 = new Quaternion_math(0, 0, 0, 0); + private static Quaternion_math tmp2 = new Quaternion_math(0, 0, 0, 0); + private float x,y,z; + + public float getX() { + return x; + } + + public float getY() { + return y; + } + + public float getZ() { + return z; + } + + public Vector_math(float ix, float iy, float iz) { + x = ix; + y = iy; + z = iz; + } + + public void set(float ix, float iy, float iz) { + x = ix; + y = iy; + z = iz; + } + + public double magnitude() { + return Math.sqrt(x*x+y*y+z*z); + } + + public void multiply(float f) { + x *= f; + y *= f; + z *= f; + } + + public void normalise() { + double mag = magnitude(); + x /= mag; + y /= mag; + z /= mag; + } + public void add(Vector_math v) { + x += v.x; + y += v.y; + z += v.z; + } + public void substract(Vector_math v) { + x -= v.x; + y -= v.y; + z -= v.z; + } + public float dot (Vector_math v){ + float dotProduct; + dotProduct = x * v.x + y * v.y +z * v.z; + return dotProduct; + } + public void cross (Vector_math v){ + float xt = x; + float yt = y; + float zt = z; + x = yt * v.z - zt * v.y; + y = zt * v.x - xt * v.z; + z = xt * v.y - yt * v.x; + } + public void rotate_quaternion (Quaternion_math q) { + // Extract the scalar part of the quaternion + Vector_math u = new Vector_math(q.getX(),q.getY(),q.getZ()); + + Vector_math temp1 = new Vector_math(x,y,z); + Vector_math temp2 = new Vector_math(q.getX(),q.getY(),q.getZ()); + + float s = q.getW(); + //System.out.println("s: " + s); + //System.out.println("Quaternion Vector: " + u.getX() + ", "+ u.getY() + ", "+ u.getZ()); + + // Do the math + temp2.multiply(2.0f * this.dot(u)); + temp1.cross(u); + temp1.multiply(2.0f * s); + //System.out.println("temp1: " + temp1.getX() + ", "+ temp1.getY() + ", "+ temp1.getZ()); + //System.out.println("temp2: " + temp2.getX() + ", "+ temp2.getY() + ", "+ temp2.getZ()); + //System.out.println("phase 1 transfrom: " + this.getX() + ", "+ this.getY() + ", "+ this.getZ()); + this.multiply(s * s - u.dot(u)); + //System.out.println("phase 2 transfrom: " + this.getX() + ", "+ this.getY() + ", "+ this.getZ()); + this.add(temp1); + //System.out.println("phase 3 transfrom: " + this.getX() + ", "+ this.getY() + ", "+ this.getZ()); + this.add(temp2); + //System.out.println("phase 4 transfrom: " + this.getX() + ", "+ this.getY() + ", "+ this.getZ()); + } +} diff --git a/src/main/java/ipos/project/Functionality/SensorDataFusion.java b/src/main/java/ipos/project/Functionality/SensorDataFusion.java new file mode 100644 index 0000000000000000000000000000000000000000..20a73640f2978fc741efa9e019df447eb4885b48 --- /dev/null +++ b/src/main/java/ipos/project/Functionality/SensorDataFusion.java @@ -0,0 +1,117 @@ +package ipos.project.Functionality; + +import ipos.project.DataModellntegration.iPos_Datamodel.Agent; +import ipos.project.DataModellntegration.iPos_Datamodel.Gaussian; +import ipos.project.DataModellntegration.iPos_Datamodel.LocalizableObject; +import ipos.project.DataModellntegration.iPos_Datamodel.PositionEvent; +import ipos.project.UseCaseController.PositionMonitoring; +import org.apache.logging.log4j.LogManager; + +import java.time.Duration; +import java.time.LocalDateTime; +import java.time.format.DateTimeFormatter; +import java.util.*; + +public class SensorDataFusion { + + private static Map<String, List<PositionEvent>> recentEventStorage = new HashMap<>(); + private static org.apache.logging.log4j.Logger LOG = LogManager.getLogger(); + + /** + * Side-effect: calls updates recent-event storage + * + * @param positionEvent + * @return + */ + public static boolean isMostAccuratePositionAvailable(PositionEvent positionEvent) { + try { + Agent agent = DataServices.getAgentForLocalizableObject(positionEvent.getLObjectId()); + List<PositionEvent> eventsForAgent = getEventStorageForAgentOrCreate(agent.getId()); + updateRecentEventStorage(eventsForAgent, positionEvent); + return hasBestAccuracyAmongStoredEvents(positionEvent, eventsForAgent); + + } catch (IllegalArgumentException e) { + LOG.warn("Sensor-data-fusion could not be applied to position-event as no LocalizableObject with " + + "the provided sensor-id could be found, or no agent" + + "is associated to the LocalizableObject that has been found."); + return false; + } + } + + /** + * Assumption: The larger the accuracy-value the worse is the accuracy. + * Accuracy == 0 is the best possible accuracy. + * Note: the accuracy-value corresponds conceptually to the radius of + * the circle that indicates the potential positions of the agent. + * @param positionEvent + * @param eventsForAgent + * @return + */ + private static boolean hasBestAccuracyAmongStoredEvents(PositionEvent positionEvent, List<PositionEvent> eventsForAgent) { + for (PositionEvent storedEvent : eventsForAgent){ + float storedAccuracy = ((Gaussian) storedEvent.getPlacing().getPosition().getAccuracy()).getConfidenceInterval(); + float eventAccuracy = ((Gaussian) positionEvent.getPlacing().getPosition().getAccuracy()).getConfidenceInterval();; + boolean eventsOriginatedFromDifferentSensors = !storedEvent.getLObjectId().equals(positionEvent.getLObjectId()); // important to make sure that the current IMU-position is not hidden behind older ones + logging_sdf(positionEvent, storedEvent); + if (storedAccuracy < eventAccuracy & eventsOriginatedFromDifferentSensors){ // it is important not to use <= here, as at least the current position event itself is contained in the list + logging_sdf(positionEvent); + return false; + } + } + return true; + } + + private static void logging_sdf(PositionEvent positionEvent, PositionEvent storedEvent) { + LocalDateTime eventTime = LocalDateTime.parse(positionEvent.getTimeStamp(), DateTimeFormatter.ISO_OFFSET_DATE_TIME); + LocalDateTime storedTime = LocalDateTime.parse(storedEvent.getTimeStamp(), DateTimeFormatter.ISO_OFFSET_DATE_TIME); + LOG.info("SDF-DEBUG: distance: " + Duration.between(storedTime, eventTime).toMillis()); + } + + private static void logging_sdf(PositionEvent positionEvent) { + LocalizableObject lObject = PositionMonitoring.getLObjectByIdOrNull(positionEvent.getLObjectId()); + String sensorType = lObject.getSensorType(); + String timestamp = positionEvent.getTimeStamp(); + String sensorId = positionEvent.getLObjectId(); + String agentId = lObject.getAgent().getId(); + LOG.info("SDF: SensorDataFusion rejected: sensorType: " + sensorType + " timestamp: " + timestamp + " sensorId: " + sensorId + "agentId: " + agentId); + } + + private static void updateRecentEventStorage(List<PositionEvent> eventsForAgent, PositionEvent positionEvent) throws IllegalArgumentException { + removeOldEvents(eventsForAgent); + eventsForAgent.add(0, positionEvent); + } + + /** + * Removes all position-events older than SDF_TIME_INTERVAL from the recentEventStorage. + * @param eventsForAgent + */ + private static void removeOldEvents(List<PositionEvent> eventsForAgent) { + LocalDateTime now = LocalDateTime.now(); + boolean removeSubsequentElements = false; + for (Iterator<PositionEvent> eventIt = eventsForAgent.iterator(); eventIt.hasNext();){ + PositionEvent currEvent = eventIt.next(); + if (removeSubsequentElements){ + eventIt.remove(); // removes element of the list that was returned by the last call to next() + continue; + } + LocalDateTime eventTime = LocalDateTime.parse(currEvent.getTimeStamp(), DateTimeFormatter.ISO_OFFSET_DATE_TIME); + long eventAge = Duration.between(eventTime, now).toMillis(); + LOG.info("SDF-DEBUG: eventAge: " + eventAge + " ; timestamp: " + currEvent.getTimeStamp() + " ; now: " + now); + if ( eventAge > PositionMonitoring.SDF_TIME_INTERVAL){ + eventIt.remove(); + removeSubsequentElements = true; + } + } + } + + private static List<PositionEvent> getEventStorageForAgentOrCreate(String agentId) { + List<PositionEvent> eventsForAgent = recentEventStorage.get(agentId); + if (eventsForAgent == null){ + eventsForAgent = new ArrayList<PositionEvent>(); + recentEventStorage.put(agentId, eventsForAgent); + } + return eventsForAgent; + } + + +} diff --git a/src/main/java/ipos/project/Functionality/Triangulation.java b/src/main/java/ipos/project/Functionality/Triangulation.java new file mode 100644 index 0000000000000000000000000000000000000000..576a3fcf15508da5472ba4ed2da610fb0a25fff9 --- /dev/null +++ b/src/main/java/ipos/project/Functionality/Triangulation.java @@ -0,0 +1,117 @@ +package ipos.project.Functionality; + +import com.lemmingapex.trilateration.NonLinearLeastSquaresSolver; +import com.lemmingapex.trilateration.TrilaterationFunction; +import ipos.project.DataModellntegration.iPos_Datamodel.*; +import ipos.project.UseCaseController.PositionMonitoring; +import org.apache.commons.math3.fitting.leastsquares.LeastSquaresOptimizer; +import org.apache.commons.math3.fitting.leastsquares.LevenbergMarquardtOptimizer; +import org.apache.commons.math3.linear.RealMatrix; +import org.apache.commons.math3.linear.RealVector; +import org.apache.logging.log4j.LogManager; +import org.eclipse.emf.common.util.EMap; + +import java.sql.Timestamp; +import java.text.ParseException; +import java.lang.*; +import java.text.SimpleDateFormat; +import java.time.LocalDateTime; +import java.time.ZoneId; +import java.time.format.DateTimeFormatter; +import java.util.Date; +import java.util.HashMap; +import java.util.MissingResourceException; +import java.util.Optional; + +public class Triangulation { + private static final int MIN_NUMBER_OF_BEACONS = 3; + private static org.apache.logging.log4j.Logger LOG = LogManager.getLogger(); + + private static IPos_DatamodelFactory modelFactory = IPos_DatamodelFactory.eINSTANCE; + + public static Optional<PositionEvent> update(UWB uwbRawDataEvent) throws ParseException { + + if(eventNotApplicable(uwbRawDataEvent)){ + return Optional.empty(); + } + + double[][] positions = new double[][]{{0, 0}, {0, 0}, {0, 0}, {0, 0}}; + double[] distances = new double[]{0,0,0,0}; + HashMap uwbData = (HashMap) uwbRawDataEvent.getDistances(); + int index = 0; + for (Object key : uwbData.keySet()) { + Point3D beaconPoint3D = modelFactory.createPoint3D(); + beaconPoint3D = (Point3D) DataServices.getPoiByIdOrNull((String) key).getPlacing().getPosition().getPoint(); + positions[index] = new double[]{beaconPoint3D.getX(), beaconPoint3D.getY()}; + distances[index] = (Double) uwbData.get(key); + index ++; + } + + + Point3D tagPoint3D = modelFactory.createPoint3D(); + Position tagPosition = modelFactory.createPosition(); + Placing tagPlacing = modelFactory.createPlacing(); + Gaussian tagGaussian = modelFactory.createGaussian(); + + NonLinearLeastSquaresSolver solver = new NonLinearLeastSquaresSolver(new TrilaterationFunction(positions, distances), new LevenbergMarquardtOptimizer()); + LeastSquaresOptimizer.Optimum optimum = solver.solve(); + + // the answer + double[] centroid = optimum.getPoint().toArray(); + + // error and geometry information; may throw SingularMatrixException depending the threshold argument provided + RealVector standardDeviation = optimum.getSigma(0); + RealMatrix covarianceMatrix = optimum.getCovariances(0); + + tagPoint3D.setX((float) centroid[0]); + tagPoint3D.setY((float) centroid[1]); + // tagPoint3D.setZ((float) PositionMonitoring.TRIANGULATION_HEIGHT); + tagGaussian.setConfidenceInterval((float) standardDeviation.getLInfNorm()); + tagPosition.setPoint(tagPoint3D); + tagPosition.setAccuracy(tagGaussian); + tagPosition.setReferenceSystem(DataServices.getReferenceSystemByIdOrNull("ROOT")); + tagPlacing.setPosition(tagPosition); + tagPlacing.setOrientation(modelFactory.createQuaternion()); + return Optional.of(createPosEvent(uwbRawDataEvent.getSensorId(), uwbRawDataEvent.getTimeStamp(), tagPlacing)); + + } + + private static boolean eventNotApplicable(UWB uwbRawDataEvent) { + return notEnoughBeaconDistances(uwbRawDataEvent) || includesUnknownBeacon(uwbRawDataEvent); + } + + private static boolean includesUnknownBeacon(UWB uwbRawDataEvent) { + HashMap<String, Double> uwbData = (HashMap<String, Double>) uwbRawDataEvent.getDistances(); + for (String beaconId : uwbData.keySet()){ + if (null == DataServices.getPoiByIdOrNull(beaconId)){ + LOG.info("UWBRawDataEvent contains unknown beacon: " + beaconId); + return true; + } + } + return false; + } + + private static boolean notEnoughBeaconDistances(UWB uwbRawDataEvent) { + HashMap uwbData = (HashMap) uwbRawDataEvent.getDistances(); + if(uwbData.keySet().size() < Triangulation.MIN_NUMBER_OF_BEACONS){ + LOG.info("UWBRawDataEvent only contains " + uwbData.keySet().size() + " beacon-distances. Can not calculate a position"); + return true; + }else { + return false; + } + } + + private static double[] getPositionFromBeaconId(String beaconId) { + Point3D beaconPos = modelFactory.createPoint3D(); + beaconPos = (Point3D) DataServices.getPoiByIdOrNull(beaconId).getPlacing().getPosition().getPoint(); + double[] position = new double[]{beaconPos.getX(), beaconPos.getY(), beaconPos.getZ()}; + return position; + } + private static PositionEvent createPosEvent(String lObjectId, String timeStamp, Placing placing) { + PositionEvent positionEvent = modelFactory.createPositionEvent(); + positionEvent.setLObjectId(lObjectId); + positionEvent.setTimeStamp(timeStamp); + positionEvent.setPlacing(placing); + return positionEvent; + } +} diff --git a/src/main/java/ipos/project/Functionality/eventfilter/BeaconFilteringResult.java b/src/main/java/ipos/project/Functionality/eventfilter/BeaconFilteringResult.java new file mode 100644 index 0000000000000000000000000000000000000000..1e8a1f57d29bb6296a88320ee44a34e05d097fe4 --- /dev/null +++ b/src/main/java/ipos/project/Functionality/eventfilter/BeaconFilteringResult.java @@ -0,0 +1,18 @@ +package ipos.project.Functionality.eventfilter; + +import ipos.project.DataModellntegration.iPos_Datamodel.Beacon; + +public class BeaconFilteringResult extends FilteringResult { + + private Beacon beaconRawdataEvent; + + public BeaconFilteringResult(String monitoringTaskId, Beacon beaconRawdataEvent, Boolean isBlocking) { + super(monitoringTaskId, isBlocking); + this.beaconRawdataEvent = beaconRawdataEvent; + } + + public Beacon getBeaconRawdataEvent() { + return beaconRawdataEvent; + } + +} diff --git a/src/main/java/ipos/project/Functionality/eventfilter/FilteringResult.java b/src/main/java/ipos/project/Functionality/eventfilter/FilteringResult.java new file mode 100644 index 0000000000000000000000000000000000000000..82a7c413938c9345273d5af262d17d1658b96b15 --- /dev/null +++ b/src/main/java/ipos/project/Functionality/eventfilter/FilteringResult.java @@ -0,0 +1,24 @@ +package ipos.project.Functionality.eventfilter; + +import ipos.project.DataModellntegration.iPos_Datamodel.Beacon; + +public class FilteringResult { + + private String monitoringTaskId; + private boolean isBlocking; + + public FilteringResult(String monitoringTaskId, Boolean isBlocking) { + this.monitoringTaskId = monitoringTaskId; + this.isBlocking = isBlocking; + } + + public String getMonitoringTaskId() { + return monitoringTaskId; + } + + public boolean hasBlockedEvent(){ + return this.isBlocking; + } + + +} diff --git a/src/main/java/ipos/project/Functionality/eventfilter/MsgRcvFilteringResult.java b/src/main/java/ipos/project/Functionality/eventfilter/MsgRcvFilteringResult.java new file mode 100644 index 0000000000000000000000000000000000000000..e934fddf468cf78728c01c539159044f681f3a50 --- /dev/null +++ b/src/main/java/ipos/project/Functionality/eventfilter/MsgRcvFilteringResult.java @@ -0,0 +1,18 @@ +package ipos.project.Functionality.eventfilter; + +import ipos.project.DataModellntegration.iPos_Datamodel.MessageReceivedEvent; + +public class MsgRcvFilteringResult extends FilteringResult { + + private MessageReceivedEvent messageReceivedEvent; + + public MsgRcvFilteringResult(String monitoringTaskId, MessageReceivedEvent messageReceivedEvent, Boolean isBlocking) { + super(monitoringTaskId, isBlocking); + this.messageReceivedEvent = messageReceivedEvent; + } + + public MessageReceivedEvent getMessageReceivedEvent() { + return messageReceivedEvent; + } + +} diff --git a/src/main/java/ipos/project/Functionality/eventfilter/PositionFilteringResult.java b/src/main/java/ipos/project/Functionality/eventfilter/PositionFilteringResult.java new file mode 100644 index 0000000000000000000000000000000000000000..19b1baa9bb388df0415baf09bc69f7e7f3938cde --- /dev/null +++ b/src/main/java/ipos/project/Functionality/eventfilter/PositionFilteringResult.java @@ -0,0 +1,34 @@ +package ipos.project.Functionality.eventfilter; + +import ipos.project.DataModellntegration.iPos_Datamodel.PositionEvent; + +import java.util.List; + +public class PositionFilteringResult extends FilteringResult{ + + public PositionFilteringResult(String monitoringTaskId, PositionEvent posEvent, boolean isBlocking, List<String> matchingPositionConditionCells, List<String> allPositionConditionCells){ + super(monitoringTaskId, isBlocking); + this.posEvent = posEvent; + this.matchingPositionConditionCells = matchingPositionConditionCells; + this.nonMatchingPositionConditionCells = allPositionConditionCells; + this.nonMatchingPositionConditionCells.removeAll(matchingPositionConditionCells); + } + + private List<String> matchingPositionConditionCells; + private List<String> nonMatchingPositionConditionCells; + + + public PositionEvent getPosEvent() { + return posEvent; + } + + private PositionEvent posEvent; + + public List<String> getMatchingPositionConditionCellIds() { + return this.matchingPositionConditionCells; + } + + public List<String> getNonMatchingPositionConditionCellIds(){ + return this.nonMatchingPositionConditionCells; + } +} diff --git a/src/main/java/ipos/project/Functionality/eventfilter/TestEventFilter.java b/src/main/java/ipos/project/Functionality/eventfilter/TestEventFilter.java index dbe5fcf89a7d63e76fb08b83589e1f446a342edd..53835c160195c1852a68f904d4f65678eccccfc7 100644 --- a/src/main/java/ipos/project/Functionality/eventfilter/TestEventFilter.java +++ b/src/main/java/ipos/project/Functionality/eventfilter/TestEventFilter.java @@ -1,5 +1,7 @@ package ipos.project.Functionality.eventfilter; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitFactory; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest; import ipos.project.Functionality.eventfilter.*; import ipos.project.DataModellntegration.iPos_Datamodel.*; import org.springframework.stereotype.Component; @@ -15,17 +17,26 @@ import java.util.HashMap; public class TestEventFilter { public static void test() throws ParseException { IPos_DatamodelFactory datamodelFactory = IPos_DatamodelFactory.eINSTANCE; + IPosDevKitFactory devKitFactory = IPosDevKitFactory.eINSTANCE; Timestamp timestamp = new Timestamp(System.currentTimeMillis()); SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss.SSS"); //HashMap events = new HashMap<String, String>(); PositionEvent testPositionEvent = datamodelFactory.createPositionEvent(); Placing testPlacing = datamodelFactory.createPlacing(); LocalizableObject testLObject = datamodelFactory.createLocalizableObject(); - PositionSensor testPSensor = datamodelFactory.createPositionSensor(); - RelativePosition testPosition = datamodelFactory.createRelativePosition(); + testLObject.setSensorType("UWB"); + testLObject.setId("AGV001"); + Agent testAgent = datamodelFactory.createAgent(); + testAgent.setAgentType("AGV"); + testAgent.getLObject().add(testLObject); + testAgent.setId("testAgent-Id"); + testLObject.setAgent(testAgent); + Position testPosition = datamodelFactory.createPosition(); Point3D testPoint3D = datamodelFactory.createPoint3D(); - eventFilter filter = new eventFilter(); + MonitoringRequest monReq = devKitFactory.createMonitoringRequest(); + monReq.setMonitoringTaskId("testMonitoringTaskId"); + eventFilter filter = new eventFilter(monReq); EventFilterCondition config = datamodelFactory.createEventFilterCondition(); String jsonPath = System.getProperty("user.dir") + "\\src\\main\\java\\ipos\\project\\Functionality\\eventfilter\\configExample.json"; //assign your JSON file here @@ -49,16 +60,12 @@ public class TestEventFilter { events.put(tagNames.tagY,"2.456"); events.put(tagNames.tagZ, "1"); events.put(tagNames.tagAccuracy,"0.15"); */ - testPoint3D.setX((float) 1.34); - testPoint3D.setY((float) 2.456); - testPoint3D.setZ((float) 1); + testPoint3D.setX((float) 3.34); + testPoint3D.setY((float) 2.656); + testPoint3D.setZ((float) 2); testPosition.setPoint(testPoint3D); testPlacing.setPosition(testPosition); testLObject.setId("AGV001"); - testLObject.setType("AGV"); - testPSensor.setType("UWB"); - testLObject.setPSensor(testPSensor); - testPlacing.setLObject(testLObject); testPositionEvent.setTimeStamp("2021-07-05 14:09:03.591"); testPositionEvent.setPlacing(testPlacing); System.out.println("Filter result " + ": " + filter.process(testPositionEvent)); diff --git a/src/main/java/ipos/project/Functionality/eventfilter/eventFilter.java b/src/main/java/ipos/project/Functionality/eventfilter/eventFilter.java index 05b35890ab6b84bf38f86422890ba272a7ed1b22..34f957bf4e9a8dbcd860fe1a7256e0b77944a31f 100644 --- a/src/main/java/ipos/project/Functionality/eventfilter/eventFilter.java +++ b/src/main/java/ipos/project/Functionality/eventfilter/eventFilter.java @@ -1,29 +1,58 @@ package ipos.project.Functionality.eventfilter; -import ipos.project.Functionality.eventfilter.Cell.Quaternion; -import ipos.project.Functionality.eventfilter.Cell.Vector3; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest; +import ipos.project.Functionality.DataServices; import ipos.project.DataModellntegration.iPos_Datamodel.*; +import ipos.project.UseCaseController.PositionMonitoring; +import org.apache.logging.log4j.LogManager; import java.sql.Timestamp; +import java.lang.Math; import java.text.ParseException; import java.text.SimpleDateFormat; -import java.util.ArrayList; -import java.util.Date; -import java.util.List; +import java.util.*; public class eventFilter { + private static org.apache.logging.log4j.Logger LOG = LogManager.getLogger(); + + public static final String MONREQ_DISTANCE_PROPERTY = "distance"; + public static final String MONREQ_VDA5050_PROPERTY = "VDA5050"; + public static final List<String> MONREQ_ALLOWED_PROPERTIES = Arrays.asList("position", "id", "type", MONREQ_DISTANCE_PROPERTY, MONREQ_VDA5050_PROPERTY); + private boolean[] filterStructure; // private PositionEvent last_position_event; + private MonitoringRequest monitoringRequest; - { + public eventFilter(MonitoringRequest monitoringRequest){ + this.monitoringRequest = monitoringRequest; filterStructure = new boolean[9]; } + public String getMonitoringTaskId(){ + return this.monitoringRequest.getMonitoringTaskId(); + } + + public String getSerializationType(){ + return this.monitoringRequest.getSerializationType(); + } + + public String getRefSystemId(){ + return this.monitoringRequest.getRefSystemId(); + } + + private String getFusionStrategy(){ + return this.monitoringRequest.getFusionStrategy(); + } + //Conditions: unique conditions are defined as single values, Parallel conditions are defined in lists. //initial value: 0 (for float and int) and empty (for arrays), it's not always possible to determine the status of the filter with just the condition value, so a filterStructure is defined to register which conditions are active. + public EventFilterCondition getFilterConditionConfig() { + return filterConditionConfig; + } + private ArrayList<String[]> timeCondition; private List<String> categoryCondition; private List<String> sensorIdCondition; @@ -32,7 +61,9 @@ public class eventFilter { private ArrayList<Float[]> positionCondition; private int timeMinInterval; private float positionDelta; - private ArrayList<Float[][]> positionConditionCell; + private Map<String, ArrayList<Float[][]>> positionConditionCells; // zoneId -> PositionConditionCell + private EventFilterCondition filterConditionConfig; + private List<String> propertyCondition; public void init(EventFilterCondition conf) { filterStructure = conf.getFilterStructure(); @@ -44,7 +75,9 @@ public class eventFilter { positionCondition = conf.getPositionCondition(); timeMinInterval = conf.getTimeMinInterval(); positionDelta = conf.getPositionDelta(); - positionConditionCell = conf.getPositionConditionCell(); + positionConditionCells = conf.getPositionConditionCells(); + propertyCondition = conf.getPropertyCondition(); + this.filterConditionConfig = conf; } private static String createRegexFromGlob(String glob) { @@ -70,20 +103,71 @@ public class eventFilter { return (float) Math.hypot(Math.hypot(dx, dy), dz); } - private static boolean is_in_cell(Vector3 cod, Vector3 ref, Vector3 size, Quaternion rot){ - cod.sub(ref); - rot.toMatrix(); - return true; + private static boolean is_in_cell(Point3D cod, Float[] ref, Float[] size, Float[] rot){ + if ((Math.abs(cod.getX()-ref[0])<= size[0]/2) && (Math.abs(cod.getY()-ref[1])<= size[1]/2) && (Math.abs(cod.getZ()-ref[2])<= size[2]/2)) { + return true; + } + else { + return false; + } + } + + public BeaconFilteringResult processRawdata(Beacon beaconRawdataEvent){ + LocalizableObject lObject = DataServices.getLObjectByIdOrNull(beaconRawdataEvent.getSensorId()); + if (null == lObject){ + LOG.info("EventFilter: Warning: Received beaconRawdataEvent from sensor with unknown sensor-id: " + beaconRawdataEvent.getSensorId()); + return new BeaconFilteringResult(getMonitoringTaskId(), beaconRawdataEvent, true); + } + + if (null == propertyCondition){ + // assumption: default value of property is 'position' and not 'distance' or any other rawdata. + // so we will not publish rawdata if property-field is unset + return new BeaconFilteringResult(getMonitoringTaskId(), beaconRawdataEvent, true); + } + + boolean isBlocking = false; //false for pass, true for block + if (sensorIdCondition != null){ + String rawdataSensorId = beaconRawdataEvent.getSensorId(); + if (!sensorIdCondition.contains(rawdataSensorId)){ + isBlocking = true; // important: once true, isBlocking must not be switched to false again, i.e., once blocked dont unblock anymore + } + } + + // rawdata-filter should block, if something other than rawdata is requested. + // for case propertyCondition == null: see above + if (propertyCondition != null){ + // currently we only accept 'distance' as a keyword to indicate the request for publishing rawdata + if (! propertyCondition.contains(MONREQ_DISTANCE_PROPERTY)){ + return new BeaconFilteringResult(getMonitoringTaskId(), beaconRawdataEvent, true); + } + } + return new BeaconFilteringResult(getMonitoringTaskId(), beaconRawdataEvent, isBlocking); } - public boolean process(PositionEvent event) throws ParseException { + public PositionFilteringResult process(PositionEvent event) throws ParseException { IPos_DatamodelFactory dataModelFactory = IPos_DatamodelFactory.eINSTANCE; + LocalizableObject lObject = DataServices.getLObjectByIdOrNull(event.getLObjectId()); boolean flag = false; //false for pass, true for block - System.out.println("Filter structure: " + filterStructure[0] + ", " + filterStructure[1] + ", " + filterStructure[2] + ", " + filterStructure[3] + ", " + filterStructure[4] + ", " + filterStructure[5] + ", " + filterStructure[6] + ", " + filterStructure[7]); + List<String> matchingCells = new LinkedList<>(); + if (null == event.getPlacing() || null == event.getPlacing().getPosition() || null == event.getPlacing().getPosition().getPoint()){ + LOG.info("EventFilter: Warning: Received event with unknown Position. Sensor-id: " + event.getLObjectId()); + return new PositionFilteringResult(getMonitoringTaskId(), event,true, matchingCells, new ArrayList<>(this.positionConditionCells.keySet())); + } + if (null == lObject){ + LOG.info("EventFilter: Warning: Received event from sensor with unknown sensor-id: " + event.getLObjectId()); + return new PositionFilteringResult(getMonitoringTaskId(), event,true, matchingCells, new ArrayList<>(this.positionConditionCells.keySet())); + } + Agent agent = lObject.getAgent(); + if (null == agent){ + LOG.info("EventFilter: Warning: Received event for sensor-id with unknown agent. Sensor-id: " + lObject.getId()); + return new PositionFilteringResult(getMonitoringTaskId(), event,true, matchingCells, new ArrayList<>(this.positionConditionCells.keySet())); + } + + LOG.info("Eventfilter: Filter structure: " + filterStructure[0] + ", " + filterStructure[1] + ", " + filterStructure[2] + ", " + filterStructure[3] + ", " + filterStructure[4] + ", " + filterStructure[5] + ", " + filterStructure[6] + ", " + filterStructure[7]); //filter time conditions if (filterStructure[0]) { flag = true; //switch the filter status to block, if the event meet the filter condition, switch to pass - System.out.println("Time condition: " + timeCondition); + LOG.info("Eventfilter: Time condition: " + timeCondition); for (int i = 0; i < timeCondition.size(); i++) { SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS"); Date date = formatter.parse(event.getTimeStamp()); @@ -93,7 +177,7 @@ public class eventFilter { Timestamp lower_ts = new Timestamp(lower_date.getTime()); Timestamp upper_ts = new Timestamp(upper_date.getTime()); - System.out.println("Time in event" + ": " + date); + LOG.info("Eventfilter: Time in event" + ": " + date); if (lower_ts.equals(upper_ts) || ts.equals(lower_ts)) { flag = false; @@ -105,48 +189,50 @@ public class eventFilter { } } } - System.out.println("Filter status (Time) " + ": " + flag); + LOG.info("Eventfilter: Filter status (Time) " + ": " + flag); //filter category conditions if (filterStructure[1] && !flag) { flag = true; //switch the filter status to block, if the event meet the filter condition, switch to pass for (int i = 0; i < categoryCondition.size(); i++) { - System.out.println("Type in event: " + event.getPlacing().getLObject().getType()); - if (event.getPlacing().getLObject().getType().equals(categoryCondition.get(i))) { + LOG.info("Eventfilter: Type in event: " + agent.getAgentType()); + + if (agent.getAgentType().equals(categoryCondition.get(i))) { flag = false; break; } } } - System.out.println("Filter status (category) " + ": " + flag); + LOG.info("Eventfilter: Filter status (category) " + ": " + flag); //filter id conditions if (filterStructure[2] && !flag) { flag = true; //switch the filter status to block, if the event meet the filter condition, switch to pass for (int i = 0; i < idCondition.size(); i++) { - if (event.getPlacing().getLObject().getId().matches(idCondition.get(i))) { + if (lObject.getId().matches(idCondition.get(i))) { flag = false; break; } } } - System.out.println("Filter status (id) " + ": " + flag); + LOG.info("Eventfilter: Filter status (id) " + ": " + flag); //filter sensor_id conditions if (filterStructure[3] && !flag) { flag = true; //switch the filter status to block, if the event meet the filter condition, switch to pass for (int i = 0; i < sensorIdCondition.size(); i++) { String patternString = createRegexFromGlob(sensorIdCondition.get(i)); - if (event.getPlacing().getLObject().getPSensor().getType().matches(patternString)) { + // TODO: Does this really work? + if (lObject.getSensorType().matches(patternString)) { flag = false; break; } } } - System.out.println("Filter status (sensor_id) " + ": " + flag); + LOG.info("Eventfilter: Filter status (sensor_id) " + ": " + flag); //filter accuracy condition if (filterStructure[4] && !flag) { flag = true; //switch the filter status to block, if the event meet the filter condition, switch to pass - //System.out.println("Accuracy condition: " + accuracyCondition); - //System.out.println("Accuracy event: " + event.getPositionInfo().getPosition().getAccuracy()); + //LOG.info("Eventfilter: Accuracy condition: " + accuracyCondition); + //LOG.info("Eventfilter: Accuracy event: " + event.getPositionInfo().getPosition().getAccuracy()); if (event.getPlacing().getPosition().getAccuracy() instanceof Gaussian) { Gaussian gAccuracy = (Gaussian) event.getPlacing().getPosition().getAccuracy(); if (gAccuracy.getConfidenceInterval() <= accuracyCondition) { @@ -154,30 +240,28 @@ public class eventFilter { } } } - System.out.println("Filter status (accuracy) " + ": " + flag); + LOG.info("Eventfilter: Filter status (accuracy) " + ": " + flag); //filter position conditions if (filterStructure[5] && !flag) { flag = true; //switch the filter status to block, if the event meet the filter condition, switch to pass - if (event.getPlacing().getPosition() instanceof RelativePosition) { - RelativePosition rPosition = (RelativePosition) event.getPlacing().getPosition(); - if (rPosition.getPoint() instanceof Point3D) { - Point3D cod2 = dataModelFactory.createPoint3D(); - for(int i=0; i<sensorIdCondition.size(); i++){ - Point3D cod1 = dataModelFactory.createPoint3D(); - cod1.setX(positionCondition.get(i)[0]); - cod1.setY(positionCondition.get(i)[1]); - cod1.setZ(positionCondition.get(i)[2]); - if (cal_distance(cod1, cod2)<=positionCondition.get(i)[3]){ - flag = false; - break; - } + Position position = event.getPlacing().getPosition(); + if (position.getPoint() instanceof Point3D) { + Point3D cod2 = dataModelFactory.createPoint3D(); + for(int i=0; i<sensorIdCondition.size(); i++){ + Point3D cod1 = dataModelFactory.createPoint3D(); + cod1.setX(positionCondition.get(i)[0]); + cod1.setY(positionCondition.get(i)[1]); + cod1.setZ(positionCondition.get(i)[2]); + if (cal_distance(cod1, cod2)<=positionCondition.get(i)[3]){ + flag = false; + break; } } } } - System.out.println("Filter status (position) " + ": " + flag); + LOG.info("Eventfilter: Filter status (position) " + ": " + flag); //filter time_min_interval condition if (filterStructure[6] && !flag && last_position_event !=null) { flag = true; //switch the filter status to block, if the event meet the filter condition, switch to pass @@ -187,53 +271,79 @@ public class eventFilter { Date last_date = formatter.parse(last_position_event.getTimeStamp()); Timestamp last_ts = new Timestamp(last_date.getTime()); long interval = date.getTime() - last_date.getTime(); - //System.out.println("Time stamp" + ": " + ts); - //System.out.println("Interval" + ": " + interval); + //LOG.info("Eventfilter: Time stamp" + ": " + ts); + //LOG.info("Eventfilter: Interval" + ": " + interval); if (interval >= timeMinInterval) { flag = false; } } - System.out.println("Filter status (time_min_interval) " + ": " + flag); + LOG.info("Eventfilter: Filter status (time_min_interval) " + ": " + flag); //filter position_delta condition if (filterStructure[7] && !flag && last_position_event !=null) { flag = true; //switch the filter status to block, if the event meet the filter condition, switch to pass - if (event.getPlacing().getPosition() instanceof RelativePosition) { - RelativePosition rPosition1 = (RelativePosition) event.getPlacing().getPosition(); - RelativePosition rPosition2 = (RelativePosition) last_position_event.getPlacing().getPosition(); - if (rPosition1.getPoint() instanceof Point3D) { - Point3D cod1 = (Point3D) rPosition1.getPoint(); - Point3D cod2 = (Point3D) rPosition2.getPoint(); - float distance = cal_distance(cod1, cod2); - - System.out.println("Distance: " + distance); - if (distance >= positionDelta) { - flag = false; - } + Position position1 = event.getPlacing().getPosition(); + Position position2 = last_position_event.getPlacing().getPosition(); + if (position1.getPoint() instanceof Point3D) { + Point3D cod1 = (Point3D) position1.getPoint(); + Point3D cod2 = (Point3D) position2.getPoint(); + float distance = cal_distance(cod1, cod2); + + LOG.info("Eventfilter: Distance: " + distance); + if (distance >= positionDelta) { + flag = false; } } + } - System.out.println("Filter status (position_delta) " + ": " + flag); + LOG.info("Eventfilter: Filter status (position_delta) " + ": " + flag); //filter positionCondition_cell condition - /*if (filterStructure[8] && !flag) { + if (filterStructure[8] && !flag) { flag = true; //switch the filter status to block, if the event meet the filter condition, switch to pass - Vector3 cod = new Vector3(Double.parseDouble(event.getPositionInfo().getPosition().getCoordinate().getX()),Double.parseDouble(event.getPositionInfo().getPosition().getCoordinate().getY()),Double.parseDouble(event.getPositionInfo().getPosition().getCoordinate().getZ())); - for (int i = 0; i < positionCondition_cell.size(); i++) { - Vector3 ref = new Vector3(positionCondition_cell.get(i)[0][0], positionCondition_cell.get(i)[0][1], positionCondition_cell.get(i)[0][2]); - Vector3 size = new Vector3(positionCondition_cell.get(i)[1][0], positionCondition_cell.get(i)[1][1], positionCondition_cell.get(i)[1][2]); - Quaternion rot = new Quaternion(positionCondition_cell.get(i)[2][0], positionCondition_cell.get(i)[2][1], positionCondition_cell.get(i)[2][2], positionCondition_cell.get(i)[2][3]); - if (is_in_cell(cod, ref, size, rot)) { + Position position = event.getPlacing().getPosition(); + for (Map.Entry<String, ArrayList<Float[][]>> identifiedCell : positionConditionCells.entrySet()){ + boolean evalResult = evaluatePositionConditionCell(position, identifiedCell.getValue()); + if (!evalResult){ // let the event pass if filter is not blocking for at least one cell flag = false; + matchingCells.add(identifiedCell.getKey()); } } } - System.out.println("Filter status (positionCondition_cell) " + ": " + flag);*/ - + LOG.info("Eventfilter: Filter status (positionCondition_cell) " + ": " + flag); + LOG.info("Eventfilter: EventFilter " + getMonitoringTaskId() + " accepted zones " + matchingCells.toString()); + LOG.info("INDFRO-DEBUG: EventFilter " + getMonitoringTaskId() + " accepted zones " + matchingCells.toString()); if (!flag) { last_position_event = event; } - return flag; + PositionFilteringResult positionFilteringResult = new PositionFilteringResult(getMonitoringTaskId(), event, flag, matchingCells, new ArrayList<>(this.positionConditionCells.keySet())); + return positionFilteringResult; + } + + private boolean evaluatePositionConditionCell(Position position, ArrayList<Float[][]> positionConditionCell) { + boolean result = true; + for (int i = 0; i < positionConditionCell.size(); i++) { + if (position.getPoint() instanceof Point3D) { + Point3D cod = (Point3D) position.getPoint(); + if (is_in_cell(cod, positionConditionCell.get(i)[0], positionConditionCell.get(i)[1], positionConditionCell.get(i)[2])) { + result = false; + } + } + } + return result; + } + + public boolean respectsAccuracySdfForPosEvent(PositionEvent posEvent) { + return (true || PositionMonitoring.ACCURACY_FUSION_STRATEGY.equals(this.getFusionStrategy())); // sensor data fusion is currently switched on by default, but later it may depend on agent-id + } + + public MsgRcvFilteringResult processMessageReceivedEvent(MessageReceivedEvent messageReceivedEvent) { + boolean isVDA5050Message = MONREQ_VDA5050_PROPERTY.equals(messageReceivedEvent.getProtocolName()); + boolean eFilterIsAcceptingVDA5050Message = propertyCondition.contains(MONREQ_VDA5050_PROPERTY); + boolean isAccepting = isVDA5050Message && eFilterIsAcceptingVDA5050Message; + boolean isBlocking = !isAccepting; + MsgRcvFilteringResult msgRcvFilteringResult = new MsgRcvFilteringResult(this.getMonitoringTaskId(), messageReceivedEvent, isBlocking); + return msgRcvFilteringResult; } } diff --git a/src/main/java/ipos/project/Functionality/eventfilter/readConfig.java b/src/main/java/ipos/project/Functionality/eventfilter/readConfig.java index b32f9dee9e2c5de76c5a017935b8d85493f44759..f009bf0684b11415d32d1ee7103ca589dbb5b9b1 100644 --- a/src/main/java/ipos/project/Functionality/eventfilter/readConfig.java +++ b/src/main/java/ipos/project/Functionality/eventfilter/readConfig.java @@ -1,5 +1,8 @@ package ipos.project.Functionality.eventfilter; -import ipos.project.DataModellntegration.iPos_Datamodel.EventFilterCondition; +import ipos.project.DataModellntegration.iPos_Datamodel.*; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest; +import ipos.project.Functionality.DataServices; +import org.apache.logging.log4j.LogManager; import org.json.JSONArray; import org.json.JSONObject; @@ -9,6 +12,78 @@ import java.util.ArrayList; import java.util.List; public class readConfig { + + // kommt später raus, Zugriff auf Weltmodell erfolgt eigentlich über Komponente DataRetrieval + // private static WorldModel wm; + private static org.apache.logging.log4j.Logger LOG = LogManager.getLogger(); + + /** + * Returns false if MonitoringRequest could not be read successfully. + * @param monReq + * @param config + * @return + */ + public static boolean readFilterConfigFromMonitoringRequest (MonitoringRequest monReq, EventFilterCondition config){ + // TODO: support other criteria than "position_condition_cell" + config.setFilterStructure(new boolean[] {false, false, false, false, false, false, false, false, true}); + for (String frameId : monReq.getFrameIds()){ + Zone zone_monReq = DataServices.getZoneByIdOrNull(frameId); + if (null == zone_monReq){ + LOG.warn("MonitoringRequest contained an invalid Zone-id: " + frameId); + return false; + } + ArrayList<Float[][]> positionConditionCell = transformZone2PositionConditionCell(zone_monReq); + config.getPositionConditionCells().put(frameId, positionConditionCell); + } + + try { + monReq.getId().forEach(sensorId -> addSensorIdToFilterConfig(sensorId, config)); + }catch (RuntimeException e){ + LOG.warn(e.getMessage()); + return false; + } + + try { + monReq.getProperties().forEach(property -> addPropertyToFilterConfig(property, config)); + }catch (RuntimeException e){ + LOG.warn(e.getMessage()); + return false; + } + + return true; + } + + private static void addPropertyToFilterConfig(String property, EventFilterCondition config) { + if (eventFilter.MONREQ_ALLOWED_PROPERTIES.contains(property)){ + config.getPropertyCondition().add(property); + }else{ + throw new RuntimeException("MonitoringRequest contained an invalid property: " + property); + } + } + + private static void addSensorIdToFilterConfig(String sensorId, EventFilterCondition config) { + LocalizableObject lObject = DataServices.getLObjectByIdOrNull(sensorId); + if (null == lObject){ + throw new RuntimeException("MonitoringRequest contained an invalid sensor-id: " + sensorId); + } + config.getSensorIdCondition().add(sensorId); + } + + public static ArrayList<Float[][]> transformZone2PositionConditionCell(Zone zone) { + // TODO: support Point-Types other than Point3D + ArrayList<Float[][]> position_condition_cell = new ArrayList<>(); + for (var space : zone.getSpace()) { + Float[][] cell_c = new Float[3][4]; // first dimension selects: Position, Space, Quaternion; second dimension selects: x,y,z,w + Point3D centrePoint = (Point3D) space.getCentrePoint().getPosition().getPoint(); + Quaternion orientation = (Quaternion) space.getCentrePoint().getOrientation(); + cell_c[0] = new Float[]{centrePoint.getX(), centrePoint.getY(), centrePoint.getZ()}; + cell_c[1] = new Float[]{space.getX(), space.getY(), space.getZ()}; + cell_c[2] = new Float[]{orientation.getX(), orientation.getY(), orientation.getZ(), orientation.getW()}; + position_condition_cell.add(cell_c); + } + return position_condition_cell; + } + public static void readFilterConfigFromJson (String json_file, EventFilterCondition config) throws Exception { //Time condition: One time condition consist of two timestamp in format "yyyy-MM-dd HH:mm:ss.SSS", if the timestamp of the position event falls in between, the event passes. @@ -232,7 +307,7 @@ public class readConfig { position_condition_cell.add(cell_c); } filter_structure[8] = true; - config.setPositionConditionCell(position_condition_cell); + config.getPositionConditionCells().put("DefaultZoneId", position_condition_cell); } else { filter_structure[8]=false; @@ -261,8 +336,9 @@ public class readConfig { System.out.println("\tsensor_id_condition : " + config.getSensorIdCondition()); System.out.println("\tid_condition : " + config.getIdCondition()); System.out.println("\taccuracy_condition : " + config.getAccuracyCondition()); - System.out.println("\tposition_condition : " + config.getPositionCondition().get(0)[0] + ", " + config.getPositionCondition().get(0)[1] + ", " + config.getPositionCondition().get(0)[2] + ", " + config.getPositionCondition().get(0)[3]); + //System.out.println("\tposition_condition : " + config.getPositionCondition().get(0)[0] + ", " + config.getPositionCondition().get(0)[1] + ", " + config.getPositionCondition().get(0)[2] + ", " + config.getPositionCondition().get(0)[3]); System.out.println("\ttime_min_interval : " + config.getTimeMinInterval()); System.out.println("\tposition_delta : " + config.getPositionDelta()); + System.out.println("\tfilter_structure : " + config.getFilterStructure()); } } diff --git a/src/main/java/ipos/project/MainApp.java b/src/main/java/ipos/project/MainApp.java index 2e431c612ae526353b3ceab7651f6ddeea2205c0..afc4e06806beac18915cf318692c2b2038a71099 100644 --- a/src/main/java/ipos/project/MainApp.java +++ b/src/main/java/ipos/project/MainApp.java @@ -1,19 +1,143 @@ package ipos.project; -import ipos.project.Functionality.eventfilter.TestEventFilter; +import ipos.project.DataModellntegration.SimpleSceneIntegration.SimpleSceneIntegration; +import ipos.project.DataModellntegration.VDA5050Processor.VDA5050Processor; +import ipos.project.SensorValueIntegration.GenericSensorValueProcessor; +import ipos.project.iposextension.orderpicker.OFBizOrderPicker; +import ipos.project.iposextension.osm.OSM; +import ipos.project.iposextension.tooz.Tooz; +import org.apache.logging.log4j.LogManager; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; -import org.springframework.boot.autoconfigure.domain.EntityScan; -import org.springframework.context.annotation.ComponentScan; import org.springframework.data.jpa.repository.config.EnableJpaRepositories; -import java.text.ParseException; +import java.util.Scanner; @SpringBootApplication -@EnableJpaRepositories("ipos.project.models.SimpleScene.*") +// @EnableJpaRepositories("ipos.project.models.SimpleScene.*") +@EnableJpaRepositories("ipos.project.DataModellntegration.iPos_Datamodel.impl") public class MainApp { - public static void main(String[] args) throws ParseException { - TestEventFilter.test(); - SpringApplication.run(MainApp.class, args); - } + public static boolean READY_TO_READ_NEXT_LINE = true; // reading the first line shall not require user actions + private static org.apache.logging.log4j.Logger LOG = LogManager.getLogger(); + + // public static final String TESTRAWDATA_FILE = "./testdata_raw.txt"; + // public static final String TESTDATA_EMPTY = "./testdata_raw_empty.txt"; + public static final String INDUSTRIEROBOTIK_FILE = "./init_Industrierobotik.txt"; + public static final String SENSORDATENFUSION_FILE = "./init_Sensordatenfusion.txt"; + public static final String ORDERPICKER_FILE = "./init_Orderpicker.txt"; + public static final String TESTDATA_INDFRO = "./testdata_raw_indfro.txt"; + public static final String TESTDATA_QUERY = "./testdata_raw_query.txt"; + public static final String TESTDATA_OP = "./testdata_raw_orderpicker.txt"; + public static final String TESTDATA_OP_EVTS = "testdata_raw_orderpicker_posEvts.txt"; + public static final String TESTDATA_SDF = "testdata_raw_sdf.txt"; + public static final String TESTDATA_TOOZ = "testdata_raw_tooz.txt"; + public static final String TESTDATA_TOOZ_MONTARGET = "testdata_raw_tooz_init.txt"; + public static final String TESTDATA_OSM_MONTARGET = "testdata_raw_osm_init.txt"; + public static final String TESTDATA_VDA5050 = "testdata_raw_vda5050.txt"; + public static final String COMMAND_INDFRO = "indfro testdata"; // Industrierobotik_Frontend + public static final String COMMAND_OP = "oppl testdata"; + public static final String COMMAND_OP_EVTS = "opevts testdata"; + public static final String COMMAND_SDF = "sdf testdata"; + public static final String COMMAND_TOOZ_TARGET = "tooz setLocalAgent"; + public static final String COMMAND_TOOZ = "tooz testdata"; + public static final String COMMAND_VDA5050 = "testdata VDA5050"; + public static final String COMMAND_EXIT = "exit"; + public static final String COMMAND_HELP = "help"; + public static final String COMMAND_QUERY = "query"; + public static final String COMMAND_INIT_INDFRO = "init indfro"; + public static final String COMMAND_INIT_SDF = "init sdf"; + public static final String COMMAND_INIT_OP = "init op"; + public static final String COMMAND_INIT_OSM = "init osm"; + public static final String COMMAND_READY_FOR_NEXT_LINE = "next line"; + public static final String UNKNOWN_COMMAND = "SHELL: Unknown command"; + private static boolean proceed = true; + + public static void main(String[] args){ + SpringApplication.run(MainApp.class, args); + printCommands(); + processCommands(); + } + + private static void processCommands() { + Scanner scanner = new Scanner(System.in); + while(proceed) { + if(scanner.hasNext()) { + String line = scanner.nextLine(); + switch(line){ + case COMMAND_INIT_INDFRO: initIndfro(); break; + case COMMAND_INIT_SDF: initSdf(); break; + case COMMAND_INIT_OP: initOp(); break; + case COMMAND_INIT_OSM: initOSM(TESTDATA_OSM_MONTARGET); break; + case COMMAND_EXIT : proceed = false; break; + case COMMAND_HELP: printCommands(); break; + case COMMAND_INDFRO: GenericSensorValueProcessor.processTestData(TESTDATA_INDFRO); break; + case COMMAND_TOOZ_TARGET: Tooz.processMonTargetTestdata(TESTDATA_TOOZ_MONTARGET); break; + case COMMAND_VDA5050: VDA5050Processor.processTestData(TESTDATA_VDA5050); break; + case COMMAND_TOOZ: GenericSensorValueProcessor.processTestData(TESTDATA_TOOZ); break; + case COMMAND_SDF: GenericSensorValueProcessor.processTestData(TESTDATA_SDF); break; + case COMMAND_OP : OFBizOrderPicker.processPicklistTestData(TESTDATA_OP); break; + case COMMAND_OP_EVTS: OFBizOrderPicker.processPosEvtTestData(TESTDATA_OP_EVTS); break; + case COMMAND_QUERY : SimpleSceneIntegration.handleMessageFile(TESTDATA_QUERY); break; + default: LOG.info(UNKNOWN_COMMAND); break; + } + } + } + } + + private static void initOSM(String testdataOsmMontarget) { + OSM.processTestData(testdataOsmMontarget); + } + + private static void initIndfro() { + ipos.project.SensorValueIntegration.api.MqttPositionHandler.setInitialized(false); + SimpleSceneIntegration.init(INDUSTRIEROBOTIK_FILE); + ipos.project.SensorValueIntegration.api.MqttPositionHandler.setInitialized(true); + } + + private static void initSdf() { + ipos.project.SensorValueIntegration.api.MqttPositionHandler.setInitialized(false); + SimpleSceneIntegration.init(SENSORDATENFUSION_FILE); + ipos.project.SensorValueIntegration.api.MqttPositionHandler.setInitialized(true); + } + + /** + * IPos-Framework is initialized with data that is suitable for testing the "OrderPicker"-usecase + * This initialization data is contained in configuration file ORDERPICKER_FILE. + * OrderPicker extension is initialized (OFBizOrderPicker.initialize()). + * After initialization the "OrderPicker extension" should be updated by the IPos-FW with all relevant positions + */ + private static void initOp() { + ipos.project.SensorValueIntegration.api.MqttPositionHandler.setInitialized(false); + SimpleSceneIntegration.init(ORDERPICKER_FILE); + ipos.project.SensorValueIntegration.api.MqttPositionHandler.setInitialized(true); + OFBizOrderPicker.initialize(); + } + + private static void printCommands() { + LOG.info("SHELL:-------------------------------------"); + LOG.info("SHELL:Available commands: "); + LOG.info("SHELL:---------"); + LOG.info("SHELL:Initialization: "); + LOG.info("SHELL:---------"); + LOG.info("SHELL:" + COMMAND_INIT_INDFRO); + LOG.info("SHELL:" + COMMAND_INIT_SDF); + LOG.info("SHELL:" + COMMAND_INIT_OP); + LOG.info("SHELL:---------"); + LOG.info("SHELL:Testdata:"); + LOG.info("SHELL:---------"); + LOG.info("SHELL:" + COMMAND_INDFRO); + LOG.info("SHELL:" + COMMAND_SDF); + LOG.info("SHELL:" + COMMAND_OP); + LOG.info("SHELL:" + COMMAND_OP_EVTS); + LOG.info("SHELL:" + COMMAND_QUERY); + LOG.info("SHELL:" + COMMAND_TOOZ); + LOG.info("SHELL:" + COMMAND_VDA5050); + LOG.info("SHELL:---------"); + LOG.info("SHELL:Other:"); + LOG.info("SHELL:---------"); + LOG.info("SHELL:" + COMMAND_EXIT); + LOG.info("SHELL:" + COMMAND_HELP); + LOG.info("SHELL:-------------------------------------"); + } + } diff --git a/src/main/java/ipos/project/SensorValueIntegration/GenericSensorValueProcessor.java b/src/main/java/ipos/project/SensorValueIntegration/GenericSensorValueProcessor.java new file mode 100644 index 0000000000000000000000000000000000000000..6521457779b52175d6fb0a5310eef41f056cb19c --- /dev/null +++ b/src/main/java/ipos/project/SensorValueIntegration/GenericSensorValueProcessor.java @@ -0,0 +1,106 @@ +package ipos.project.SensorValueIntegration; + +import com.google.protobuf.InvalidProtocolBufferException; +import ipos.models.GenericSensor; +import ipos.models.SimpleScene.IposPosition; +import ipos.project.DataModellntegration.iPos_Datamodel.Beacon; +import ipos.project.DataModellntegration.iPos_Datamodel.Bluetooth; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosBTEvent; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosUWBEvent; +import ipos.project.DataModellntegration.iPos_Datamodel.UWB; +import ipos.project.SensorValueIntegration.Service.GenericSensorTransformer; +import ipos.project.devkit.utility.ExternalPubServiceImpl; +import ipos.project.SensorValueIntegration.api.MqttPositionHandler; +import ipos.project.devkit.utility.OtherUtility; +import ipos.project.devkit.utility.ProtoJsonMap; +import org.apache.logging.log4j.LogManager; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.jms.annotation.JmsListener; +import org.springframework.stereotype.Component; + +import java.io.File; +import java.util.Scanner; + +@Component +public class GenericSensorValueProcessor { + private static org.apache.logging.log4j.Logger LOG = LogManager.getLogger(); + + @Autowired + public GenericSensorValueProcessor(ExternalPubServiceImpl mqttService_){ + mqttService = mqttService_; + } + + // @Autowired + private static ExternalPubServiceImpl mqttService; + + @JmsListener(destination = "/positions", containerFactory = "jmsListenFactory") + public void receiveMessage(IposPosition pos) { + LOG.trace("Data integration get: " + pos); + // we can translate a class into a string using several methods: 1) `.toString()` 2) `JsonFormat` in `ProtoJsonMap` + String jsonPos = ProtoJsonMap.toJson(pos); + if (jsonPos != null) { + this.mqttService.publish("test51/subscribe/positions", jsonPos, 0, false); + } + } + + public static void processTestData(String path_to_test_data_file){ + File testDataFile = new File(path_to_test_data_file); + Scanner scanner = new Scanner(System.in); + try { + for (String line : OtherUtility.readLines(testDataFile)) { + GenericSensor.SensorEventWrapper sensorEventWrapper = ProtoJsonMap.fromJson(line, GenericSensor.SensorEventWrapper.class); + OtherUtility.waitUntilUserRequestsReadingNextLine(scanner); + MqttPositionHandler.handleSensorEventWrapper(sensorEventWrapper); + } + }catch (InvalidProtocolBufferException e) { + LOG.error("Error trying to read JSON into protobuf-objects: "); + e.printStackTrace(); + } + } + + public static void receiveMessage(Beacon beaconRawdataEvent, String monitoringTaskId, String serializationType, String agentId, String agentType) { + if (beaconRawdataEvent instanceof UWB){ + GenericSensorValueProcessor.receiveMessage((UWB) beaconRawdataEvent, monitoringTaskId, serializationType, agentId, agentType); + } else if(beaconRawdataEvent instanceof Bluetooth){ + GenericSensorValueProcessor.receiveMessage((Bluetooth) beaconRawdataEvent, monitoringTaskId, serializationType, agentId, agentType); + } else{ + LOG.error("Rawdata could not be forwarded as position sensor technology could not be determined."); + } + } + + public static void receiveMessage(Bluetooth btRawdataEvent, String monitoringTaskId, String serializationType, String agentId, String agentType) { + IPosBTEvent iPosBTEvent_internal = GenericSensorTransformer.bt_internal2IPosRawdata(btRawdataEvent, agentId, agentType); + GenericSensor.IPosBTEvent iPosBTEvent_proto = GenericSensorTransformer.bt_IPosRawdata2proto(iPosBTEvent_internal); + GenericSensor.IPosRawdataEventWrapper iPosRawdataEventWrapper_proto = GenericSensorTransformer.bt_wrapIntoRawdataEventWrapper(iPosBTEvent_proto); + logging_tooz(iPosBTEvent_proto, monitoringTaskId, serializationType); + OtherUtility.publishRespectingSerializationType(monitoringTaskId, serializationType, iPosRawdataEventWrapper_proto); + } + + public static void receiveMessage(UWB beaconRawdataEvent, String monitoringTaskId, String serializationType, String agentId, String agentType) { + IPosUWBEvent iPosUWBEvent_internal = GenericSensorTransformer.uwb_internal2IPosRawdata(beaconRawdataEvent, agentId, agentType); + GenericSensor.IPosUWBEvent iPosUWBEvent_proto = GenericSensorTransformer.uwb_IPosRawdata2proto(iPosUWBEvent_internal); + GenericSensor.IPosRawdataEventWrapper iPosRawdataEventWrapper_proto = GenericSensorTransformer.uwb_wrapIntoRawdataEventWrapper(iPosUWBEvent_proto); + logging_tooz(iPosUWBEvent_proto, monitoringTaskId, serializationType); + OtherUtility.publishRespectingSerializationType(monitoringTaskId, serializationType, iPosRawdataEventWrapper_proto); + } + + private static void logging_tooz(com.google.protobuf.AbstractMessage event_proto, String monitoringTaskId, String serializationType) { + LOG.info("TOOZ: Publishing " + event_proto.getClass().getName() + " on topic " + monitoringTaskId + " with serialization type " + serializationType); + LOG.info("TOOZ: "); + } + /* + public static void publishRespectingSerializationType(String topic, String serializationType, String jsonString, MqttMessage mqttMessage) { + // publishes protobuf over MQTT + if (PositionMonitoring.PROTOBUF_SERIALIZATION_TYPE.equals(serializationType)){ + mqttService.publish(topic, mqttMessage); + LOG.info("publishing protobuf mqttMessage. JSON-representation:" + jsonString + " on topic: " + topic); + } + + // publishes JSON over MQTT + if (PositionMonitoring.JSON_SERIALIZATION_TYPE.equals(serializationType)){ + mqttService.publish(topic, jsonString, 0, false); + LOG.info("publishing JSON mqttMessage:" + jsonString + " on topic: " + topic); + } + }*/ + +} diff --git a/src/main/java/ipos/project/SensorValueIntegration/Service/GenericSensorTransformer.java b/src/main/java/ipos/project/SensorValueIntegration/Service/GenericSensorTransformer.java new file mode 100644 index 0000000000000000000000000000000000000000..49d027329b688dab1dd368578e95a82a3da48936 --- /dev/null +++ b/src/main/java/ipos/project/SensorValueIntegration/Service/GenericSensorTransformer.java @@ -0,0 +1,202 @@ +package ipos.project.SensorValueIntegration.Service; + +import com.google.protobuf.ProtocolStringList; +import ipos.models.GenericSensor; +import ipos.models.SimpleScene; +import ipos.project.DataModellntegration.iPos_Datamodel.*; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosBTEvent; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosUWBEvent; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitFactory; +import ipos.project.Functionality.DataServices; +import ipos.project.devkit.trans.IPos2protoTransformer; + + +import java.time.LocalDateTime; +import java.util.*; + +public class GenericSensorTransformer { + + private static IPos_DatamodelFactory modelFactory = IPos_DatamodelFactory.eINSTANCE; + private static IPosDevKitFactory devKitFactory = IPosDevKitFactory.eINSTANCE; + + private static List<String> toJavaStringList(ProtocolStringList protoList){ + List<String> javaList = new ArrayList<String>(); + for(int i = 0; i < protoList.size(); i++ ){ + javaList.set(i, protoList.get(i)); + } + return javaList; + } + + public static SimpleScene.IposMonitoringRequest monReq_Internal2SScene(){ + return null; + } + + public static PositionEvent posEvent_GSensor2Internal(GenericSensor.SensorPositionEvent protoSensPosEvent) { + PositionEvent positionEvent = modelFactory.createPositionEvent(); + positionEvent.setTimeStamp(protoSensPosEvent.getLastPosUpdate()); + positionEvent.setLObjectId(protoSensPosEvent.getSensorId()); + + // TODO: Zugriff auf Weltmodell ermöglichen um Bezugssystem-Objekt beschaffen zu können + positionEvent.setPlacing( + IPos2protoTransformer.createPlacing( + IPos2protoTransformer.createPosition( + IPos2protoTransformer.createPoint3D( + protoSensPosEvent.getPosition().getPoint().getX(), + protoSensPosEvent.getPosition().getPoint().getY(), + protoSensPosEvent.getPosition().getPoint().getZ() + ), + protoSensPosEvent.getPosition().getAccuracy(), + DataServices.getReferenceSystemByIdOrNull(protoSensPosEvent.getPosition().getRefSystemId()) + + ), + IPos2protoTransformer.createOrientation( + protoSensPosEvent.getOrientation().getX(), + protoSensPosEvent.getOrientation().getY(), + protoSensPosEvent.getOrientation().getZ(), + protoSensPosEvent.getOrientation().getW() + ) + )); + return positionEvent; + } + + public static NFC nfc_GSensor2Internal(GenericSensor.NFCRawDataEvent proto_nfcRawdataEvent) { + NFC internal_nfcRawdataEvent = modelFactory.createNFC(); + // internal_nfcRawdataEvent.setTimeStamp(proto_nfcRawdataEvent.getTimestamp()); + + // fake nfc-timestamp (queube could not provide millisecond-accuracy as it relies on time server) + internal_nfcRawdataEvent.setTimeStamp(LocalDateTime.now() + "+00:00"); // suffix necessary to be parsable by DateTimeFormatter.ISO_OFFSET_DATE_TIME + internal_nfcRawdataEvent.setTagId(proto_nfcRawdataEvent.getTagId()); + internal_nfcRawdataEvent.setScannerId(proto_nfcRawdataEvent.getScannerId()); + internal_nfcRawdataEvent.setType(proto_nfcRawdataEvent.getType()); + internal_nfcRawdataEvent.setTagData(convertToStringToObjectMap(proto_nfcRawdataEvent.getTagDataMap())); + return internal_nfcRawdataEvent; + } + + private static Map<String, Object> convertToStringToObjectMap(Map<String, String> inputMap) { + Map<String,Object> outputMap =new HashMap<String,Object>(); + for (Map.Entry<String, String> entry : inputMap.entrySet()) { + if(entry.getValue() != null){ + outputMap.put(entry.getKey(), (Object) entry.getValue()); + } + } + return outputMap; + } + + public static IMU imu_GSensor2Internal(GenericSensor.IMURawDataEvent proto_imuRawDataEvent) { + IMU internal_imuRawDataEvent = modelFactory.createIMU(); + internal_imuRawDataEvent.setTimeStamp(proto_imuRawDataEvent.getTimestamp()); + internal_imuRawDataEvent.setSensorId(proto_imuRawDataEvent.getSensorId()); + Acceleration internal_acceleration = modelFactory.createAcceleration(); + internal_acceleration.setX(proto_imuRawDataEvent.getX()); + internal_acceleration.setY(proto_imuRawDataEvent.getY()); + internal_acceleration.setZ(proto_imuRawDataEvent.getZ()); + internal_imuRawDataEvent.setAcceleration(internal_acceleration); + Quaternion orientation = IPos2protoTransformer.createOrientation(proto_imuRawDataEvent.getOrientation().getX(), + proto_imuRawDataEvent.getOrientation().getY(), + proto_imuRawDataEvent.getOrientation().getZ(), + proto_imuRawDataEvent.getOrientation().getW()); + internal_imuRawDataEvent.setAngularrate(orientation); + return internal_imuRawDataEvent; + } + + public static UWB uwb_GSensor2Internal(GenericSensor.UWBRawDataEvent proto_uwbRawDataEvent) { + UWB internal_btRawDataEvent = modelFactory.createUWB(); + // UWB adds nothing to Beacon, so all we do here is using the function for the transformation of the Beacon-specific properties + internal_btRawDataEvent = beacon_GSensor2Internal(internal_btRawDataEvent, proto_uwbRawDataEvent.getTimestamp(), proto_uwbRawDataEvent.getSensorId(), proto_uwbRawDataEvent.getDistancesMap(), proto_uwbRawDataEvent.getType()); + return internal_btRawDataEvent; + } + + private static Map<String, Double> convertToStringToDoubleMap(Map<String, String> distancesMap) throws NumberFormatException { + Map<String,Double> outputMap =new HashMap<String,Double>(); + for (Map.Entry<String, String> entry : distancesMap.entrySet()) { + if(entry.getValue() != null){ + outputMap.put(entry.getKey(), Double.parseDouble(entry.getValue())); + } + } + return outputMap; + + } + + public static IPosUWBEvent uwb_internal2IPosRawdata(UWB beaconRawdataEvent, String agentId, String agentType) { + IPosUWBEvent iPosUWBEvent = devKitFactory.createIPosUWBEvent(); + iPosUWBEvent.setAgentId(agentId); + iPosUWBEvent.setSensorId(beaconRawdataEvent.getSensorId()); + iPosUWBEvent.setAgentType(agentType); + iPosUWBEvent.setSensorType(beaconRawdataEvent.getType()); + iPosUWBEvent.setTimeStamp(beaconRawdataEvent.getTimeStamp()); + iPosUWBEvent.setDistances(beaconRawdataEvent.getDistances()); + return iPosUWBEvent; + } + + public static IPosBTEvent bt_internal2IPosRawdata(Bluetooth btRawdataEvent, String agentId, String agentType) { + IPosBTEvent iPosBTEvent = devKitFactory.createIPosBTEvent(); + iPosBTEvent.setAgentId(agentId); + iPosBTEvent.setSensorId(btRawdataEvent.getSensorId()); + iPosBTEvent.setAgentType(agentType); + iPosBTEvent.setSensorType(btRawdataEvent.getType()); + iPosBTEvent.setTimeStamp(btRawdataEvent.getTimeStamp()); + iPosBTEvent.setDistances(btRawdataEvent.getDistances()); + iPosBTEvent.setRss(btRawdataEvent.getRss()); + return iPosBTEvent; + } + + private static Map<String, String> beaconRawdataMap_internal2GSensor(Map<String, Double> distances) { + HashMap<String, String> distancesGSensor = new HashMap<>(); + for (Map.Entry<String, Double> distanceEntry : distances.entrySet()){ + distancesGSensor.put(distanceEntry.getKey(), String.valueOf(distanceEntry.getValue().doubleValue())); + } + return distancesGSensor; + } + + public static GenericSensor.IPosUWBEvent uwb_IPosRawdata2proto(IPosUWBEvent iPosUWBEvent_internal) { + GenericSensor.IPosUWBEvent.Builder protoIPosUWBEvent = GenericSensor.IPosUWBEvent.newBuilder(); + protoIPosUWBEvent.setAgentId(iPosUWBEvent_internal.getAgentId()); + protoIPosUWBEvent.setSensorId(iPosUWBEvent_internal.getSensorId()); + protoIPosUWBEvent.setAgentType(iPosUWBEvent_internal.getAgentType()); + protoIPosUWBEvent.setSensorType(iPosUWBEvent_internal.getSensorType()); + protoIPosUWBEvent.setTimeStamp(iPosUWBEvent_internal.getTimeStamp()); + protoIPosUWBEvent.putAllDistances(beaconRawdataMap_internal2GSensor(iPosUWBEvent_internal.getDistances())); + return protoIPosUWBEvent.build(); + } + + public static GenericSensor.IPosBTEvent bt_IPosRawdata2proto(IPosBTEvent iPosBTEvent_internal) { + GenericSensor.IPosBTEvent.Builder protoIPosBTEvent = GenericSensor.IPosBTEvent.newBuilder(); + protoIPosBTEvent.setAgentId(iPosBTEvent_internal.getAgentId()); + protoIPosBTEvent.setSensorId(iPosBTEvent_internal.getSensorId()); + protoIPosBTEvent.setAgentType(iPosBTEvent_internal.getAgentType()); + protoIPosBTEvent.setSensorType(iPosBTEvent_internal.getSensorType()); + protoIPosBTEvent.setTimeStamp(iPosBTEvent_internal.getTimeStamp()); + protoIPosBTEvent.putAllDistances(beaconRawdataMap_internal2GSensor(iPosBTEvent_internal.getDistances())); + protoIPosBTEvent.putAllRss(beaconRawdataMap_internal2GSensor(iPosBTEvent_internal.getRss())); + return protoIPosBTEvent.build(); + } + + public static GenericSensor.IPosRawdataEventWrapper uwb_wrapIntoRawdataEventWrapper(GenericSensor.IPosUWBEvent iPosUWBEvent_proto) { + GenericSensor.IPosRawdataEventWrapper.Builder iPosRawdataEventWrapper_proto = GenericSensor.IPosRawdataEventWrapper.newBuilder(); + iPosRawdataEventWrapper_proto.addIPosUWBEvent(iPosUWBEvent_proto); + return iPosRawdataEventWrapper_proto.build(); + } + + public static GenericSensor.IPosRawdataEventWrapper bt_wrapIntoRawdataEventWrapper(GenericSensor.IPosBTEvent iPosBTEvent_proto) { + GenericSensor.IPosRawdataEventWrapper.Builder iPosRawdataEventWrapper_proto = GenericSensor.IPosRawdataEventWrapper.newBuilder(); + iPosRawdataEventWrapper_proto.addIPosBTEvent(iPosBTEvent_proto); + return iPosRawdataEventWrapper_proto.build(); + } + + public static Bluetooth bt_GSensor2Internal(GenericSensor.BluetoothRawDataEvent proto_bluetoothRawDataEvent) { + Bluetooth internal_btRawDataEvent = modelFactory.createBluetooth(); + internal_btRawDataEvent = beacon_GSensor2Internal(internal_btRawDataEvent, proto_bluetoothRawDataEvent.getTimestamp(), proto_bluetoothRawDataEvent.getSensorId(), proto_bluetoothRawDataEvent.getDistancesMap(), proto_bluetoothRawDataEvent.getType()); + internal_btRawDataEvent.setRss(convertToStringToDoubleMap(proto_bluetoothRawDataEvent.getRssMap())); + return internal_btRawDataEvent; + } + + private static <T extends Beacon> T beacon_GSensor2Internal(T internal_beaconRawDataEvent, String timestamp, String sensorId, Map<String, String> distances, String type){ + internal_beaconRawDataEvent.setTimeStamp(timestamp); + internal_beaconRawDataEvent.setDistances(convertToStringToDoubleMap(distances)); + internal_beaconRawDataEvent.setType(type); + internal_beaconRawDataEvent.setSensorId(sensorId); + return internal_beaconRawDataEvent; + } +} + + diff --git a/src/main/java/ipos/project/SensorValueIntegration/api/MqttPositionHandler.java b/src/main/java/ipos/project/SensorValueIntegration/api/MqttPositionHandler.java index 900e8bdee1946ee97cbe6fa23c806580840400ae..e6f492767b20970cce26e36031d0ab7b833b2b01 100644 --- a/src/main/java/ipos/project/SensorValueIntegration/api/MqttPositionHandler.java +++ b/src/main/java/ipos/project/SensorValueIntegration/api/MqttPositionHandler.java @@ -1,22 +1,28 @@ package ipos.project.SensorValueIntegration.api; import com.google.protobuf.InvalidProtocolBufferException; -import ipos.models.SimpleScene.IposPosition; +import ipos.models.GenericSensor; +import ipos.models.GenericSensor.SensorPositionEvent; +import ipos.models.GenericSensor.SensorEventWrapper; +import ipos.project.DataModellntegration.iPos_Datamodel.*; +import ipos.project.SensorValueIntegration.Service.GenericSensorTransformer; +import ipos.project.UseCaseController.PositionMonitoring; import ipos.project.config.mqtt.Handler; import ipos.project.config.mqtt.MqttListener; -import ipos.project.mapper.ProtoJsonMap; +import ipos.project.devkit.utility.ProtoJsonMap; +import org.apache.logging.log4j.LogManager; import org.eclipse.paho.client.mqttv3.MqttMessage; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.jms.core.JmsTemplate; +import java.util.List; + // subscribe to the topic -@MqttListener("test51/publish/positions") +@MqttListener("usertopic/SensorEventWrapper") public class MqttPositionHandler implements Handler { - private final Logger LOG = LoggerFactory.getLogger(getClass()); + private static org.apache.logging.log4j.Logger LOG = LogManager.getLogger(); JmsTemplate jmsTemplate; @Autowired @@ -24,18 +30,96 @@ public class MqttPositionHandler implements Handler { this.jmsTemplate = jmsTemplate; } + static boolean iposFrameworkIsInitialized = false; + + public static void setInitialized(boolean b) { + iposFrameworkIsInitialized = b; + } + + // @Autowired + // private ExternalPubServiceImpl mqttService; + // method that handle new message from the topic public void handle(MqttMessage message) { try { - IposPosition pos = ProtoJsonMap.fromJson(message.toString(), IposPosition.class); - //IposPosition pos = IposPosition.parseFrom(message.toString().getBytes()); - assert pos != null; - LOG.info("IposPosition received: \n" + pos); + if (! iposFrameworkIsInitialized){ + return; + } + SensorEventWrapper protoSensEventWrapper = ProtoJsonMap.fromJson(message.toString(), GenericSensor.SensorEventWrapper.class); + handleSensorEventWrapper(protoSensEventWrapper); + } catch (InvalidProtocolBufferException e) { + LOG.error("Invalid mqtt message:", e); + } + } + + public static void handleSensorEventWrapper(GenericSensor.SensorEventWrapper iposSensorEventWrapper) { + LOG.info("IposSensorEventWrapper received: \n" + + iposSensorEventWrapper.toString()); + // Annahme: iposSensorEventWrapper enthält für leere Felder leere Listen und nicht null + processBluetoothEvents(iposSensorEventWrapper.getBluetoothRawDataEventList()); + processPositionEvents(iposSensorEventWrapper.getSensorPositionEventList()); + processNFCRawdataEvents(iposSensorEventWrapper.getNfcRawDataEventList()); + processIMURawdataEvents(iposSensorEventWrapper.getImuRawDataEventList()); + processUWBRawdataEvents(iposSensorEventWrapper.getUwbRawDataEventList()); + // this.jmsTemplate.convertAndSend("/request123", monReqInternal); // submit request to the internal broker + } + + private static void processBluetoothEvents(List<GenericSensor.BluetoothRawDataEvent> bluetoothRawDataEventList) { + for ( GenericSensor.BluetoothRawDataEvent proto_bluetoothRawDataEvent : bluetoothRawDataEventList){ + Bluetooth btEvent_beacon; + try { + btEvent_beacon = GenericSensorTransformer.bt_GSensor2Internal(proto_bluetoothRawDataEvent); + }catch(NumberFormatException e){ + LOG.info("Warning: Received BT-rawdata that contained ill-formatted distance or rss information"); + continue; + } + PositionMonitoring.receiveMessage((Beacon) btEvent_beacon); + } + } + + private static void processUWBRawdataEvents(List<GenericSensor.UWBRawDataEvent> uwbRawDataEventList) { + for (GenericSensor.UWBRawDataEvent proto_uwbRawDataEvent : uwbRawDataEventList){ + UWB internal_uwbRawDataEvent; + try { + internal_uwbRawDataEvent = GenericSensorTransformer.uwb_GSensor2Internal(proto_uwbRawDataEvent); + }catch (NumberFormatException e){ + LOG.info("Warning: Received UWB-rawdata that contained ill-formatted distance information"); + continue; + } + PositionMonitoring.receiveMessage(internal_uwbRawDataEvent); + } + + } + + private static void processIMURawdataEvents(List<GenericSensor.IMURawDataEvent> imuRawDataEventList) { + for (GenericSensor.IMURawDataEvent proto_imuRawDataEvent : imuRawDataEventList){ + IMU internal_imuRawDataEvent = GenericSensorTransformer.imu_GSensor2Internal(proto_imuRawDataEvent); + + + // JMS-topic: imu_rawdata_event + PositionMonitoring.receiveMessage(internal_imuRawDataEvent); + } + } + + private static void processNFCRawdataEvents(List<GenericSensor.NFCRawDataEvent> nfcRawDataEventList) { + for (GenericSensor.NFCRawDataEvent proto_nfcRawdataEvent : nfcRawDataEventList){ + // transformer fakes nfc-timestamp... + NFC internal_nfcRawDataEvent = GenericSensorTransformer.nfc_GSensor2Internal(proto_nfcRawdataEvent); + PositionMonitoring.receiveMessage(internal_nfcRawDataEvent); + } + } - this.jmsTemplate.convertAndSend("/positions", pos); // submit position to the internal broker + private static void processPositionEvents(List<SensorPositionEvent> sensorPositionEventList) { + // assert sensorPositionEventList != null; + for (GenericSensor.SensorPositionEvent proto_sensPosEvent : sensorPositionEventList){ + PositionEvent positionEvent = GenericSensorTransformer.posEvent_GSensor2Internal(proto_sensPosEvent); + LOG.info("SensorValueIntegration: Transformed Protobuf-SensorPositionEvent into Internal-PositionEvent: " + positionEvent.toString() + ", " + positionEvent.getPlacing().getPosition().getPoint().toString() + ", " + positionEvent.getPlacing().getOrientation().toString()); + + // vorübergehend: anstatt JMS einfach den PositionMonitoringController per Funktionsaufruf aufrufen + PositionMonitoring.receiveMessage(positionEvent); + // jmsTemplate.convertAndSend("/PositionEvent", protoSensPosEvent); // submit position to the internal broker //TODO: fix message converter for the internal broker - } catch (InvalidProtocolBufferException e) { - LOG.error("Invalid mqtt message:", e); } } + } diff --git a/src/main/java/ipos/project/UseCaseController/Administration.java b/src/main/java/ipos/project/UseCaseController/Administration.java new file mode 100644 index 0000000000000000000000000000000000000000..a574f3ca2ea3f587347a882d39cb8dab7bfffe8f --- /dev/null +++ b/src/main/java/ipos/project/UseCaseController/Administration.java @@ -0,0 +1,189 @@ +package ipos.project.UseCaseController; + +import ipos.project.DataModellntegration.iPos_Datamodel.*; +import ipos.project.Functionality.DataServices; +import ipos.project.Functionality.SRSConversion.SRSConversion; +import org.apache.logging.log4j.LogManager; +import org.springframework.stereotype.Component; + +import java.util.Collection; +import java.util.LinkedList; +import java.util.List; +import java.util.stream.Collectors; + + +@Component +public class Administration { + private static org.apache.logging.log4j.Logger LOG = LogManager.getLogger(); + + public Administration(){} + + public static void initialize(){ + LOG.info("Application initialized"); + DataServices.clearWorldModel(); + } + + public static void handleZone(Zone zone){ + LOG.info("handling zone-object: " + zone.toString()); + Administration.transformToRootCoordinates(zone); // transformation is necessary, EventFilter should have to evaluate ROOT-Positions, therefore both, the PositionEvents and the Space-CentrePoint, should have RootPositions. + DataServices.addZone(zone); + } + + public static void handleAgent(Agent agent) { + LOG.info("handling agent-object: " + agent.toString()); + DataServices.addAgent(agent); + } + + public static void handleRefSystem(ReferenceSystem refSystem) { + // muss checken, ob das RefSystem auf das ggf. verwiesen wird - tatsächlich existiert. Falls nicht: Speicherung ablehnen + LOG.info("handling refSystem-object: " + refSystem.toString()); + //this would delete the SRS-information of the refSystem-object and transform its origin into ROOT-SRS: Administration.transformToRootCoordinates(refSystem); + // nur sicherstellen das alle Bezugssysteme wirklich existieren + DataServices.addRefSystem(refSystem); + } + + public static void handlePoi(POI poi) { + // muss checken, ob das RefSystem auf das verwiesen wird - tatsächlich existiert. Falls nicht: Speicherung ablehnen + LOG.info("handling poi-object: " + poi.toString()); + LOG.info("INDFRO-DEBUG: SRS of poi-object: " + poi.getPlacing().getPosition().getReferenceSystem().getId()); + Administration.transformToRootCoordinates(poi); + DataServices.addPoi(poi); + } + + public static void transformToRootCoordinates(PositionEvent posEvent) { + LOG.info("INDFRO-DEBUG: Handling PositionEvent-object. SRS: " + posEvent.getPlacing().getPosition().getReferenceSystem().getId()); + Administration.transformToRootCoordinates(posEvent.getPlacing()); + } + + public static void transformToRootCoordinates(Zone zone) { + zone.getSpace().stream() + .map(Administration::transformToRootCoordinates); + } + + public static Space transformToRootCoordinates(Space space) { + LOG.info("INDFRO-DEBUG: Handling space-object. SRS: " + space.getCentrePoint().getPosition().getReferenceSystem().getId()); + Administration.transformToRootCoordinates(space.getCentrePoint()); + return space; + } + + public static void transformToRootCoordinates(ReferenceSystem refSystem) { + LOG.info("INDFRO-DEBUG: Transforming refSystem-object " + refSystem.toString() + "to ROOT-SRS"); + Administration.transformToRootCoordinates(refSystem.getOrigin()); + } + + public static void transformToRootCoordinates(POI poi) { + Administration.transformToRootCoordinates(poi.getPlacing()); + } + + /** + * Function recursively transforms a placing into a ROOT-placing. In each step the placing + * is transformed in a placing of the SRS that the origin of its current SRS has been defined + * in. Recursion is stopped after obtaining a ROOT-placing. + * @param placingToBeTransformed + */ + public static void transformToRootCoordinates(Placing placingToBeTransformed) { + if (isNotRootPosition(placingToBeTransformed.getPosition())) { + ReferenceSystem nextTransformationGoal_SRS = placingToBeTransformed.getPosition().getReferenceSystem(); + LOG.info("INDFRO-DEBUG: (before) ReferenceSystem: " + placingToBeTransformed.getPosition().getReferenceSystem().getId() + "; Position: " + PositionMonitoring.logPosition(placingToBeTransformed) + "; Orientation: " + PositionMonitoring.logOrientation(placingToBeTransformed)); + SRSConversion.switchSRS(placingToBeTransformed, nextTransformationGoal_SRS); // assumption: not only position is changed but also ReferenceSystem-object of the placingToBeTransformed is updated + LOG.info("INDFRO-DEBUG: (after) ReferenceSystem: " + placingToBeTransformed.getPosition().getReferenceSystem().getId() + "; Position: " + PositionMonitoring.logPosition(placingToBeTransformed) + "; Orientation: " + PositionMonitoring.logOrientation(placingToBeTransformed)); + LOG.info("INDFRO-DEBUG:"); + transformToRootCoordinates(placingToBeTransformed); // recursion stops when placing.getPosition() has been transformed in a ROOT-position + } + } + + public static void transformToRootCoordinates(Position position) { + LOG.info("INDFRO-DEBUG: Transforming Position-object " + position.toString() + "to ROOT-SRS"); + Orientation dummyOrientation = createDummyOrientation(); + Placing placing = DataServices.createPlacing(position, dummyOrientation); + transformToRootCoordinates(placing); // placing.getPosition() points to the position-object that was passed to this function. The contents of this object will be changed by this call. + } + + private static Orientation createDummyOrientation() { + return DataServices.createOrientation(0, 0, 0, 0); + } + + private static boolean isRootPosition(Position position) { + return !isNotRootPosition(position); + } + + private static boolean isRootPosition(String srsId){ + return !isNotRootPosition(srsId); + } + + private static boolean isNotRootPosition(Position position) { + return isNotRootPosition(position.getReferenceSystem().getId()); + } + + private static boolean isNotRootPosition(String srsId){ + return !srsId.equals(PositionMonitoring.SRS_ID_ROOT); + } + + /** + * Warning: This function does not check whether SRSConversion is actually necessary. + * Use function Administration::isNotRootPosition to check whether SRSConversion is necessary, + * before calling this function + * @param orientation + + public static void transformToRootCoordinates(Position position, Orientation orientation) { + // Komponente SRSConversion aufrufen + + SRSConversion.switchSRS(rootPlacing, DataServices.getReferenceSystemByIdOrNull("CeTI_SRS")); + SRSConversion.switchSRS(cetiPlacing, DataServices.getReferenceSystemByIdOrNull("CeTI_SRS")); + } + */ + + /** + * This function expects the position posEvent to be defined in reference to the ROOT-SRS + * @param posEvent + * @param refSystemId + */ + public static void transformToRequesterCoordinates(PositionEvent posEvent, String refSystemId) { + if(! posEvent.getPlacing().getPosition().getReferenceSystem().getId().equals(PositionMonitoring.SRS_ID_ROOT)){ + LOG.warn("INDFRO-DEBUG: Warning: Function transformToRequesterCoordinates was called with a position that is not defined in reference to the ROOT-SRS. " + + "All internal data processing should be based on ROOT-positions."); + return; + } + if(isRootPosition(refSystemId)){ + return; // nothing to be done if ROOT is the transformation target, as posEvent is assumed to be a ROOT-position + } + ReferenceSystem finalTarget = DataServices.getReferenceSystemByIdOrNull(refSystemId); + Placing placingToBeTransformed = posEvent.getPlacing(); + LOG.info("INDFRO-DEBUG: transformToRequesterCoordinates: Transforming posEvent (SRS: " + placingToBeTransformed.getPosition().getReferenceSystem().getId() +" ) to requester coordinates (SRS: " + refSystemId + ")"); + List<ReferenceSystem> allTargetsFromRootToFinal = computeTargets(finalTarget); + LOG.info("INDFRO-DEBUG: Transformation targets (excluding " + PositionMonitoring.SRS_ID_ROOT + "): " + printTargets(allTargetsFromRootToFinal)); + transformPlacingSuccessively(placingToBeTransformed, allTargetsFromRootToFinal); + } + + private static String printTargets(List<ReferenceSystem> allTargetsFromRootToFinal) { + return allTargetsFromRootToFinal.stream() + .map(srs -> srs.getId()) + .collect(Collectors.joining(" -> ")); + } + + /** + * Assumption: Sooner or later each target depends on ROOT-SRS + * @param target + * @return + */ + private static List<ReferenceSystem> computeTargets(ReferenceSystem target) { + if (isRootPosition(target.getId())){ + List<ReferenceSystem> targets = new LinkedList<>(); + return targets; // ROOT-SRS itself is not a target, therefore it is not added to the list + }else { + ReferenceSystem nextTarget = target.getOrigin().getPosition().getReferenceSystem(); + List<ReferenceSystem> targets = computeTargets(nextTarget); + targets.add(target); // targets[0]: the SRS that the ROOT-position should be transformed into; targets[targets.size()-1]: final target, i.e., requester-SRS + return targets; + } + + } + + private static void transformPlacingSuccessively(Placing placingToBeTransformed, List<ReferenceSystem> transformationTargets) { + for (ReferenceSystem transTarget : transformationTargets){ + LOG.info("INDFRO-DEBUG: (before) ReferenceSystem: " + placingToBeTransformed.getPosition().getReferenceSystem().getId() + "; Position: " + PositionMonitoring.logPosition(placingToBeTransformed) + "; Orientation: " + PositionMonitoring.logOrientation(placingToBeTransformed)); + SRSConversion.switchSRS(placingToBeTransformed, transTarget); + LOG.info("INDFRO-DEBUG: (after) ReferenceSystem: " + placingToBeTransformed.getPosition().getReferenceSystem().getId() + "; Position: " + PositionMonitoring.logPosition(placingToBeTransformed) + "; Orientation: " + PositionMonitoring.logOrientation(placingToBeTransformed)); + } + } +} diff --git a/src/main/java/ipos/project/UseCaseController/PositionMonitoring.java b/src/main/java/ipos/project/UseCaseController/PositionMonitoring.java index 88a84405b0f26bf65943970eb08515bef9654339..a885091d32e2fdd0a92e26703f5c3210bf5512a2 100644 --- a/src/main/java/ipos/project/UseCaseController/PositionMonitoring.java +++ b/src/main/java/ipos/project/UseCaseController/PositionMonitoring.java @@ -1,18 +1,691 @@ package ipos.project.UseCaseController; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; +import ipos.project.DataModellntegration.SimpleSceneIntegration.SimpleSceneIntegration; +import ipos.project.DataModellntegration.iPos_Datamodel.*; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.DataStorageQueryRequest; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitFactory; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposMsgRcvEvent; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest; +import ipos.project.Functionality.*; +import ipos.project.Functionality.eventfilter.*; +import ipos.project.Functionality.eventfilter.BeaconFilteringResult; +import ipos.project.SensorValueIntegration.GenericSensorValueProcessor; +import ipos.project.devkit.trans.IPos2protoTransformer; +import org.apache.logging.log4j.LogManager; import org.springframework.jms.annotation.JmsListener; import org.springframework.stereotype.Component; -import ipos.models.SimpleScene.IposPosition; + +import java.text.ParseException; +import java.time.LocalDateTime; +import java.util.*; +import java.util.stream.Collectors; @Component public class PositionMonitoring { - private final Logger LOG = LoggerFactory.getLogger(getClass()); + private static org.apache.logging.log4j.Logger LOG = LogManager.getLogger(); + + private static List<eventFilter> eventFilters = new ArrayList<eventFilter>(); + private static Map<String, List<String>> zonePopulation = new HashMap<String, List<String>>(); // maps zone-ids to list of ids of those agents that are currently located within that zone. + private static IPos_DatamodelFactory modelFactory = IPos_DatamodelFactory.eINSTANCE; + private static IPosDevKitFactory devKitFactory = IPosDevKitFactory.eINSTANCE; + + //TODO: Constant-definitions shall be migrated to a dedicated component. Otherwise, avoidable dependencies are created among PositionMonitoring and the other components + public static final String EXIT_NOTIFICATION_TYPE = "ExitNotification"; + public static final String ENTRY_NOTIFICATION_TYPE = "EntryNotification"; + public static final String UNDEFINED_TYPE = "undefined"; + public static final String PROTOBUF_SERIALIZATION_TYPE = "protobuf"; + public static final String JSON_SERIALIZATION_TYPE = "json"; + public static final String ACCURACY_FUSION_STRATEGY = "accuracy"; + public static final String TRACKING_SUFFIX = "_tracking"; + public static final String TOPIC_ConfigWrapper = "usertopic/IposConfigWrapper"; + public static final String TOPIC_DOOR = "Human_at_Door_Side"; + public static final String TOPIC_WINDOW = "Human_at_Window_Side"; + public static final String ZONE_ID_DOOR = "cobot1_door_zone"; + public static final String ZONE_ID_WINDOW = "cobot1_window_zone"; + public static final String SRS_ID_ROOT = "ROOT"; + + public static final int SDF_TIME_INTERVAL = 2500; // recent milliseconds to take into account for sensor data fusion + + public PositionMonitoring(){} + + public static void receiveMessage(NFC nfcRawDataEvent) { + PositionEvent positionEvent = PositionCalculation.calcPositionFromNfcOrNull(nfcRawDataEvent); + if (positionEvent != null) { + updateLocalizableObject(positionEvent); + try { + Odometry.calibrate(positionEvent); + } catch (ParseException e) { + LOG.warn("Odometry-component could not be calibrated"); + e.printStackTrace(); + } + receiveMessage(positionEvent); + } + } + + public static void receiveMessage (Beacon beaconRawDataEvent){ + // currently we only filter rawdata on beacon-level. Position calculation is performed on the level of the specific beacon technology (e.g., UWB) + // calculateAndProcessPosition(uwbRawDataEvent); + List<BeaconFilteringResult> beaconFilteringResults = filterRawdata(beaconRawDataEvent); + processBeaconFilteringResults(beaconFilteringResults); + } + + public static void receiveMessage (UWB uwbRawDataEvent){ + calculateAndProcessPosition(uwbRawDataEvent); + List<BeaconFilteringResult> beaconFilteringResults = filterRawdata((Beacon) uwbRawDataEvent); + processBeaconFilteringResults(beaconFilteringResults); + } + + private static void calculateAndProcessPosition(UWB uwbRawDataEvent) { + Optional<PositionEvent> optionalPositionEvent = Optional.empty(); + try { + optionalPositionEvent = Triangulation.update(uwbRawDataEvent); + // optionalPositionEvent = PositionCalculation.updateUWBPositionFromDistances(uwbRawDataEvent); + // = PositionCalculation.updateBTDistancesFromRSS( + } catch (ParseException e) { + e.printStackTrace(); + } + if (optionalPositionEvent.isPresent()) { + PositionEvent positionEvent = optionalPositionEvent.get(); + LOG.info("OP:"); + LOG.info("OP:"); + LOG.info("OP:"); + LOG.info("OP:----PositionMonitoring--------------------------"); + LOG.info("OP: position: " + logPosition(positionEvent.getPlacing())); + updateLocalizableObject(positionEvent); + receiveMessage(positionEvent); + }else { + LOG.info("OP: No position could be calculated from UWBRawDataEvent"); + } + } + + private static void processBeaconFilteringResults(List<BeaconFilteringResult> beaconFilteringResults) { + for (BeaconFilteringResult beaconFilteringResult : beaconFilteringResults){ + if (beaconFilteringResult.hasBlockedEvent()){ // don't publish Beacon-rawdata on behalf of an eventFilter that has blocked the event + continue; + } + eventFilter eFilter = getEventFilterByIdOrNull(beaconFilteringResult.getMonitoringTaskId()); + + LocalizableObject lObject = PositionMonitoring.getLObjectByIdOrNull(beaconFilteringResult.getBeaconRawdataEvent().getSensorId()); + if (null == lObject || null == lObject.getAgent()) { + LOG.error("Internal Beacon-Rawdata Event could not be transformed into IPos Rawdata-Event " + + "No LocalizableObject with the provided sensor-id could be found, or no agent " + + "is associated to the LocalizableObject that has been found."); + return; + } + GenericSensorValueProcessor.receiveMessage(beaconFilteringResult.getBeaconRawdataEvent(), beaconFilteringResult.getMonitoringTaskId(), eFilter.getSerializationType(), lObject.getAgent().getId(), lObject.getAgent().getAgentType()); + } + } + + private static List<BeaconFilteringResult> filterRawdata(Beacon beaconRawDataEvent) { + List<BeaconFilteringResult> beaconFilteringResults = new LinkedList<BeaconFilteringResult>(); + for (eventFilter eFilter : eventFilters){ + beaconFilteringResults.add(eFilter.processRawdata(beaconRawDataEvent)); + } + return beaconFilteringResults; + } + + static int imuCount = 0; + + // JMS-topic: imuRawdataEvent + public static void receiveMessage(IMU imuRawdataEvent){ + + PositionEvent positionEvent = null; // if not calibrated: exception + try { + positionEvent = Odometry.update(imuRawdataEvent); + logOdo(positionEvent); + } catch (ParseException e) { + LOG.info("Odometry: ParseException: " + e.getMessage()); + } catch (MissingResourceException e){ + LOG.info("Odometry: " + e.getMessage()); + } + if (positionEvent != null) { + updateLocalizableObject(positionEvent); + if ( imuCount < 5) { + imuCount += 1; + }else { + receiveMessage(positionEvent); + imuCount = 0; + } + } + + + } + + private static void logOdo(PositionEvent positionEvent) { + float odoAccuracy = ((Gaussian) positionEvent.getPlacing().getPosition().getAccuracy()).getConfidenceInterval(); + LOG.info("ODO: Odometry calculated position with accuracy: " + odoAccuracy); + } + + private static eventFilter getEventFilterByIdOrNull(String monitoringTaskId){ + for (eventFilter eFilter : eventFilters){ + if (eFilter.getMonitoringTaskId().equals(monitoringTaskId)){ + return eFilter; + } + } + return null; + } + + private static void updateLocalizableObject(PositionEvent positionEvent) { + LocalizableObject lObject = DataServices.getLObjectByIdOrNull(positionEvent.getLObjectId()); + if (lObject == null){ + LOG.info("Warning: lObject not found. id contained in positionEvent: " + positionEvent.getLObjectId()); + } + // TODO: caution: all changes to the data model should be performed using DataServices. + // Directly changing this object just works for the current simple case that we only have the object-representation of the world model + // in general it has to be made sure that both, all links from this object and to this object keep intact + lObject.setCurrentPlacing(positionEvent.getPlacing()); + lObject.setLastPosUpdate(positionEvent.getTimeStamp()); + } - @JmsListener(destination = "/positions123", containerFactory = "jmsListenFactory") - public void receiveMessage(IposPosition pos) { - LOG.info("Received <" + pos + ">"); + private MonitoringRequest createMonitoringRequest(List<String> frameIds, String monitoringTaskId) { + MonitoringRequest monReq = devKitFactory.createMonitoringRequest(); + monReq.getFrameIds().addAll(frameIds); + monReq.setMonitoringTaskId(monitoringTaskId); + return monReq; + } + + public static LocalizableObject getLObjectByIdOrNull(String lObjectId){ + return DataServices.getLObjectByIdOrNull(lObjectId); + } + + public static ReferenceSystem getReferenceSystemByIdOrNull(String refSystemId){ + return DataServices.getReferenceSystemByIdOrNull(refSystemId); + } + + @JmsListener(destination = "/monitoringRequest", containerFactory = "jmsListenFactory") + public static void receiveMessage(MonitoringRequest monReq) { + LOG.info("Received MonitoringRequest <" + monReq + ">"); + eventFilter filter = new eventFilter(monReq); + EventFilterCondition config = createAndInitEventFilterCondition(); + if (! readConfig.readFilterConfigFromMonitoringRequest(monReq, config)){ + return; // monitoringRequest could not be read + } + filter.init(config); + eventFilters.add(filter); + LOG.info("EventFilter was created: " + filter.toString() + "; monitoringTaskId: " + filter.getMonitoringTaskId() + "; zone-ids:" + filter.getFilterConditionConfig().getPositionConditionCells().keySet() + "; property: " + new HashSet(filter.getFilterConditionConfig().getPropertyCondition())); + + /* + * trackingTaskId equals MonitoringTaskId + '_tracking' (which equals the name + * of the topic used for fetching the stored positions) to be able to + * distinguish the monitoring-topic from the tracking-topic. Therefore, the + * data should be stored using the altered name. The DataQueryRequest will also + * contain the suffix, therefore, we change the suffix here automatically. + */ + String trackingTaskId = monReq.getMonitoringTaskId() + PositionMonitoring.TRACKING_SUFFIX; + DataServices.initTrackingTask(trackingTaskId); + } + + private static EventFilterCondition createAndInitEventFilterCondition() { + EventFilterCondition config = modelFactory.createEventFilterCondition(); + config.setPositionConditionCells(new HashMap<>()); + config.setSensorIdCondition(new LinkedList<>()); + config.setPropertyCondition(new LinkedList<>()); + return config; + } + + private static boolean isDoor = false; + private static boolean isCentre = false; + private static boolean isWindow = false; + private static boolean firstMessage = true; + + + /** + * It is important to find out which zones should be actually reported to the requester + * (there may be other zones that overlap the ones that tha requester wanted to monitor or track) + * I think, we should make sure that using they key trackingTaskId only those positionEvents should be persisted + * that do actually have been accepted by the associated monitoringRequest (so, whose monitoringRequestId equals + * the trackingTaskId without "_tracking" at the end) + * @param dsQueryRequest + */ + public static void receiveMessage(DataStorageQueryRequest dsQueryRequest){ + if(! dsQueryRequest.getTrackingTaskId().endsWith(PositionMonitoring.TRACKING_SUFFIX)){ + LOG.warn("Can not handle QueryRequest due to unexpected trackingTaskId. " + + "TrackingTaskIds shall end with " + PositionMonitoring.TRACKING_SUFFIX); + return; + } + String trackingTaskId = dsQueryRequest.getTrackingTaskId(); + List<PositionEvent> trackedEvents = DataServices.query(dsQueryRequest.getTrackingTaskId()); + DataStorageQueryResponse dsQueryResponse = modelFactory.createDataStorageQueryResponse(); + dsQueryResponse.getPositionEvents().addAll(trackedEvents); + dsQueryResponse.setTrackingTaskId(trackingTaskId); + eventFilter eFilter = getEventFilterFromTrackingTaskId(trackingTaskId); + SimpleSceneIntegration.receiveMessage(dsQueryResponse, dsQueryRequest.getTrackingTaskId(), eFilter.getSerializationType()); + } + + private static eventFilter getEventFilterFromTrackingTaskId(String trackingTaskId) { + int lengthMonitoringTaskId = trackingTaskId.length() - PositionMonitoring.TRACKING_SUFFIX.length(); + String monitoringTaskId = trackingTaskId.substring(0, lengthMonitoringTaskId); + eventFilter eFilter = getEventFilterByIdOrNull(monitoringTaskId); + return eFilter; + } + + // @JmsListener(destination = "/PositionEvent", containerFactory = "jmsListenFactory") + public static void receiveMessage(PositionEvent posEvent) { + // TODO: Update currentPlacing attribute of the affected localizableObject + LOG.info("Received <" + posEvent + ">"); + logging_sdfindfro(posEvent); + Administration.transformToRootCoordinates(posEvent); + LOG.info("Position after transformation to ROOT-coordinates: " + posEvent.getPlacing().getPosition().toString()); + + boolean posEventMeetsSdfAccuracyCondition = SensorDataFusion.isMostAccuratePositionAvailable(posEvent); + List<PositionFilteringResult> positionFilteringResults = new LinkedList<>(); + for (eventFilter eFilter : eventFilters){ + try { + if (eFilterMayHandlePosEvent(posEvent, posEventMeetsSdfAccuracyCondition, eFilter)){ + positionFilteringResults.add(applyEfilterToPosEvent(posEvent, eFilter)); + } + } catch (ParseException e) { + processFilteringResults(posEvent, positionFilteringResults); + e.printStackTrace(); + return; + } + } + processFilteringResults(posEvent, positionFilteringResults); + LOG.info("INDFRO-DEBUG: zonePopulation after processing filtering results: " + zonePopulation.toString()); + } + + public static void receiveMessage(MessageReceivedEvent messageReceivedEvent) { + try { + _receiveMessage(messageReceivedEvent); + }catch (NullPointerException e){ + LOG.info("Could not process received message. " + e.getMessage()); + e.printStackTrace(); + } + } + + private static void _receiveMessage(MessageReceivedEvent messageReceivedEvent) { + for (eventFilter eFilter : eventFilters){ + applyEFilterToMessageReceivedEventAndProcessFilteringResult(messageReceivedEvent, eFilter); + } + } + + private static void applyEFilterToMessageReceivedEventAndProcessFilteringResult(MessageReceivedEvent messageReceivedEvent, eventFilter eFilter) { + MsgRcvFilteringResult msgRcvFilteringResult = eFilter.processMessageReceivedEvent(messageReceivedEvent); + if (msgRcvFilteringResult.hasBlockedEvent()){ + return; + }else{ + IposMsgRcvEvent iposMsgRcvEvent = createIposMsgRcvEvent(msgRcvFilteringResult); + LOG.info("VDA5050: Filter accepted MessageReceived event."); + LOG.info("VDA5050: Corresponding IposMsgRcvEvent: " + iposMsgRcvEvent.toString()); + SimpleSceneIntegration.receiveMessage(iposMsgRcvEvent, msgRcvFilteringResult.getMonitoringTaskId(), eFilter.getSerializationType()); + } + } + + private static IposMsgRcvEvent createIposMsgRcvEvent(MsgRcvFilteringResult msgRcvFilteringResult) { + LocalizableObject lObject = getLObjectAssociatedToMessageRcvFilteringEvent(msgRcvFilteringResult); + IposMsgRcvEvent iposMsgRcvEvent = extendMessageRcvFilteringEventToIposMsgRcvFilteringEvent(msgRcvFilteringResult, lObject); + return iposMsgRcvEvent; + } + + private static IposMsgRcvEvent extendMessageRcvFilteringEventToIposMsgRcvFilteringEvent(MsgRcvFilteringResult msgRcvFilteringResult, LocalizableObject lObject) { + IposMsgRcvEvent iposMsgRcvEvent = devKitFactory.createIposMsgRcvEvent(); + iposMsgRcvEvent.setProtocolName(msgRcvFilteringResult.getMessageReceivedEvent().getProtocolName()); + iposMsgRcvEvent.setSerializedMsg(msgRcvFilteringResult.getMessageReceivedEvent().getSerializedMsg()); + iposMsgRcvEvent.setAgentId(msgRcvFilteringResult.getMessageReceivedEvent().getAgentId()); + iposMsgRcvEvent.setExtractedAttributes(msgRcvFilteringResult.getMessageReceivedEvent().getExtractedAttributes()); + iposMsgRcvEvent.setTimestamp(msgRcvFilteringResult.getMessageReceivedEvent().getTimestamp()); + handleOptionalData(lObject, iposMsgRcvEvent); + iposMsgRcvEvent.getLastKnownZonedescriptors().addAll(createDescriptorsForZonesThatAgentIsCurrentlyLocatedIn(msgRcvFilteringResult)); + return iposMsgRcvEvent; + } + + private static void handleOptionalData(LocalizableObject lObject, IposMsgRcvEvent iposMsgRcvEvent) { + if (null != lObject.getCurrentPlacing() && null != lObject.getCurrentPlacing().getPosition()){ + iposMsgRcvEvent.setLastKnownPosition(lObject.getCurrentPlacing().getPosition()); + iposMsgRcvEvent.setLastPosUpdate(lObject.getLastPosUpdate()); + } + if (null != lObject.getCurrentPlacing() && null != lObject.getCurrentPlacing().getOrientation()){ + iposMsgRcvEvent.setLastKnownOrientation(lObject.getCurrentPlacing().getOrientation()); + } + } + + + private static List<ZoneDescriptor> createDescriptorsForZonesThatAgentIsCurrentlyLocatedIn(MsgRcvFilteringResult msgRcvFilteringResult) { + List<ZoneDescriptor> zoneDescriptors = new LinkedList<>(); + eventFilter eFilter = Objects.requireNonNull(getEventFilterByIdOrNull(msgRcvFilteringResult.getMonitoringTaskId()), "unknown monitoring-task-id: " + msgRcvFilteringResult.getMonitoringTaskId()); + Set<String> zoneIdsThatEFilterIsInterestedIn = eFilter.getFilterConditionConfig().getPositionConditionCells().keySet(); + for (String zoneId : zoneIdsThatEFilterIsInterestedIn){ + List<String> idsOfAgentsCurrentlyInZone = Optional.ofNullable(zonePopulation.get(zoneId)).orElse(new LinkedList<>()); + // Is the AGV that the Message originated from known to be currently located in that zone? + if(idsOfAgentsCurrentlyInZone.contains(msgRcvFilteringResult.getMessageReceivedEvent().getAgentId())){ + ZoneDescriptor zoneDescriptor = modelFactory.createZoneDescriptor(); + zoneDescriptor.setZoneId(zoneId); + zoneDescriptor.setNotificationType(UNDEFINED_TYPE); // notification type: Do we indicate with this message that a zone was left or entered? + zoneDescriptors.add(zoneDescriptor); + } + } + return zoneDescriptors; + } + + private static LocalizableObject getLObjectAssociatedToMessageRcvFilteringEvent(MsgRcvFilteringResult msgRcvFilteringResult) { + String agentId_whichEquals_sensorId = msgRcvFilteringResult.getMessageReceivedEvent().getAgentId(); + LocalizableObject lObject = getLObjectByIdOrNull(agentId_whichEquals_sensorId); + return Objects.requireNonNull(lObject, "Received message is associated to an unknown sensor-id: " + agentId_whichEquals_sensorId); + } + + private static void processFilteringResults(PositionEvent posEvent, List<PositionFilteringResult> positionFilteringResults) { + Map<String, List<ZoneDescriptor>> eFilterZoneDescriptors = translateResultsIntoZoneDescriptors(positionFilteringResults); + persistPositionEvent(posEvent, eFilterZoneDescriptors); + sendPositionEventToRequesters(posEvent, eFilterZoneDescriptors); + updateZoneAssociations(posEvent, eFilterZoneDescriptors); + updateLocalizableObject(posEvent); + } + + /** + * Assumption: The PositionEvent posEvent passed the eventFilter whose results are + * communicated by the zoneDescriptors. + * @param posEvent + * @param eFilterZoneDescriptors + */ + private static void sendPositionEventToRequesters(PositionEvent posEvent, Map<String, List<ZoneDescriptor>> eFilterZoneDescriptors) { + Set<String> sentAlready = sendExitNotifications(posEvent, eFilterZoneDescriptors); + sendOtherMonitoringMessages(posEvent, eFilterZoneDescriptors, sentAlready); + } + + private static void sendOtherMonitoringMessages(PositionEvent posEvent, Map<String, List<ZoneDescriptor>> eFilterZoneDescriptors, Set<String> sentAlready) { + // TODO: This code duplicates sendExitNotifications()-function + Set<String> toBeSent = eFilterZoneDescriptors.keySet().stream().collect(Collectors.toSet()); + toBeSent.removeAll(sentAlready); + for (String monitoringTaskId : toBeSent){ + List<ZoneDescriptor> zoneDescriptorsEFilterResult = eFilterZoneDescriptors.get(monitoringTaskId); + eventFilter eFilter = getEventFilterByIdOrNull(monitoringTaskId); + if (eFilter == null){ + LOG.warn("A monitoringTaskId was passed that is not associated to any known eventFilter"); + continue; + } + PositionEvent posEventCopy = createDeepCopyOfPosEvent(posEvent); + posEventCopy.getZonedescriptors().addAll(zoneDescriptorsEFilterResult); // ZoneDescriptors-Collection of PositionEvent was empty up until this point of execution + Administration.transformToRequesterCoordinates(posEventCopy, eFilter.getRefSystemId()); + SimpleSceneIntegration.receiveMessage(posEventCopy, monitoringTaskId, getFirstNotificationTypeOrUndefined(zoneDescriptorsEFilterResult), eFilter.getSerializationType()); + } + } + + private static Set<String> sendExitNotifications(PositionEvent posEvent, Map<String, List<ZoneDescriptor>> eFilterZoneDescriptors) { + // TODO: This code duplicates sendOtherNotifications()-function + Set<String> sentAlready = new HashSet<>(); + for (String monitoringTaskId : eFilterZoneDescriptors.keySet()){ + List<ZoneDescriptor> zoneDescriptorsEFilterResult = eFilterZoneDescriptors.get(monitoringTaskId); + eventFilter eFilter = getEventFilterByIdOrNull(monitoringTaskId); + if (eFilter == null){ + LOG.warn("A monitoringTaskId was passed that is not associated to any known eventFilter"); + continue; + } + if( containsExitNotification(zoneDescriptorsEFilterResult)){ + PositionEvent posEventCopy = createDeepCopyOfPosEvent(posEvent); + posEventCopy.getZonedescriptors().addAll(zoneDescriptorsEFilterResult); + Administration.transformToRequesterCoordinates(posEventCopy, eFilter.getRefSystemId()); + SimpleSceneIntegration.receiveMessage(posEventCopy, monitoringTaskId, getFirstNotificationTypeOrUndefined(zoneDescriptorsEFilterResult), eFilter.getSerializationType()); + sentAlready.add(monitoringTaskId); + } + } + return sentAlready; + } + + private static String getFirstNotificationTypeOrUndefined(List<ZoneDescriptor> zoneDescriptorsEFilterResult) { + String firstNotificationType = PositionMonitoring.UNDEFINED_TYPE; + if (zoneDescriptorsEFilterResult.size() > 0){ + firstNotificationType = zoneDescriptorsEFilterResult.get(0).getNotificationType(); + } + return firstNotificationType; + } + + private static boolean containsExitNotification(List<ZoneDescriptor> zoneDescriptorsEFilterResult) { + for (ZoneDescriptor zoneDescriptor : zoneDescriptorsEFilterResult){ + if (zoneDescriptor.getNotificationType().equals(PositionMonitoring.EXIT_NOTIFICATION_TYPE)){ + return true; + } + } + return false; + } + + private static void persistPositionEvent(PositionEvent posEvent, Map<String, List<ZoneDescriptor>> eFilterZoneDescriptors) { + for (String monitoringTaskId : eFilterZoneDescriptors.keySet()){ + List<ZoneDescriptor> zoneDescriptorsEFilterResult = eFilterZoneDescriptors.get(monitoringTaskId); + PositionEvent posEventCopy = createDeepCopyOfPosEvent(posEvent); + posEventCopy.getZonedescriptors().addAll(zoneDescriptorsEFilterResult); + DataServices.persist(posEventCopy, monitoringTaskId + PositionMonitoring.TRACKING_SUFFIX); + } + } + + /** + * Creates a shallow copy of the posEvent + * @param posEvent + * @return + */ + private static PositionEvent createDeepCopyOfPosEvent(PositionEvent posEvent) { + PositionEvent posEventDeepCopy = modelFactory.createPositionEvent(); + posEventDeepCopy.setPlacing(createDeepCopyOfPlacing(posEvent.getPlacing())); + posEventDeepCopy.setTimeStamp(posEvent.getTimeStamp()); + posEventDeepCopy.setLObjectId(posEvent.getLObjectId()); + return posEventDeepCopy; + } + + private static Placing createDeepCopyOfPlacing(Placing placingOriginal) { + Placing placingCopy = IPos2protoTransformer.createPlacing( + IPos2protoTransformer.createPosition( + IPos2protoTransformer.createPoint3D( + ((Point3D) placingOriginal.getPosition().getPoint()).getX(), + ((Point3D) placingOriginal.getPosition().getPoint()).getY(), + ((Point3D) placingOriginal.getPosition().getPoint()).getZ() + ), + ((Gaussian) placingOriginal.getPosition().getAccuracy()).getConfidenceInterval(), + DataServices.getReferenceSystemByIdOrNull(placingOriginal.getPosition().getReferenceSystem().getId()) + ), + IPos2protoTransformer.createOrientation( + ((Quaternion) placingOriginal.getOrientation()).getX(), + ((Quaternion) placingOriginal.getOrientation()).getY(), + ((Quaternion) placingOriginal.getOrientation()).getZ(), + ((Quaternion) placingOriginal.getOrientation()).getW() + ) + ); + return placingCopy; + } + + private static void updateZoneAssociations(PositionEvent posEvent, Map<String, List<ZoneDescriptor>> eFilterZoneDescriptors) { + String agentId = DataServices.getAgentForLocalizableObject(posEvent.getLObjectId()).getId(); + for (String monitoringTaskId : eFilterZoneDescriptors.keySet()){ + updateEfilterZoneAssociations(eFilterZoneDescriptors, agentId, monitoringTaskId); + } + + } + + private static void updateEfilterZoneAssociations(Map<String, List<ZoneDescriptor>> eFilterZoneDescriptors, String agentId, String monitoringTaskId) { + List<ZoneDescriptor> zoneDescriptorsEFilterResult = eFilterZoneDescriptors.get(monitoringTaskId); + for (ZoneDescriptor zoneDescriptor : zoneDescriptorsEFilterResult){ + if (zoneDescriptor.getNotificationType().equals(PositionMonitoring.ENTRY_NOTIFICATION_TYPE)){ + LOG.info("INDFRO-DEBUG: Associating agent " + agentId + " with zone " + zoneDescriptor.getZoneId()); + associateAgentWithZone(zoneDescriptor.getZoneId(), agentId); + } + if (zoneDescriptor.getNotificationType().equals(PositionMonitoring.EXIT_NOTIFICATION_TYPE)){ + LOG.info("INDFRO-DEBUG: Disassociating agent " + agentId + " from zone " + zoneDescriptor.getZoneId()); + disassociateAgentFromZone(zoneDescriptor.getZoneId(), agentId); + } + } + } + + /** + * ZoneDescriptors are provided for filteringResults that originated in eventFilters + * that rejected the event only if those ZoneDescriptors communicate an ExitNotification. + * @param positionFilteringResults + * @return + */ + private static Map<String, List<ZoneDescriptor>> translateResultsIntoZoneDescriptors(List<PositionFilteringResult> positionFilteringResults) { + Map<String, List<ZoneDescriptor>> eFilterzoneDescriptors = new HashMap<>(); + for (PositionFilteringResult positionFilteringResult : positionFilteringResults){ + String monitoringTaskId = positionFilteringResult.getMonitoringTaskId(); + List<ZoneDescriptor> zoneDescriptors = toZoneDescriptors(positionFilteringResult); + if (!positionFilteringResult.hasBlockedEvent()) { + eFilterzoneDescriptors.put(monitoringTaskId, zoneDescriptors); + }else{ + if (containsExitNotification(zoneDescriptors)){ + // send monitoring messages and persist even if the filter rejected the event, as it contains an ExitNotification for a monitored zone + eFilterzoneDescriptors.put(monitoringTaskId, zoneDescriptors); + } + } + } + return eFilterzoneDescriptors; + } + + private static List<ZoneDescriptor> toZoneDescriptors(PositionFilteringResult positionFilteringResult) { + List<ZoneDescriptor> zoneDescriptors = new LinkedList<>(); + zoneDescriptors.addAll(calcDescriptorsForMatchingZones(positionFilteringResult)); + zoneDescriptors.addAll(calcDescriptorsForNonMatchingZones(positionFilteringResult)); + return zoneDescriptors; + } + + private static List<ZoneDescriptor> calcDescriptorsForNonMatchingZones(PositionFilteringResult positionFilteringResult) { + List<ZoneDescriptor> zoneDescriptors = new LinkedList<>(); + for (String zoneId : positionFilteringResult.getNonMatchingPositionConditionCellIds()){ + ZoneDescriptor zoneDescriptor = modelFactory.createZoneDescriptor(); + zoneDescriptor.setZoneId(zoneId); + if(isExitNotification(positionFilteringResult, zoneId)){ + zoneDescriptor.setNotificationType(PositionMonitoring.EXIT_NOTIFICATION_TYPE); + zoneDescriptors.add(zoneDescriptor); + } + } + return zoneDescriptors; + } + + private static List<ZoneDescriptor> calcDescriptorsForMatchingZones(PositionFilteringResult positionFilteringResult) { + List<ZoneDescriptor> zoneDescriptors = new LinkedList<>(); + for (String zoneId : positionFilteringResult.getMatchingPositionConditionCellIds()){ + ZoneDescriptor zoneDescriptor = modelFactory.createZoneDescriptor(); + //LOG.info("OP: zoneId: " + zoneId); + zoneDescriptor.setZoneId(zoneId); + if(isEntryNotification(positionFilteringResult, zoneId)) { + zoneDescriptor.setNotificationType(PositionMonitoring.ENTRY_NOTIFICATION_TYPE); + }else { + zoneDescriptor.setNotificationType(PositionMonitoring.UNDEFINED_TYPE); + } + zoneDescriptors.add(zoneDescriptor); + } + return zoneDescriptors; + } + + private static void logging_sdfindfro(PositionEvent posEvent) { + LocalizableObject lObject = PositionMonitoring.getLObjectByIdOrNull(posEvent.getLObjectId()); + if (lObject == null){ + LOG.info("INDFRO: Warning, unknown sensorId was found. Can not log!"); + return; + } + String sensorType = lObject.getSensorType(); + String timestamp = posEvent.getTimeStamp(); + String sensorId = posEvent.getLObjectId(); + String agentId = lObject.getAgent().getId(); + LOG.info("SDF: Received: sensorType: " + sensorType + " timestamp: " + timestamp + " now: " + LocalDateTime.now() + " sensorId: " + sensorId + " agentId: " + agentId); + LOG.info("INDFRO:"); + LOG.info("INDFRO: Received: sensorType: " + sensorType + "; position: " + logPosition(posEvent.getPlacing()) + "; orientation: " + logOrientation(posEvent.getPlacing()) + "; timestamp: " + timestamp + "; sensorId: " + sensorId + "; agentId: " + agentId); + } + + public static String logPosition(Placing placing) { + Point3D point = (Point3D) placing.getPosition().getPoint(); + return "(x: " + point.getX() + ", y: " + point.getY() + ", z: " + point.getZ() + ")"; + } + + public static String logOrientation(Placing placing) { + Quaternion orientation = (Quaternion) placing.getOrientation(); + return "(x: " + orientation.getX() + ", y: " + orientation.getY() + ", z: " + orientation.getZ() + ", w: " + orientation.getW() + ")"; + } + + /** + * An event-filter may hot handle a position event if the filter should respect the results of + * sensor data fusion (e.g., wrt accuracy-criterium) and the result is negative for this event, + * i.e., the event did not pass sensor data fusion and was rejected. If sensor-data-fusion is not + * relevant, the eFilter should handle the event regardless of whether it was sorted out by sdf or + * not. If it is relevant, the eFilter should block the event if it was sorted out by sdf. + * @param posEvent + * @param posEventMeetsSdfAccuracyCondition + * @param eFilter + * @return + */ + private static boolean eFilterMayHandlePosEvent(PositionEvent posEvent, boolean posEventMeetsSdfAccuracyCondition, eventFilter eFilter) { + boolean sdfIsRelevant = eFilter.respectsAccuracySdfForPosEvent(posEvent); + return !sdfIsRelevant || (sdfIsRelevant && posEventMeetsSdfAccuracyCondition); + } + + private static PositionFilteringResult applyEfilterToPosEvent(PositionEvent posEvent, eventFilter eFilter) throws ParseException { + PositionFilteringResult positionFilteringResult = eFilter.process(posEvent); + boolean posEventMeetsFilterConditions = !positionFilteringResult.hasBlockedEvent(); + if(posEventMeetsFilterConditions) { + LOG.info(eFilter.getMonitoringTaskId() + "-EventFilter accepted the position"); + } + return positionFilteringResult; + /* + posEvent = createAndAppendZoneDescriptors(posEvent, filteringResult); + + + if (allNotificationsAreEntryNotifications(posEvent)){ + // hier feststellen ob alle matchingZones EntryNotifications sind + entryNotifications.add(Tuples.of(posEvent, eFilter.getMonitoringTaskId(), ENTRY_NOTIFICATION_TYPE, eFilter.getSerializationType())); // note: EntryNotifications are sent after that all ExitNotifications have been sent + // updateZoneAssociations(eFilter, posEvent); + }else { + SimpleSceneIntegration.receiveMessage(posEvent, eFilter.getMonitoringTaskId(), UNDEFINED_TYPE, eFilter.getSerializationType()); + } + } + return filteringResult; + + else if (isExitNotification(posEvent, eFilter)){ + disassociateAgentFromZone(eFilter.getFilterConditionConfig().getPositionConditionCellId(), posEvent.getLObjectId()); + SimpleSceneIntegration.receiveMessage(posEvent, eFilter.getMonitoringTaskId(), EXIT_NOTIFICATION_TYPE, eFilter.getSerializationType()); // note: ExitNotifications are sent immediately + */ + } + + private static void updateZoneAssociation(String zoneId, PositionEvent posEvent) { + String agentId = DataServices.getAgentForLocalizableObject(posEvent.getLObjectId()).getId(); + associateAgentWithZone(zoneId, agentId); + } + + /** + * assumption: An object has been found to be located outside of a zone whose id is zoneId. + * This function determines whether it just exited from that zone. + * @param positionFilteringResult + * @param zoneId + * @return + */ + private static boolean isExitNotification(PositionFilteringResult positionFilteringResult, String zoneId) { + PositionEvent posEvent = positionFilteringResult.getPosEvent(); + String agentId = DataServices.getAgentForLocalizableObject(posEvent.getLObjectId()).getId(); + if(null == zoneId) return false; + return isLocatedInsideZone(zoneId, agentId); + } + + /** + * Assumption: zoneId is the id of a zone that the position (contained in filteringResult) + * is actually located in. + * @param positionFilteringResult + * @param zoneId + * @return + */ + private static boolean isEntryNotification(PositionFilteringResult positionFilteringResult, String zoneId) { + PositionEvent posEvent = positionFilteringResult.getPosEvent(); + String agentId = DataServices.getAgentForLocalizableObject(posEvent.getLObjectId()).getId(); + LOG.info("zoneId: " + zoneId + "; agentId: " + agentId); + if(null == zoneId) return false; + return !isLocatedInsideZone(zoneId, agentId); // if the agent was not inside this zone before, it has just entered the zone + } + + private static boolean isLocatedInsideZone(String zoneId, String agentId) { + List<String> agentsInsideZone = Optional.ofNullable(zonePopulation.get(zoneId)).orElse(new LinkedList<>()); + return agentsInsideZone.contains(agentId); + } + + private static void associateAgentWithZone(String zoneId, String agentId) { + if(zonePopulation.keySet().contains(zoneId)){ + if (! zonePopulation.get(zoneId).contains(agentId)){ + zonePopulation.get(zoneId).add(agentId); + } + }else{ + zonePopulation.put(zoneId, new LinkedList<String>(Arrays.asList(agentId))); + } + } + + private static void disassociateAgentFromZone(String zoneId, String agentId) { + if(zonePopulation.keySet().contains(zoneId)){ + while(zonePopulation.get(zoneId).remove(agentId)); // remove all occurences + }else{ + LOG.warn("AgentId cannot be removed as there are currently no AgentIds associated to the zone"); + } } } + diff --git a/src/main/java/ipos/project/devkit/eca/Action.java b/src/main/java/ipos/project/devkit/eca/Action.java new file mode 100644 index 0000000000000000000000000000000000000000..472c70f8ce07d2fc6838343c8780540db84e7a56 --- /dev/null +++ b/src/main/java/ipos/project/devkit/eca/Action.java @@ -0,0 +1,7 @@ +package ipos.project.devkit.eca; + +public interface Action { + + public void execute(); + +} diff --git a/src/main/java/ipos/project/devkit/eca/CEFResult.java b/src/main/java/ipos/project/devkit/eca/CEFResult.java new file mode 100644 index 0000000000000000000000000000000000000000..9273fec85e98d45298c092813cd5a17f5e72831c --- /dev/null +++ b/src/main/java/ipos/project/devkit/eca/CEFResult.java @@ -0,0 +1,28 @@ +package ipos.project.devkit.eca; + +import ipos.project.DataModellntegration.iPos_Datamodel.PositionEvent; + +public class CEFResult { + + PositionEvent posEvent; + boolean posEventIsInOrder; + boolean posEventTriggeredStateChange; + + public CEFResult(PositionEvent posEvent, boolean posEventIsInOrder, boolean posEventTriggeredStateChange) { + this.posEvent = posEvent; + this.posEventIsInOrder = posEventIsInOrder; + this.posEventTriggeredStateChange = posEventTriggeredStateChange; + } + + public PositionEvent getPosEvent() { + return posEvent; + } + + public boolean isPosEventIsInOrder() { + return posEventIsInOrder; + } + + public boolean isPosEventTriggeredStateChange() { + return posEventTriggeredStateChange; + } +} diff --git a/src/main/java/ipos/project/devkit/eca/Condition.java b/src/main/java/ipos/project/devkit/eca/Condition.java new file mode 100644 index 0000000000000000000000000000000000000000..4f0ca3a47d2c902921fad9b3c491b31b03e62c96 --- /dev/null +++ b/src/main/java/ipos/project/devkit/eca/Condition.java @@ -0,0 +1,10 @@ +package ipos.project.devkit.eca; + +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposPositionEvent; +import ipos.project.DataModellntegration.iPos_Datamodel.PositionEvent; + +public interface Condition { + + Action evaluate(IposPositionEvent positionEvent); + +} diff --git a/src/main/java/ipos/project/devkit/eca/ECARule.java b/src/main/java/ipos/project/devkit/eca/ECARule.java new file mode 100644 index 0000000000000000000000000000000000000000..89b6999484226b9a104ab4b1b3cf71f486126f2e --- /dev/null +++ b/src/main/java/ipos/project/devkit/eca/ECARule.java @@ -0,0 +1,31 @@ +package ipos.project.devkit.eca; + +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposPositionEvent; +import ipos.project.DataModellntegration.iPos_Datamodel.PositionEvent; +import ipos.project.devkit.iposext.IPosArguments; + +public abstract class ECARule { + + protected Condition condition; + + /** + * This function implements the overall behaviour of each ECARule: + * Determine applicability of the PositionEvent -> + * determine whether the PositionEvent fulfills the current condition and can be accepted -> + * translate the PositionEvent into an action and execute it. + * Remark: If the PositionEvent can not be accepted a no-operation action is created and executed. + * The behaviour of the ECARule at runtime depends on the implementation of the Condition- and + * Action-interface + * @param posEvent + */ + public void apply(IposPositionEvent posEvent){ + if (isApplicable(posEvent)){ + Action action = condition.evaluate(posEvent); + action.execute(); + } + } + + public abstract boolean isApplicable(IposPositionEvent posEvent); + + public abstract void configure(IPosArguments.IPosEcaConfig ecaConfig); +} diff --git a/src/main/java/ipos/project/devkit/eca/NoOpAction.java b/src/main/java/ipos/project/devkit/eca/NoOpAction.java new file mode 100644 index 0000000000000000000000000000000000000000..ea1deaf31f338e509cd77b0fb20a1f3404ee7517 --- /dev/null +++ b/src/main/java/ipos/project/devkit/eca/NoOpAction.java @@ -0,0 +1,19 @@ +package ipos.project.devkit.eca; + +import org.apache.logging.log4j.LogManager; + +public class NoOpAction implements Action{ + private static org.apache.logging.log4j.Logger LOG = LogManager.getLogger(); + String message = ""; + public NoOpAction() { + } + + public NoOpAction(String message){ + this.message = message; + } + + @Override + public void execute() { + LOG.info(this.message); + } +} diff --git a/src/main/java/ipos/project/devkit/eca/zseq/AbstractZoneSequenceCondition.java b/src/main/java/ipos/project/devkit/eca/zseq/AbstractZoneSequenceCondition.java new file mode 100644 index 0000000000000000000000000000000000000000..6f3623bad65ab00f69c2a47661fc34863795f155 --- /dev/null +++ b/src/main/java/ipos/project/devkit/eca/zseq/AbstractZoneSequenceCondition.java @@ -0,0 +1,62 @@ +package ipos.project.devkit.eca.zseq; + +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposPositionEvent; +import ipos.project.DataModellntegration.iPos_Datamodel.ZoneDescriptor; +import ipos.project.devkit.eca.Action; +import ipos.project.devkit.eca.Condition; +import ipos.project.devkit.eca.NoOpAction; +import org.apache.logging.log4j.LogManager; + +public abstract class AbstractZoneSequenceCondition implements Condition { + private static org.apache.logging.log4j.Logger LOG = LogManager.getLogger(); + + protected ZoneSequenceStage currentStage; + + @Override + public Action evaluate(IposPositionEvent positionEvent) { + if (positionEvent.getZoneDescriptors().size() != 1){ + return new NoOpAction("OP: Error: Positionevent does not contain a single zone descriptor."); + } + // assumption: positionEvent is located in exactly one zone (checked in ZoneSequenceRule.isApplicable()) + ZoneDescriptor zoneDescriptor = positionEvent.getZoneDescriptors().get(0); + if (causesStageChange(zoneDescriptor)){ + logStageChange(); + StageChangeAction scAction = evaluateStageChangeIntoAction(zoneDescriptor); + setCurrentStage(currentStage.getNextStage()); + return scAction; + }else{ + updateCurrentQuantity(); + return new NoOpAction(createNoStageChangeLogMsg()); + } + } + + private String createNoStageChangeLogMsg() { + String currentZoneId = currentStage.getEventDescriptors().get(0).getZoneId(); + int currentQuantity = currentStage.getEventDescriptors().get(0).getQuantity(); + String logMsg = "OP: Event did not cause a stage change. Current stage expects zone " + currentZoneId + ". This was the " + currentQuantity + " event that did not cause a stage change."; + return logMsg; + } + + private void logStageChange() { + String currentZone = currentStage.getEventDescriptors().get(0).getZoneId(); + String nextZone = currentStage.getNextStage().getEventDescriptors().get(0).getZoneId(); + LOG.info("OP: Event causes a stage change. Zone of current stage: " + currentZone + ". Zone of next stage: " + nextZone); + } + + private void updateCurrentQuantity() { + int currentQuantity = currentStage.getEventDescriptors().get(0).getQuantity(); + currentStage.getEventDescriptors().get(0).setQuantity(currentQuantity + 1); + } + + public abstract StageChangeAction evaluateStageChangeIntoAction(ZoneDescriptor zoneDescriptor); + + public abstract boolean causesStageChange(ZoneDescriptor zoneDescriptor); + + public ZoneSequenceStage getCurrentStage() { + return currentStage; + } + public void setCurrentStage(ZoneSequenceStage nextStage) { + this.currentStage = nextStage; + } + +} diff --git a/src/main/java/ipos/project/devkit/eca/zseq/StageChangeAction.java b/src/main/java/ipos/project/devkit/eca/zseq/StageChangeAction.java new file mode 100644 index 0000000000000000000000000000000000000000..364f185ae1e879aaa22d1d3750ce7a1c2e8b01c9 --- /dev/null +++ b/src/main/java/ipos/project/devkit/eca/zseq/StageChangeAction.java @@ -0,0 +1,8 @@ +package ipos.project.devkit.eca.zseq; + +import ipos.project.devkit.eca.Action; + +public abstract class StageChangeAction implements Action { + @Override + public abstract void execute(); +} diff --git a/src/main/java/ipos/project/devkit/eca/zseq/StageChangeLogAction.java b/src/main/java/ipos/project/devkit/eca/zseq/StageChangeLogAction.java new file mode 100644 index 0000000000000000000000000000000000000000..821e9aeb4b1a0222922dc9de19170450425e80cc --- /dev/null +++ b/src/main/java/ipos/project/devkit/eca/zseq/StageChangeLogAction.java @@ -0,0 +1,28 @@ +package ipos.project.devkit.eca.zseq; + +import org.apache.logging.log4j.LogManager; + +public class StageChangeLogAction extends StageChangeAction{ + private static org.apache.logging.log4j.Logger LOG = LogManager.getLogger(); + + private String currentZoneId; + private String nextZoneId; + + public StageChangeLogAction(String currentZoneId, String nextZoneId) { + this.currentZoneId = currentZoneId; + this.nextZoneId = nextZoneId; + } + + @Override + public void execute() { + LOG.info("Stage change occured: " + currentZoneId + " -> " + nextZoneId); + } + + public String getCurrentZoneId() { + return currentZoneId; + } + + public String getNextZoneId() { + return nextZoneId; + } +} diff --git a/src/main/java/ipos/project/devkit/eca/zseq/ZoneSequenceArgs.java b/src/main/java/ipos/project/devkit/eca/zseq/ZoneSequenceArgs.java new file mode 100644 index 0000000000000000000000000000000000000000..044065a13071fe815b48954cf20e676d5e1aa1ae --- /dev/null +++ b/src/main/java/ipos/project/devkit/eca/zseq/ZoneSequenceArgs.java @@ -0,0 +1,29 @@ +package ipos.project.devkit.eca.zseq; + +import ipos.project.DataModellntegration.iPos_Datamodel.ZoneDescriptor; +import ipos.project.devkit.eca.Condition; +import ipos.project.devkit.iposext.IPosArguments; + +import java.util.List; + +public class ZoneSequenceArgs { + + public static class ZoneSequenceConfigure implements IPosArguments.IPosEcaConfig{ + private List<ZoneDescriptor> zoneDescriptors; + private Condition condition; + + public ZoneSequenceConfigure(List<ZoneDescriptor> zoneDescriptors, Condition condition) { + this.zoneDescriptors = zoneDescriptors; + this.condition = condition; + } + + public List<ZoneDescriptor> getZoneDescriptors() { + return zoneDescriptors; + } + public Condition getCondition() { + return condition; + } + + } + +} diff --git a/src/main/java/ipos/project/devkit/eca/zseq/ZoneSequenceCondition.java b/src/main/java/ipos/project/devkit/eca/zseq/ZoneSequenceCondition.java new file mode 100644 index 0000000000000000000000000000000000000000..0982cbe784f8b09501b28062533276ba3f1c8798 --- /dev/null +++ b/src/main/java/ipos/project/devkit/eca/zseq/ZoneSequenceCondition.java @@ -0,0 +1,49 @@ +package ipos.project.devkit.eca.zseq; + +import ipos.project.DataModellntegration.iPos_Datamodel.ZoneDescriptor; +import ipos.project.devkit.eca.NoOpAction; +import org.apache.logging.log4j.LogManager; + +public class ZoneSequenceCondition extends AbstractZoneSequenceCondition{ + String recentZoneId = ""; + + @Override + public String toString() { + String strRepresentation = ""; + ZoneSequenceStage firstStage = this.getCurrentStage(); + ZoneSequenceStage currentStage = firstStage; + while(currentStage != null) { + String currentZoneId = currentStage.getEventDescriptors().get(0).getZoneId(); + strRepresentation += " -> " + currentZoneId; + currentStage = currentStage.getNextStage(); + } + return "expected zone sequence: " + strRepresentation.substring(4); + } + + @Override + public StageChangeAction evaluateStageChangeIntoAction(ZoneDescriptor zoneDescriptor) { + String currentZoneId = getCurrentStage().getEventDescriptors().get(0).getZoneId(); + String nextZoneId = getCurrentStage().getNextStage().getEventDescriptors().get(0).getZoneId(); + return new StageChangeLogAction(currentZoneId, nextZoneId); + } + + @Override + public boolean causesStageChange(ZoneDescriptor zoneDescriptor) { + boolean zoneChange = eventsZoneHasChanged(zoneDescriptor); // there is no stage-change if an out-of-order event is repeated + if (zoneChange){ + this.recentZoneId = zoneDescriptor.getZoneId(); + } + return zoneChange; +/* + String eventZoneId = zoneDescriptor.getZoneId(); + String currentStageZoneId = currentStage.getEventDescriptors().get(0).getZoneId(); // Function ZoneSequenceRule::transformIntoStage ensures that there is at most one EventDescriptor contained in a stage + return !eventZoneId.equals(currentStageZoneId); + + */ + } + + private boolean eventsZoneHasChanged(ZoneDescriptor zoneDescriptor) { + String eventZoneId = zoneDescriptor.getZoneId(); + return !eventZoneId.equals(this.recentZoneId); + } +} diff --git a/src/main/java/ipos/project/devkit/eca/zseq/ZoneSequenceRule.java b/src/main/java/ipos/project/devkit/eca/zseq/ZoneSequenceRule.java new file mode 100644 index 0000000000000000000000000000000000000000..0849b418cdbf054592d77f0e9dc9ffb25c45e2fa --- /dev/null +++ b/src/main/java/ipos/project/devkit/eca/zseq/ZoneSequenceRule.java @@ -0,0 +1,85 @@ +package ipos.project.devkit.eca.zseq; + +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposPositionEvent; +import ipos.project.DataModellntegration.iPos_Datamodel.PositionEvent; +import ipos.project.DataModellntegration.iPos_Datamodel.ZoneDescriptor; +import ipos.project.devkit.eca.ECARule; +import ipos.project.devkit.iposext.IPosArguments; + +import java.util.List; +import java.util.stream.Collectors; + +public abstract class ZoneSequenceRule extends ECARule { + + protected ZoneSequenceCondition zsCondition; + + @Override + public boolean isApplicable(IposPositionEvent posEvent) { + List<ZoneDescriptor> zones = posEvent.getZoneDescriptors(); + return zones.size() == 1; + } + + @Override + public void configure(IPosArguments.IPosEcaConfig iposEcaConfig) { + ZoneSequenceArgs.ZoneSequenceConfigure zsConfigure = (ZoneSequenceArgs.ZoneSequenceConfigure) iposEcaConfig; + configure(zsConfigure); + } + + /** + * Creates a sequence of ZoneSequenceStages for a list of zoneDescriptors. + * Each ZoneSequenceStage encapsulates a single zone with a quantity. The sequence + * encodes a pattern for a sequence of positionEvents. The pattern is met if the + * sequence of positionEvents and their zoneAssociations matches the sequence of + * ZoneSequenceStages and their respective zone associations. + * @param zsConfigure + */ + public void configure(ZoneSequenceArgs.ZoneSequenceConfigure zsConfigure){ + List<ZoneDescriptor> zoneDescriptors = zsConfigure.getZoneDescriptors(); + // this.condition = new ZoneSequenceCondition(); + zsCondition = (ZoneSequenceCondition) zsConfigure.getCondition(); + List<ZoneSequenceStage> zsStages = mapZoneDescriptorsToStages(zoneDescriptors); + linkSuccessiveStages(zsStages); + initializeCondition(zsStages); + /* + ZoneSequenceStage initialStage = new ZoneSequenceStage(); + ZoneSequenceStage loopStage = initialStage; + for (ZoneDescriptor zoneDescriptor : zoneDescriptors){ + loopStage.addEventDescriptor(zoneDescriptor.getZoneId(), 0); + ZoneSequenceStage nextLoopStage = new ZoneSequenceStage(); + loopStage.setNextStage(nextLoopStage); + loopStage = nextLoopStage; + } + zsCondition.setCurrentStage(initialStage); +*/ + } + + private void initializeCondition(List<ZoneSequenceStage> zsStages) { + ZoneSequenceStage initialStage = new ZoneSequenceStage(); + initialStage.addEventDescriptor("Start", 0); + initialStage.setNextStage(zsStages.get(0)); + zsCondition.setCurrentStage(initialStage); + this.condition = zsCondition; + } + + private void linkSuccessiveStages(List<ZoneSequenceStage> zsStages) { + for (int i = 0; i < zsStages.size()-1 ; i++){ + ZoneSequenceStage stage = zsStages.get(i); + ZoneSequenceStage successor = zsStages.get(i+1); + stage.setNextStage(successor); + } + } + + private List<ZoneSequenceStage> mapZoneDescriptorsToStages(List<ZoneDescriptor> zoneDescriptors) { + List<ZoneSequenceStage> zsStages = zoneDescriptors.stream() + .map(ZoneSequenceRule::transformIntoStage) + .collect(Collectors.toList()); + return zsStages; + } + + private static ZoneSequenceStage transformIntoStage(ZoneDescriptor zoneDescriptor){ + ZoneSequenceStage zsStage = new ZoneSequenceStage(); + zsStage.addEventDescriptor(zoneDescriptor.getZoneId(), 0); + return zsStage; + } + +} diff --git a/src/main/java/ipos/project/devkit/eca/zseq/ZoneSequenceStage.java b/src/main/java/ipos/project/devkit/eca/zseq/ZoneSequenceStage.java new file mode 100644 index 0000000000000000000000000000000000000000..611c8d9398186684df1371cbc4301735f4503915 --- /dev/null +++ b/src/main/java/ipos/project/devkit/eca/zseq/ZoneSequenceStage.java @@ -0,0 +1,58 @@ +package ipos.project.devkit.eca.zseq; + +import ipos.project.DataModellntegration.iPos_Datamodel.PositionEvent; + +import java.util.LinkedList; +import java.util.List; + +public class ZoneSequenceStage { + + ZoneSequenceStage nextStage; + List<EventDescriptor> eventDescriptors = new LinkedList<>(); + + public List<EventDescriptor> getEventDescriptors() { + return eventDescriptors; + } + + public void addEventDescriptor(String zoneId, int quantity) { + this.eventDescriptors.add(new EventDescriptor(zoneId, quantity)); + } + + public ZoneSequenceStage getNextStage() { + return nextStage; + } + + public void setNextStage(ZoneSequenceStage nextStage) { + this.nextStage = nextStage; + } + + + public class EventDescriptor { + String zoneId; + int quantity; + + public EventDescriptor(String zoneId, int quantity) { + this.zoneId = zoneId; + this.quantity = quantity; + } + + + public String getZoneId() { + return zoneId; + } + + public void setZoneId(String zoneId) { + this.zoneId = zoneId; + } + + public int getQuantity() { + return quantity; + } + + public void setQuantity(int quantity) { + this.quantity = quantity; + } + + } + +} diff --git a/src/main/java/ipos/project/devkit/iposext/IPosArguments.java b/src/main/java/ipos/project/devkit/iposext/IPosArguments.java new file mode 100644 index 0000000000000000000000000000000000000000..6c7cdf9528c7b420c475b7f7d55da9fc4728d1cb --- /dev/null +++ b/src/main/java/ipos/project/devkit/iposext/IPosArguments.java @@ -0,0 +1,15 @@ +package ipos.project.devkit.iposext; + +public interface IPosArguments { + + public interface IPosConfigData { + } + + public interface HandlePosEventConf { + + } + + public interface IPosEcaConfig { + + } +} diff --git a/src/main/java/ipos/project/devkit/iposext/IPosExtension.java b/src/main/java/ipos/project/devkit/iposext/IPosExtension.java new file mode 100644 index 0000000000000000000000000000000000000000..ed4be3402512fc1bb74c9fc92790ead23da15cb2 --- /dev/null +++ b/src/main/java/ipos/project/devkit/iposext/IPosExtension.java @@ -0,0 +1,54 @@ +package ipos.project.devkit.iposext; + +import ipos.models.SimpleScene; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposPositionEvent; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosRawdataEvent; +import ipos.project.UseCaseController.PositionMonitoring; +import ipos.project.devkit.utility.ExternalPubServiceImpl; +import ipos.project.devkit.utility.ProtoJsonMap; +import org.apache.logging.log4j.LogManager; + +import java.util.Objects; + +abstract public class IPosExtension { + private static org.apache.logging.log4j.Logger LOG = LogManager.getLogger(); + + public ExternalPubServiceImpl mqttService; + + public void setMqttService(ExternalPubServiceImpl mqttService_){ + mqttService = mqttService_; + } + + public void configureIpos(IPosArguments.IPosConfigData iposConfigData) { + try{ + SimpleScene.IposConfigWrapper configWrapper = Objects.requireNonNull(prepareConfigWrapper(iposConfigData), "Warning: An attempt to configure the IPos-IPS has failed"); + sendConfigWrapperToIpos(configWrapper); + } catch(NullPointerException e){ + LOG.info(e.getMessage()); + return; + } + } + + private void sendConfigWrapperToIpos(SimpleScene.IposConfigWrapper proto_configWrapper) { + String json_configWrapper = ProtoJsonMap.toJson(proto_configWrapper); + if (mqttService == null){ + throw new RuntimeException("Could not send configuration data to IPos-Framework as MQTT-service was not properly initialized."); + } + mqttService.publish(PositionMonitoring.TOPIC_ConfigWrapper, json_configWrapper, 0, false); + } + + public abstract void handlePositionEvent(IposPositionEvent posEvent); + public abstract void handlePositionEvent(IposPositionEvent posEvent, IPosArguments.HandlePosEventConf posEventConf); + + public abstract void handleRawdataEvent(IPosRawdataEvent iPosRawdataEvent); + + public abstract SimpleScene.IposConfigWrapper prepareConfigWrapper(IPosArguments.IPosConfigData iposConfigData); + + /* + private void useTransformer(){ + ... + IPosTransformer.MonReqTransformer<SimpleScene.IposMonitoringRequest> monReq2protoTransformer = new IPos2protoTransformer.MonReq2ProtoTransformer(); + //monReq2protoTransformer.transformMonReq(); + } + */ +} diff --git a/src/main/java/ipos/project/devkit/trans/IPos2protoTransformer.java b/src/main/java/ipos/project/devkit/trans/IPos2protoTransformer.java new file mode 100644 index 0000000000000000000000000000000000000000..b77736705830a036f4aa84a41cdce607e9e76fc6 --- /dev/null +++ b/src/main/java/ipos/project/devkit/trans/IPos2protoTransformer.java @@ -0,0 +1,117 @@ +package ipos.project.devkit.trans; + +import ipos.models.SimpleScene; +import ipos.project.DataModellntegration.iPos_Datamodel.*; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitFactory; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposPositionEvent; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest; +import ipos.project.SensorValueIntegration.Service.GenericSensorTransformer; + +import java.util.LinkedList; +import java.util.List; +import java.util.stream.Collectors; + +public class IPos2protoTransformer implements IPosTransformer { + + private static IPos_DatamodelFactory modelFactory = IPos_DatamodelFactory.eINSTANCE; + private static IPosDevKitFactory devKitFactory = IPosDevKitFactory.eINSTANCE; + + public static ReferenceSystem createReferenceSystem(String name, String id, Placing origin){ + ReferenceSystem refSystem = modelFactory.createReferenceSystem(); + refSystem.setName(name); + refSystem.setId(id); + refSystem.setOrigin(origin); + return refSystem; + } + + public static Position createPosition(Point3D point3D, Float accuracy, ReferenceSystem refSystem){ + Position position = modelFactory.createPosition(); + position.setPoint(point3D); + Gaussian accrcy = modelFactory.createGaussian(); + accrcy.setConfidenceInterval(accuracy); + position.setAccuracy(accrcy); + position.setReferenceSystem(refSystem); + return position; + } + + public static Point3D createPoint3D(float x, float y, float z){ + Point3D point3D = modelFactory.createPoint3D(); + point3D.setX(x); + point3D.setY(y); + point3D.setZ(z); + return point3D; + } + + public static Quaternion createOrientation(float x, float y, float z, float w){ + Quaternion quaternion = modelFactory.createQuaternion(); + quaternion.setX(x); + quaternion.setY(y); + quaternion.setZ(z); + quaternion.setW(w); + return quaternion; + } + + public static Placing createPlacing(Position position, Orientation orientation){ + Placing placing = modelFactory.createPlacing(); + placing.setPosition(position); + placing.setOrientation(orientation); + return placing; + } + + public static class MonReq2ProtoTransformer implements IPosTransformer.MonReqTransformer<SimpleScene.IposMonitoringRequest>{ + + @Override + public SimpleScene.IposMonitoringRequest transformMonReq(MonitoringRequest monitoringRequest) { + return null; + } + } + + public static List<IposPositionEvent> transformToInternal(SimpleScene.IposPositionEvent proto_iposPositionEvent){ + List<IposPositionEvent> iposPositionEvents = proto_iposPositionEvent.getObjectsList().stream() + .map(IPos2protoTransformer::transformProtoObjectToInternalPosEvent) + .collect(Collectors.toList()); + return iposPositionEvents; + } + + public static ZoneDescriptor transformToInternal(SimpleScene.IposZoneDescriptor proto_zoneDescriptor){ + ZoneDescriptor zoneDescriptor = modelFactory.createZoneDescriptor(); + zoneDescriptor.setZoneId(proto_zoneDescriptor.getZoneId()); + zoneDescriptor.setNotificationType(proto_zoneDescriptor.getNotificationType()); + return zoneDescriptor; + } + + private static IposPositionEvent transformProtoObjectToInternalPosEvent(SimpleScene.IposObject proto_object) { + IposPositionEvent iposPositionEvent = devKitFactory.createIposPositionEvent(); + iposPositionEvent.setAgentId(proto_object.getId()); + iposPositionEvent.setSensorId(proto_object.getSensorId()); + iposPositionEvent.setType(proto_object.getType()); + iposPositionEvent.setSensorType(proto_object.getSensorType()); + iposPositionEvent.setPosition( + createPosition( + IPos2protoTransformer.createPoint3D( + proto_object.getPosition().getPoint().getX(), + proto_object.getPosition().getPoint().getY(), + proto_object.getPosition().getPoint().getZ() + ), + proto_object.getPosition().getAccuracy(), + IPos2protoTransformer.createReferenceSystem("ROOT", "ROOT", null) + + ) + ); + iposPositionEvent.setOrientation( + IPos2protoTransformer.createOrientation( + proto_object.getOrientation().getX(), + proto_object.getOrientation().getY(), + proto_object.getOrientation().getZ(), + proto_object.getOrientation().getW() + ) + ); + iposPositionEvent.setLastPosUpdate(proto_object.getLastPosUpdate()); + List<ZoneDescriptor> zoneDescriptors = proto_object.getZoneDescriptorsList().stream() + .map(IPos2protoTransformer::transformToInternal) + .collect(Collectors.toList()); + iposPositionEvent.getZoneDescriptors().addAll(zoneDescriptors); + return iposPositionEvent; + } + +} diff --git a/src/main/java/ipos/project/devkit/trans/IPosTransformer.java b/src/main/java/ipos/project/devkit/trans/IPosTransformer.java new file mode 100644 index 0000000000000000000000000000000000000000..729519a9203ba10223e1154b5c469cd397cbb6ee --- /dev/null +++ b/src/main/java/ipos/project/devkit/trans/IPosTransformer.java @@ -0,0 +1,11 @@ +package ipos.project.devkit.trans; + +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.MonitoringRequest; + +public interface IPosTransformer { + + interface MonReqTransformer<K> { + K transformMonReq(MonitoringRequest monitoringRequest); + } + +} diff --git a/src/main/java/ipos/project/devkit/utility/ExternalPubServiceImpl.java b/src/main/java/ipos/project/devkit/utility/ExternalPubServiceImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..2da127cfdc9f6414c733bdbb1eaf3326c560da96 --- /dev/null +++ b/src/main/java/ipos/project/devkit/utility/ExternalPubServiceImpl.java @@ -0,0 +1,58 @@ +package ipos.project.devkit.utility; + +import com.google.protobuf.AbstractMessageLite; +import ipos.project.DataModellntegration.SimpleSceneIntegration.service.ExternalPubService; +import org.eclipse.paho.client.mqttv3.MqttAsyncClient; +import org.eclipse.paho.client.mqttv3.MqttException; +import org.eclipse.paho.client.mqttv3.MqttMessage; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.io.ByteArrayOutputStream; +import java.io.IOException; + +@Service +public class ExternalPubServiceImpl implements ExternalPubService { + + private final Logger LOG = LoggerFactory.getLogger(getClass()); + private final MqttAsyncClient mqttClient; + + @Autowired + public ExternalPubServiceImpl(MqttAsyncClient mqttClient) { + this.mqttClient = mqttClient; + } + + public void publish(final String topic, final String msg , int qos, boolean retained) { + MqttMessage mqttMessage = new MqttMessage(); + mqttMessage.setPayload(msg.getBytes()); + mqttMessage.setQos(qos); + mqttMessage.setRetained(retained); + publish(topic, mqttMessage); + } + + public void publish(final String topic, final MqttMessage mqttMessage){ + try { + mqttClient.publish(topic, mqttMessage); + } catch (MqttException e) { + LOG.error("MQTT-message could not be published"); + e.printStackTrace(); + } + } + + @Override + public MqttMessage createMqttMsg(AbstractMessageLite protoMessage, int qos, boolean retained) { + ByteArrayOutputStream baos = new ByteArrayOutputStream(); + try { + protoMessage.writeTo(baos); + } catch (IOException e) { + LOG.error("Protobuf-message could not be serialized"); + e.printStackTrace(); + } + MqttMessage mqttMessage = new MqttMessage(baos.toByteArray()); + mqttMessage.setQos(qos); + mqttMessage.setRetained(retained); + return mqttMessage; + } +} diff --git a/src/main/java/ipos/project/devkit/utility/OtherUtility.java b/src/main/java/ipos/project/devkit/utility/OtherUtility.java new file mode 100644 index 0000000000000000000000000000000000000000..cb1171e69cb126dfa649902ca11fac3057576ba1 --- /dev/null +++ b/src/main/java/ipos/project/devkit/utility/OtherUtility.java @@ -0,0 +1,73 @@ +package ipos.project.devkit.utility; + +import com.google.protobuf.AbstractMessageLite; +import com.google.protobuf.MessageOrBuilder; +import ipos.project.DataModellntegration.SimpleSceneIntegration.SimpleSceneIntegration; +import ipos.project.MainApp; +import ipos.project.SensorValueIntegration.GenericSensorValueProcessor; +import ipos.project.UseCaseController.PositionMonitoring; +import org.apache.logging.log4j.LogManager; +import org.eclipse.paho.client.mqttv3.MqttMessage; + +import java.io.BufferedReader; +import java.io.File; +import java.io.FileReader; +import java.io.IOException; +import java.util.ArrayList; +import java.util.List; +import java.util.Scanner; + +public class OtherUtility { + public static final String KEY_EXTRACTED_ATTRIBUTE_NAME = "name"; + public static final String KEY_EXTRACTED_ATTRIBUTE_TYPE = "type"; + public static final String KEY_EXTRACTED_ATTRIBUTE_VALUE = "data"; + private static org.apache.logging.log4j.Logger LOG = LogManager.getLogger(); + + public static List<String> readLines(File initFile) { + List<String> lines = new ArrayList<>(); + try(BufferedReader br = new BufferedReader(new FileReader(initFile))) { // br is automatically closed at the end of try-scope + for (String line; (line = br.readLine()) != null; ){ + lines.add(line); + } + } catch (IOException e) { + LOG.error("Error while reading the text file: "); + e.printStackTrace(); + } + return lines; + } + + public static void publishRespectingSerializationType(String topic, String serializationType, AbstractMessageLite protoMsg){ + MqttMessage mqttMessage = SimpleSceneIntegration.mqttService.createMqttMsg(protoMsg, 0, false); + String jsonString = ProtoJsonMap.toJson((MessageOrBuilder) protoMsg); + + // publishes protobuf over MQTT + if (PositionMonitoring.PROTOBUF_SERIALIZATION_TYPE.equals(serializationType)){ + SimpleSceneIntegration.mqttService.publish(topic, mqttMessage); + LOG.info("publishing protobuf mqttMessage of type " + protoMsg.getClass().getName() + ". JSON-representation:" + jsonString + " on topic: " + topic); + } + + // publishes JSON over MQTT + if (PositionMonitoring.JSON_SERIALIZATION_TYPE.equals(serializationType)){ + SimpleSceneIntegration.mqttService.publish(topic, jsonString, 0, false); + LOG.info("publishing JSON mqttMessage of type " + protoMsg.getClass().getName() + ":" + jsonString + " on topic: " + topic); + } + } + + public static void waitUntilUserRequestsReadingNextLine(Scanner scanner) { + while (!MainApp.READY_TO_READ_NEXT_LINE){ + try { + Thread.sleep(500); + if(scanner.hasNext()) { + String str = scanner.nextLine(); + switch(str){ + case MainApp.COMMAND_READY_FOR_NEXT_LINE: MainApp.READY_TO_READ_NEXT_LINE = true; break; + default: LOG.info("Waiting for permission to read next line"); + } + } + } catch (InterruptedException e) { + e.printStackTrace(); + } + } + MainApp.READY_TO_READ_NEXT_LINE = false; // make sure that we will also wait before reading the line that comes after the current one + } +} diff --git a/src/main/java/ipos/project/mapper/ProtoJsonMap.java b/src/main/java/ipos/project/devkit/utility/ProtoJsonMap.java similarity index 96% rename from src/main/java/ipos/project/mapper/ProtoJsonMap.java rename to src/main/java/ipos/project/devkit/utility/ProtoJsonMap.java index 00c924f85c6b0b7626e16a32f8dabd0e9e69cc7b..6572ac807f7cabff88fd0925b01f0e5450a9f4dd 100644 --- a/src/main/java/ipos/project/mapper/ProtoJsonMap.java +++ b/src/main/java/ipos/project/devkit/utility/ProtoJsonMap.java @@ -1,6 +1,5 @@ -package ipos.project.mapper; +package ipos.project.devkit.utility; -import java.io.IOException; import java.lang.reflect.InvocationTargetException; import com.google.protobuf.AbstractMessage.Builder; import com.google.protobuf.InvalidProtocolBufferException; diff --git a/src/main/java/ipos/project/entity/IWorldModelAccess.java b/src/main/java/ipos/project/entity/IWorldModelAccess.java new file mode 100644 index 0000000000000000000000000000000000000000..400ed55769468913cd6534199ffb2b6e50e836bd --- /dev/null +++ b/src/main/java/ipos/project/entity/IWorldModelAccess.java @@ -0,0 +1,30 @@ +package ipos.project.entity; + +import ipos.project.DataModellntegration.iPos_Datamodel.*; + +import java.util.List; + +public interface IWorldModelAccess { + + /** + * Shall return empty list there are currently no objects of the respective kind stored in the world model + * @return + */ + public List<Agent> getAllAgents(); + + public List<ReferenceSystem> getAllRefSystems(); + + void removeAgent(String id); + + void addAgent(Agent agent_merged); + + List<Zone> getAllZones(); + + void addZone(Zone zone_input); + + void addRefSystem(ReferenceSystem refSystem_input); + + List<POI> getAllPois(); + + void addPoi(POI poi_input); +} diff --git a/src/main/java/ipos/project/entity/LocalObjectWorldModel.java b/src/main/java/ipos/project/entity/LocalObjectWorldModel.java new file mode 100644 index 0000000000000000000000000000000000000000..8e0dea14861306280ce3bdf7fea1fe56816e6ef4 --- /dev/null +++ b/src/main/java/ipos/project/entity/LocalObjectWorldModel.java @@ -0,0 +1,86 @@ +package ipos.project.entity; + +import ipos.project.DataModellntegration.iPos_Datamodel.*; + +import java.util.List; + +public class LocalObjectWorldModel implements IWorldModelAccess { + + private static IPos_DatamodelFactory modelFactory = IPos_DatamodelFactory.eINSTANCE; + WorldModel wm; + + public LocalObjectWorldModel(){ + wm = modelFactory.createWorldModel(); + wm.getZoneMap().add(modelFactory.createZoneMap()); // zonemaps are currently not supported + } + + @Override + public List<Agent> getAllAgents() { + return wm.getAgent(); + } + + @Override + public List<ReferenceSystem> getAllRefSystems() { + return wm.getReferenceSystem(); + } + + @Override + public void removeAgent(String id) { + for (Agent agent : wm.getAgent()){ + if(agent.getId().equals(id)){ + wm.getAgent().remove(agent); + return; + } + } + } + + /** + * Assumption: The calling code made sure that there are currently no agents + * with the same id contained in the world model. + * @param agent + */ + @Override + public void addAgent(Agent agent) { + wm.getAgent().add(agent); + } + + @Override + public List<Zone> getAllZones() { + return wm.getZoneMap().get(0).getZone(); + } + + /** + * Assumption: The calling code made sure that there are currently no zones + * with the same id contained in the world model. + * @param zone + */ + @Override + public void addZone(Zone zone) { + wm.getZoneMap().get(0).getZone().add(zone); + } + + /** + * Assumption: The calling code made sure that there are currently no refSystems + * with the same id contained in the world model. + * @param refSystem + */ + @Override + public void addRefSystem(ReferenceSystem refSystem) { + wm.getReferenceSystem().add(refSystem); + } + + @Override + public List<POI> getAllPois() { + return wm.getPois(); + } + + /** + * Assumption: The calling code made sure that there are currently no pois + * with the same id contained in the world model. + * @param poi + */ + @Override + public void addPoi(POI poi) { + wm.getPois().add(poi); + } +} diff --git a/src/main/java/ipos/project/iposextension/orderpicker/OFBizOrderPicker.java b/src/main/java/ipos/project/iposextension/orderpicker/OFBizOrderPicker.java new file mode 100644 index 0000000000000000000000000000000000000000..c230ae96015b829227f56d980ff7dbfc1e651022 --- /dev/null +++ b/src/main/java/ipos/project/iposextension/orderpicker/OFBizOrderPicker.java @@ -0,0 +1,103 @@ +package ipos.project.iposextension.orderpicker; + +import ipos.models.OFBizOrderpicker; +import ipos.project.devkit.utility.ExternalPubServiceImpl; +import ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.*; +import ipos.project.devkit.iposext.IPosArguments; +import ipos.project.devkit.iposext.IPosExtension; +import ipos.project.devkit.utility.OtherUtility; +import ipos.project.devkit.utility.ProtoJsonMap; +import ipos.project.iposextension.orderpicker.frontend.FETable; +import org.apache.logging.log4j.LogManager; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +import java.io.File; + +/** + * This class coordinates all activities required for verifying that the picker + * picks all items in the correct order, i.e., in the order defined in the picklist. + * An extension of the IPos-FW, that was specifically created for this usecase, is employed. + * For each received picklist a ZoneSequenceRecognition-ComplexEventFilter is created. + * This filter is part of this IPos-FW and is used for the verification. Also, the + * frontend application is initialized and updated to allow the operator to track the + * progress of the picker and detect errors. + * + * The picklist conforms to the datamodel defined in the open-source ERP-system OFBiz. + */ +@Component +public class OFBizOrderPicker { + public static final String OP_MONITORINGREQUEST = "{\"monitoringRequests\": [{\"frameIds\": [\"box_1\", \"box_2\", \"box_3\", \"shipmentBin_1\", \"shipmentBin_2\"], \"monitoringTaskId\": \"" + OFBizOrderPicker.TOPIC_POSITION_EVENT + "\", \"serializationType\": \"json\"}]}"; + public static final String OP_PICKER_ROLE_TYPE = "PICKER"; + public static final String TOPIC_POSITION_EVENT = "RobolabMonitoringOPExtension"; + public static final String TOPIC_FRONTEND = "ipos/client/tableWrapper"; + public static final String INVENTORYITEM_TYPE_NAME = "inventory"; + public static final String SHIPMENTBIN_TYPE_NAME = "shipment"; + private static org.apache.logging.log4j.Logger LOG = LogManager.getLogger(); + + static IPosExtension ofbizOpIposExt = new OFBizOrderPickerExt(); + + public static ExternalPubServiceImpl mqttService; + + @Autowired + public OFBizOrderPicker(ExternalPubServiceImpl mqttService_){ + mqttService = mqttService_; + ofbizOpIposExt.setMqttService(mqttService); + } + + /** + * The OFBizOrderPicker application is an extension of the IPos-FW. Therefore, initialization relies + * on the function "configureIpos", which is provided by the abstract class IPosExtension. Each application-specific + * extension of the IPos-FW, i.e., also the OrderPicker extension, has to derive a concrete class from that class. + * The OrderPicker extension derives the class ipos.project.iposextension.orderpicker.OFBizOrderPickerExt + */ + public static void initialize(){ + try { + ofbizOpIposExt.configureIpos(new IPosArguments.IPosConfigData() { + }); // orderpicker-extension has a prepareConfigWrapper-function that does not need any arguments. We are interested in PositionEvents for all available vessels + }catch(RuntimeException e){ + LOG.info("OP: OFBizOrderPicker-Extension of the IPos-FW could not be initialized. Exception-msg: " + e.getMessage()); + e.printStackTrace(); + } + } + + /** Function transforms the received picklist into a data format that can be handled + * by the frontend-application (FETable) and publishes the picklist to the + * frontend-application. Moreover, a filter (ECARule) is set up for accepting the + * PositionEvents that are sent from the IPos-FW. The information that is relevant + * for the filter is the zone that the position belongs to. + * + * @param picklist + */ + public static void handlePicklist(Picklist picklist){ + try { + FETable feTable = OFBizOrderPickerTrans.transformPicklistIntoFeTable(picklist); + publishFeTableToFeApp(feTable); + ((OFBizOrderPickerExt) ofbizOpIposExt).setupECARule(picklist); + }catch (RuntimeException e){ + LOG.info("OP: Picklist could not be handled: " + e.getMessage()); + e.printStackTrace(); + } + } + + private static void publishFeTableToFeApp(FETable feTable) { + OFBizOrderpicker.FEndWrapper proto_fendWrapper = OFBizOrderPickerTrans.transform2proto(feTable); + String jsonString = ProtoJsonMap.toJson(proto_fendWrapper); + mqttService.publish(OFBizOrderPicker.TOPIC_FRONTEND, jsonString, 0, false); + LOG.info("OP: publishing JSON mqttMessage:" + jsonString + " on topic: " + OFBizOrderPicker.TOPIC_FRONTEND); + } + + public static void processPicklistTestData(String path_to_test_data_file){ + File testDataFile = new File(path_to_test_data_file); + for (String line : OtherUtility.readLines(testDataFile)) { + OFBizOrderPickerMqtt.handleJsonOpWrapper(line); + } + } + + public static void processPosEvtTestData(String path_to_test_data_file){ + File testDataFile = new File(path_to_test_data_file); + for (String line : OtherUtility.readLines(testDataFile)) { + OFBizOrderPickerMqtt.handleIPosMonitoringWrapper(line); + } + } +} diff --git a/src/main/java/ipos/project/iposextension/orderpicker/OFBizOrderPickerArgs.java b/src/main/java/ipos/project/iposextension/orderpicker/OFBizOrderPickerArgs.java new file mode 100644 index 0000000000000000000000000000000000000000..3a5bd8e439d2c846b194a62f8424d82ccf9c68a9 --- /dev/null +++ b/src/main/java/ipos/project/iposextension/orderpicker/OFBizOrderPickerArgs.java @@ -0,0 +1,48 @@ +package ipos.project.iposextension.orderpicker; + +import ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.Picklist; +import ipos.project.devkit.iposext.IPosArguments; + +public class OFBizOrderPickerArgs { +/* + public static class OFBizOrderPickerConf implements IPosArguments.IPosConfigData { + private Picklist picklist; + + public OFBizOrderPickerConf(Picklist picklist) { + this.picklist = picklist; + } + + public Picklist getPicklist() { + return picklist; + } + } +*/ + + /* + public static class OFBizOPPosEvtConf implements IPosArguments.HandlePosEventConf{ + private String picklistId; + + public OFBizOPPosEvtConf(String picklistId) { + this.picklistId = picklistId; + } + + public String getPicklistId() { + return picklistId; + } + } + + */ +/* + public static class OFBizOPEcaConf implements IPosArguments.IPosEcaConfig { + private String picklistId; + + public OFBizOPEcaConf(String picklistId) { + this.picklistId = picklistId; + } + + public String getPicklistId() { + return picklistId; + } + } +*/ +} diff --git a/src/main/java/ipos/project/iposextension/orderpicker/OFBizOrderPickerExt.java b/src/main/java/ipos/project/iposextension/orderpicker/OFBizOrderPickerExt.java new file mode 100644 index 0000000000000000000000000000000000000000..415bdb228986a00c1d69a7915bf749cb8d420303 --- /dev/null +++ b/src/main/java/ipos/project/iposextension/orderpicker/OFBizOrderPickerExt.java @@ -0,0 +1,166 @@ +package ipos.project.iposextension.orderpicker; + +import com.google.protobuf.InvalidProtocolBufferException; +import ipos.models.SimpleScene; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosRawdataEvent; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposPositionEvent; +import ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.Picklist; +import ipos.project.DataModellntegration.iPos_Datamodel.Point3D; +import ipos.project.DataModellntegration.iPos_Datamodel.ZoneDescriptor; +import ipos.project.devkit.eca.zseq.ZoneSequenceArgs; +import ipos.project.devkit.iposext.IPosArguments; +import ipos.project.devkit.iposext.IPosExtension; +import ipos.project.devkit.utility.ProtoJsonMap; +import ipos.project.iposextension.orderpicker.eca.SeqPicklistCondition; +import ipos.project.iposextension.orderpicker.eca.SeqPicklistRule; +import org.apache.logging.log4j.LogManager; +import org.eclipse.emf.common.util.EList; + +import java.util.LinkedList; +import java.util.List; +import java.util.Optional; + +/** + * Extension of the IPos-FW specific to the usecase "OrderPicker". + */ +public class OFBizOrderPickerExt extends IPosExtension { + + private static org.apache.logging.log4j.Logger LOG = LogManager.getLogger(); + + List<SeqPicklistRule> spRules = new LinkedList<SeqPicklistRule>(); // One ComplexEventFilter is responsible for one picklist + + @Override + public void handlePositionEvent(IposPositionEvent posEvent) { + IPosArguments.HandlePosEventConf dummyArgument = new IPosArguments.HandlePosEventConf() {}; + handlePositionEvent(posEvent, dummyArgument); + } + + private String extractZoneIdsAsString(EList<ZoneDescriptor> zoneDescriptors) { + String zoneIds = ""; + for (ZoneDescriptor zoneDescriptor : zoneDescriptors){ + zoneIds += zoneDescriptor.getZoneId() + ", "; + } + return zoneIds.substring(0, zoneIds.length()-2); + } + + /** + * Function runs through all registered picklists (i.e., all ECARules that have been created) and + * applies the received PositionEvent to it. It is not the responsibility of this function to determine + * whether a given PositionEvent is applicable to a given ECARule. This decision is determined by the ECARule. + * For handling a PositionEvent the classes SeqPicklistRule, SeqPicklistRule, SeqPicklistCondition, and UpdateFrontendAction are relevant. + * + * @param posEvent + * @param _posEvtConf + */ + @Override + public void handlePositionEvent(IposPositionEvent posEvent, IPosArguments.HandlePosEventConf _posEvtConf) { + LOG.info("OP:"); + LOG.info("OP:----OFBizOrderPickerExt--------------------------"); + LOG.info("OP: Received IposPositionEvent for agent " + posEvent.getAgentId() + ". Zones: " + extractZoneIdsAsString(posEvent.getZoneDescriptors()) + "; position: " + logPoint((Point3D) posEvent.getPosition().getPoint())); + try { + spRules.forEach(spRule -> spRule.apply(posEvent)); + /* above: lambda-expression, shortform of: + + spRules.forEach(new Consumer<SeqPicklistRule>(){ + @Override + public void accept(SeqPicklistRule spRule){ + spRule.apply(posEvent); + } + }); + */ + }catch (RuntimeException e){ + LOG.info("OP: PositionEvent could not be handled: " + e.getMessage()); + return; + } + } + + @Override + public void handleRawdataEvent(IPosRawdataEvent iPosRawdataEvent) {} + + private String logPoint(Point3D point) { + return "(x: " + point.getX() + ", y: " + point.getY() + ", z: " + point.getZ() + ")"; + } + + /* + private void handleCefResult(String picklistId, CEFResult cefResult) { + if(cefResult.isPosEventTriggeredStateChange()){ + List<ZoneDescriptor> zoneDescriptors = cefResult.getPosEvent().getZonedescriptors(); + String vesselId = zoneDescriptors.get(0).getZoneId(); + ofbizOPApp.onPickerStateChange(picklistId, vesselId, cefResult.isPosEventIsInOrder()); + } + } + + + private SeqPicklistRule getEcaRule(String picklistId) { + ECARule cef = getEcaRuleByPicklistId(picklistId); + if (! (cef instanceof SeqPicklistRule)){ + throw new RuntimeException("Received argument of unexpeted type: " + cef.getClass() + " Expected was: " + ZoneSequenceRule.class); + } + return (SeqPicklistRule) cef; + } + */ + /* + private String readPicklistId(IPosArguments.HandlePosEventConf _posEvtConf) { + if (! (_posEvtConf instanceof OFBizOrderPickerArgs.OFBizOPPosEvtConf)){ + throw new RuntimeException("Received argument of unexpeted type: " + _posEvtConf.getClass() + " Expected was: " + OFBizOrderPickerArgs.OFBizOPPosEvtConf.class); + } + OFBizOrderPickerArgs.OFBizOPPosEvtConf posEvtConf = (OFBizOrderPickerArgs.OFBizOPPosEvtConf) _posEvtConf; + String picklistId = posEvtConf.getPicklistId(); + return picklistId; + } +*/ + + /** + * Functions prepares a MonitoringRequest that causes the IPos-FW to update the OrderPicker extension with all positions + * relevant for the OrderPicker-usecase. + * @param iposConfigData + * @return + */ + @Override + public SimpleScene.IposConfigWrapper prepareConfigWrapper(IPosArguments.IPosConfigData iposConfigData) { + try { + return ProtoJsonMap.fromJson(OFBizOrderPicker.OP_MONITORINGREQUEST, SimpleScene.IposConfigWrapper.class); + } catch (InvalidProtocolBufferException e) { + throw new RuntimeException("Warning: Monitoring-request could not be parsed (JSON) and translated into Protobuf-data structures: "); + } + } + + /** + * Function creates an ECARule that is able to detect whether PositionEvents have been received in + * an order that conforms to the order that is specified by the Picklist (see testdata-file testdata_raw_orderpicker_readable.txt). + * The picklist specifies picklistBins and InventoryItems. InventoryItems have to be placed in the picklistBins they belong to. + * Picklistbins have to be handled in the order of their occurence in the textfile. InventoryItems have to be handled + * in the order of their occurence in their picklistbin. + * @param picklist + */ + public void setupECARule(Picklist picklist){ + String pickerId = extractPickerId(picklist).orElseThrow(() -> new RuntimeException("Picklist did not contain the ID of the picker who is responsible for it")); + SeqPicklistRule spRule = new SeqPicklistRule(picklist.getPicklistId(), pickerId); // complex event filter for verifying the picker + List<ZoneDescriptor> zoneDescriptors = OFBizOrderPickerTrans.picklistToZoneDescriptors(picklist); + ZoneSequenceArgs.ZoneSequenceConfigure zsConfigure = new ZoneSequenceArgs.ZoneSequenceConfigure(zoneDescriptors, new SeqPicklistCondition()); + spRule.configure(zsConfigure); + LOG.info("OP: SeqPicklistRule has been created: \n" + spRule.toString()); + spRules.add(spRule); + } + + private Optional<String> extractPickerId(Picklist picklist) { + if (picklist.getPicklistRoles().size() == 0){ + return Optional.empty(); + }else { + String pickerId = picklist.getPicklistRoles().get(0).getPartyId(); + return Optional.of(pickerId); + } + + } + + /* + public Optional<ECARule> getEcaRuleByPicklistId(String picklistId) { + ECARule ecaRule = spRules.get(picklistId); + if(ecaRule == null){ + return Optional.empty(); + } else { + return Optional.of(ecaRule); + } + } +*/ +} diff --git a/src/main/java/ipos/project/iposextension/orderpicker/OFBizOrderPickerMqtt.java b/src/main/java/ipos/project/iposextension/orderpicker/OFBizOrderPickerMqtt.java new file mode 100644 index 0000000000000000000000000000000000000000..04186ad0c62ba6521d527ed50da5d3107ef90515 --- /dev/null +++ b/src/main/java/ipos/project/iposextension/orderpicker/OFBizOrderPickerMqtt.java @@ -0,0 +1,61 @@ +package ipos.project.iposextension.orderpicker; + +import com.google.protobuf.InvalidProtocolBufferException; +import ipos.models.OFBizOrderpicker; +import ipos.models.SimpleScene; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposPositionEvent; +import ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.Picklist; +import ipos.project.config.mqtt.Handler; +import ipos.project.config.mqtt.MqttListener; +import ipos.project.devkit.trans.IPos2protoTransformer; +import ipos.project.devkit.utility.ProtoJsonMap; +import org.eclipse.paho.client.mqttv3.MqttMessage; + +import java.util.List; + +@MqttListener(OFBizOrderPicker.TOPIC_POSITION_EVENT) +public class OFBizOrderPickerMqtt implements Handler { + // ich denke: die meiste MQTT-Funktionalität sollte von einer Klasse aus dem IPos-extension-package geerbt werden + // hier sollte nur die Weiterleitung des PositionEvents mit der picklistId an die korrekte Klasse (OFBizOrderPickerExt.handlePositioneEvent) sichergestellt werden + // reception: has to call OFBizOrderPickerExt.handlePositionEvent + // reception: the name of the picklist shall equal the name of the topic that PositionEvents for this picklist are sent to + // horchen auf RobolabMonitoringOPExtension (IPos-FW sendet dort gemäß monitoringrequest die PositionEvents hin) + + public static void handleJsonOpWrapper(String jsonMsg){ + try { + OFBizOrderpicker.OrderpickerWrapper opWrapper = ProtoJsonMap.fromJson(jsonMsg, OFBizOrderpicker.OrderpickerWrapper.class); + for (OFBizOrderpicker.OFBizPicklist proto_Picklist : opWrapper.getPicklistsList()){ + processPicklist(proto_Picklist); + } + } catch (InvalidProtocolBufferException e) { + e.printStackTrace(); + } + } + + private static void processPicklist(OFBizOrderpicker.OFBizPicklist proto_picklist) { + Picklist picklist = OFBizOrderPickerTrans.protoPicklist2Internal(proto_picklist); + OFBizOrderPicker.handlePicklist(picklist); + } + + @Override + public void handle(MqttMessage message) { + handleIPosMonitoringWrapper(message.toString()); + } + + static void handleIPosMonitoringWrapper(String jsonMsg) { + try { + SimpleScene.IposMonitoringWrapper iPosMonitoringWrapper = ProtoJsonMap.fromJson(jsonMsg, SimpleScene.IposMonitoringWrapper.class); + iPosMonitoringWrapper.getIposPositionEventsList().stream().forEach(iposPositionEvent_proto -> handleJsonPosEvt(iposPositionEvent_proto)); + } catch (InvalidProtocolBufferException e) { + e.printStackTrace(); + } + } + + public static void handleJsonPosEvt(SimpleScene.IposPositionEvent proto_positionEvent){ + // SimpleScene.IposPositionEvent proto_positionEvent = ProtoJsonMap.fromJson(jsonPosEvt, SimpleScene.IposPositionEvent.class); + List<IposPositionEvent> internal_iposPositionEvents = IPos2protoTransformer.transformToInternal(proto_positionEvent); + for (IposPositionEvent iposPositionEvent : internal_iposPositionEvents){ + OFBizOrderPicker.ofbizOpIposExt.handlePositionEvent(iposPositionEvent); + } + } +} diff --git a/src/main/java/ipos/project/iposextension/orderpicker/OFBizOrderPickerTrans.java b/src/main/java/ipos/project/iposextension/orderpicker/OFBizOrderPickerTrans.java new file mode 100644 index 0000000000000000000000000000000000000000..6f353cc06c6a58cd18f2990a5114d4d7ffee734e --- /dev/null +++ b/src/main/java/ipos/project/iposextension/orderpicker/OFBizOrderPickerTrans.java @@ -0,0 +1,169 @@ +package ipos.project.iposextension.orderpicker; + +import ipos.models.OFBizOrderpicker; +import ipos.project.DataModellntegration.iPos_Datamodel.IPos_DatamodelFactory; +import ipos.project.DataModellntegration.iPos_Datamodel.OFBiz.*; +import ipos.project.DataModellntegration.iPos_Datamodel.ZoneDescriptor; +import ipos.project.iposextension.orderpicker.frontend.FEInitRow; +import ipos.project.iposextension.orderpicker.frontend.FETable; + +import java.util.Collection; +import java.util.LinkedList; +import java.util.List; +import java.util.stream.Collectors; + +public class OFBizOrderPickerTrans { + private static IPos_DatamodelFactory modelFactory = IPos_DatamodelFactory.eINSTANCE; + private static OFBizFactory ofbizFactory = OFBizFactory.eINSTANCE; + + public static Picklist protoPicklist2Internal(OFBizOrderpicker.OFBizPicklist proto_picklist) { + Picklist picklist = ofbizFactory.createPicklist(); + picklist.setPicklistId(proto_picklist.getPicklistId()); + List<PicklistRole> picklistRoles = proto_picklist.getPicklistRolesList().stream() + .map(OFBizOrderPickerTrans::protoPicklistRole2Internal) + .collect(Collectors.toList()); + picklist.getPicklistRoles().addAll(picklistRoles); + List<PicklistBin> picklistBins = proto_picklist.getPicklistBinsList().stream() + .map(OFBizOrderPickerTrans::protoPicklistBin2Internal) + .collect(Collectors.toList()); + picklist.getPicklistBins().addAll(picklistBins); + return picklist; + } + + private static PicklistBin protoPicklistBin2Internal(OFBizOrderpicker.OFBizPicklistBin ofBizPicklistBin) { + PicklistBin picklistBin = ofbizFactory.createPicklistBin(); + picklistBin.setPicklistId(ofBizPicklistBin.getPicklistId()); + picklistBin.setBinLocationNumber(ofBizPicklistBin.getBinLocationNumber()); + List<PicklistItem> picklistItems = ofBizPicklistBin.getPicklistItemsList().stream() + .map(OFBizOrderPickerTrans:: protoPicklistItem2Internal) + .collect(Collectors.toList()); + picklistBin.getPicklistItems().addAll(picklistItems); + return picklistBin; + } + + private static PicklistItem protoPicklistItem2Internal(OFBizOrderpicker.OFBizPicklistItem proto_picklistItem) { + PicklistItem picklistItem = ofbizFactory.createPicklistItem(); + InventoryItem inventoryItem = ofbizFactory.createInventoryItem(); + OFBizOrderpicker.OFBizInventoryItem proto_inventoryItem = proto_picklistItem.getInventoryItem(); + inventoryItem.setInventoryItemId(proto_inventoryItem.getInventoryItemId()); + inventoryItem.setContainerId(proto_inventoryItem.getContainerId()); + inventoryItem.setProductId(proto_inventoryItem.getProductId()); + picklistItem.setInventoryItem(inventoryItem); + return picklistItem; + } + + private static PicklistRole protoPicklistRole2Internal(OFBizOrderpicker.OFBizPicklistRole ofbizPicklistRole) { + PicklistRole picklistRole = ofbizFactory.createPicklistRole(); + picklistRole.setPicklistId(ofbizPicklistRole.getPicklistId()); + picklistRole.setPartyId(ofbizPicklistRole.getPartyId()); + picklistRole.setRoleTypeId(ofbizPicklistRole.getRoleTypeId()); + return picklistRole; + } + + static OFBizOrderpicker.FEndWrapper transform2proto(FETable feTable) { + OFBizOrderpicker.FEndWrapper.Builder proto_fendWrapper = OFBizOrderpicker.FEndWrapper.newBuilder(); + OFBizOrderpicker.FEndInitPicklist.Builder proto_fendInitPicklist = OFBizOrderpicker.FEndInitPicklist.newBuilder(); + proto_fendInitPicklist.setPicklistId(feTable.getPicklistId()); + proto_fendInitPicklist.setPickerId(feTable.getPickerId()); + List<OFBizOrderpicker.FEndInitRow> feInitRows = feTable.getFeInitRows().stream() + .map(OFBizOrderPickerTrans::transform2proto) + .collect(Collectors.toList()); + proto_fendInitPicklist.addAllFEndInitRows(feInitRows); + proto_fendWrapper.addFEndInitPicklists(proto_fendInitPicklist); + return proto_fendWrapper.build(); + } + + private static OFBizOrderpicker.FEndInitRow transform2proto(FEInitRow feInitRow) { + OFBizOrderpicker.FEndInitRow.Builder proto_feInitRow = OFBizOrderpicker.FEndInitRow.newBuilder(); + proto_feInitRow.setIndex(feInitRow.getIndex()); + proto_feInitRow.setProductId(feInitRow.getProductId()); + proto_feInitRow.setInventoryItemSoll(feInitRow.getInventoryItem_Soll()); + proto_feInitRow.setShipmentBinNrSoll(feInitRow.getShipmentBinNr_Soll()); + return proto_feInitRow.build(); + } + + /** + * Note to the implementation: A picklistBin knows multiple picklistItems, i.e., multiple tableRows, + * and is therefore transformed into a list of tableRows ("feInitRow"). flatMap prevents us from + * obtaining a List<List<FEInitRow>>. + * Directly collecting the result of transformBin2Rows would result in such a nested list. Due to + * flatMap we obtain a flattened version of it: List<FEInitRow> + * @param picklist + * @return + */ + static FETable transformPicklistIntoFeTable(Picklist picklist) { + String picklistId = picklist.getPicklistId(); + List<PicklistRole> pickerRoles = safelyExtractPickerRoles(picklist); + String pickerId = pickerRoles.get(0).getPartyId(); + List<FEInitRow> feInitRows = picklist.getPicklistBins() + .stream() + .map(OFBizOrderPickerTrans::transformBin2Rows) + .flatMap(Collection::stream) + .collect(Collectors.toList()); + setRowIndices(feInitRows); + return new FETable(picklistId, pickerId, feInitRows); + } + + private static void setRowIndices(List<FEInitRow> feInitRows) { + int rowIdx = 1; + for (FEInitRow feInitRow : feInitRows){ + feInitRow.setRowIdx(rowIdx); + rowIdx++; + } + } + + private static List<PicklistRole> safelyExtractPickerRoles(Picklist picklist) { + List<PicklistRole> pickerRoles = picklist.getPicklistRoles() + .stream() + .filter(c -> c.getRoleTypeId().equals(OFBizOrderPicker.OP_PICKER_ROLE_TYPE)) + .collect(Collectors.toList()); + if (pickerRoles.size() == 0){ + throw new RuntimeException("There is no picker associated to the picklist"); + }else if (pickerRoles.size() > 1){ + throw new RuntimeException("There are multiple pickers associated to the picklist"); + } + return pickerRoles; + } + + private static List<FEInitRow> transformBin2Rows(PicklistBin picklistBin) { + List<FEInitRow> feInitRows = new LinkedList<FEInitRow>(); + for (PicklistItem picklistItem : picklistBin.getPicklistItems()){ + InventoryItem inventoryItem = picklistItem.getInventoryItem(); + String productId = inventoryItem.getProductId(); + String inventoryItem_Soll = inventoryItem.getContainerId(); + String shipmentBinNr_Soll = picklistBin.getBinLocationNumber(); + FEInitRow feInitRow = new FEInitRow(-1, productId, inventoryItem_Soll, shipmentBinNr_Soll); + feInitRows.add(feInitRow); + } + return feInitRows; + } + + static List<ZoneDescriptor> picklistToZoneDescriptors(Picklist picklist) { + FETable feTable = OFBizOrderPickerTrans.transformPicklistIntoFeTable(picklist); // the ECA-rule shall expect the position events to arrive exactly in the order displayed in the frontend-table + List<ZoneDescriptor> zoneDescriptors = feTable.getFeInitRows().stream() + .map(OFBizOrderPickerTrans::feTableRowToZoneDescriptors) + .flatMap(Collection::stream) + .collect(Collectors.toList()); + return zoneDescriptors; + } + + static List<ZoneDescriptor> feTableRowToZoneDescriptors(FEInitRow feInitRow) { + List<ZoneDescriptor> zoneDescriptors = new LinkedList<>(); + zoneDescriptors.add(extractInvItemZoneDescFromRow(feInitRow)); + zoneDescriptors.add(extractShipmentBinZoneDescFromRow(feInitRow)); + return zoneDescriptors; + } + + private static ZoneDescriptor extractShipmentBinZoneDescFromRow(FEInitRow feInitRow) { + ZoneDescriptor shipBin_zoneDescriptor = modelFactory.createZoneDescriptor(); + shipBin_zoneDescriptor.setZoneId(feInitRow.getShipmentBinNr_Soll()); + return shipBin_zoneDescriptor; + } + + private static ZoneDescriptor extractInvItemZoneDescFromRow(FEInitRow feInitRow) { + ZoneDescriptor invItem_zoneDescriptor = modelFactory.createZoneDescriptor(); + invItem_zoneDescriptor.setZoneId(feInitRow.getInventoryItem_Soll()); + return invItem_zoneDescriptor; + } + +} diff --git a/src/main/java/ipos/project/iposextension/orderpicker/README.md b/src/main/java/ipos/project/iposextension/orderpicker/README.md new file mode 100644 index 0000000000000000000000000000000000000000..a7a868019fd440213c6f7aab4daa90b6010d00f2 --- /dev/null +++ b/src/main/java/ipos/project/iposextension/orderpicker/README.md @@ -0,0 +1,55 @@ +# OrderPicker extension + +## How to run? +1. Preparation + - Make sure that IPos-FW can connect to an MQTT-server + - Verify MQTT-configuration in `src\main\resources\application.yml` + - Check logger configuration in `ipos.project.CustomLoggingFilter` + - Returning `FilterReply.DENY` prevents messages from being logged, `FilterReply.ACCEPT` allows them to be logged + - Logging all messages with relevance for this extension requires accepting all messages that contain the string `OP:` + - Check that the *modules*-submodule has been checked out properly + - folder `models` should not be empty + - if empty, try to clone the repository together with checking out all submodules + - `git clone -b SimpleScene --recurse-submodules https://git-st.inf.tu-dresden.de/ipos/project.git project4` + - additionally: `git status` in folder `models` should return `Head detached`. To fix that: `git checkout main` + - Make sure that an instance of the [frontend-app](https://git-st.inf.tu-dresden.de/ipos/front-end-app) is running and accessible by the IPos-FW + - Remark: This is not necessary if you only want to debug the IPos-FW or examine its logging messages +2. Launch IPos-FW + - main-function: `ipos.project.MainApp.main` + - Console should print an overview of the available comments (if CustomLoggingFilter accepts messages containing string `SHELL:`) + - Console can be made to reprint the overview by entering `help` +3. Enter `init op` + - Initializes both, IPos-FW and OrderPicker extension + - OrderPicker extension sends MonitoringRequest to IPos-FW that causes it to send *Position-Updates* to the OrderPicker that cover all zones relevant for the verification of order-picking +4. Enter `oppl testdata` + - Reads a test-picklist contained in JSON-file `testdata_raw_orderpicker.txt` + - The logger should print the sequence of zones the picker is expected to visit +5. Enter `opevts testdata` + - Reads the JSON-file `testdata_raw_orderpicker_posEvts.txt` containing a sequence of test-messages indicating to the *OrderPicker extension* the presence of the picker in certain zones + - The OrderPicker verifies whether the picker follows the expected sequence. + - The *OrderPicker extension* informs the frontend-app about certain events by sending appropriate messages: + - Picker entered a zone in order + - Picker entered a zone out of order + - The behaviour of the *OrderPicker extension* can be verified by inspecting the (exhaustive) logger-output + - Messages sent are sent to the frontend-app are logged + - Events that have occured but are not indicated to the frontend-app are logged + +## Selected positions in source-code +### Execution of the SHELL-commands +- function `ipos.project.MainApp.processCommands` +### Initialization of the *OrderPicker extension* +- starting point: function `ipos.project.MainApp.initOp` +- The MonitoringReqeuest is prepared: function `ipos.project.iposextension.orderpicker.OFBizOrderPickerExt.prepareConfigWrapper` +### Information on the extension-mechanism of the IPos-FW +- see documentation of function `ipos.project.iposextension.orderpicker.OFBizOrderPicker.initialize` +### Information on the general behaviour of the `OrderPicker extension` +- see documentation of class `ipos.project.iposextension.orderpicker.OFBizOrderPicker` +### Testdata processing +- picklist testdata: function `ipos.project.iposextension.orderpicker.OFBizOrderPicker.processPicklistTestData` +- position testdata: function `ipos.project.iposextension.orderpicker.OFBizOrderPicker.processPosEvtTestData` +### Picklist-handling +- function: `ipos.project.iposextension.orderpicker.OFBizOrderPicker.handlePicklist` +- filter-behaviour: see documentation of function `ipos.project.iposextension.orderpicker.OFBizOrderPickerExt.setupECARule` +### Handling a PositionEvent sent from IPos-FW +- function: `ipos.project.iposextension.orderpicker.OFBizOrderPickerExt.handlePositionEvent(ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposPositionEvent, ipos.project.devkit.iposext.IPosArguments.HandlePosEventConf)` +- overall behaviour of each ECA-rule: `ipos.project.devkit.eca.ECARule.apply` \ No newline at end of file diff --git a/src/main/java/ipos/project/iposextension/orderpicker/eca/SeqPicklistCondition.java b/src/main/java/ipos/project/iposextension/orderpicker/eca/SeqPicklistCondition.java new file mode 100644 index 0000000000000000000000000000000000000000..ff5b8327d6614152fd72cb89e152cec41e8a345a --- /dev/null +++ b/src/main/java/ipos/project/iposextension/orderpicker/eca/SeqPicklistCondition.java @@ -0,0 +1,33 @@ +package ipos.project.iposextension.orderpicker.eca; + +import ipos.project.DataModellntegration.iPos_Datamodel.ZoneDescriptor; +import ipos.project.devkit.eca.zseq.StageChangeAction; +import ipos.project.devkit.eca.zseq.ZoneSequenceCondition; +import ipos.project.devkit.eca.zseq.ZoneSequenceStage; +import ipos.project.iposextension.orderpicker.OFBizOrderPicker; + +public class SeqPicklistCondition extends ZoneSequenceCondition { + + int timesCalled = 0; + + /** + * + * @param zoneDescriptor describes the zone, i.e. the inventory- or shipmentBinItem, that the received Position(Event) has been found be located into by the IPos-FW + * @return + */ + @Override + public StageChangeAction evaluateStageChangeIntoAction(ZoneDescriptor zoneDescriptor){ + timesCalled++; + int index = (int) Math.ceil(timesCalled/2.0); // number of the line of the frontend-app table should be updated. Each second StageChange changes the line number + String inventoryOrShipment = (timesCalled%2.0 == 1.0) ? OFBizOrderPicker.INVENTORYITEM_TYPE_NAME : OFBizOrderPicker.SHIPMENTBIN_TYPE_NAME; // uneven -> inventoryItem, even -> shipmentBin + + ZoneSequenceStage nextStage = currentStage.getNextStage(); // assumption: ZoneSequenceRule::isApplicable rejects the event if the corresponding picklist has been finished + String nextItemId = nextStage.getEventDescriptors().get(0).getZoneId(); + boolean isCorrect = zoneDescriptor.getZoneId().equals(nextItemId); + String itemId = zoneDescriptor.getZoneId(); + + UpdateFrontendAction updateFrontendAction = new UpdateFrontendAction(index, isCorrect, itemId, inventoryOrShipment); + return updateFrontendAction; + } + +} diff --git a/src/main/java/ipos/project/iposextension/orderpicker/eca/SeqPicklistRule.java b/src/main/java/ipos/project/iposextension/orderpicker/eca/SeqPicklistRule.java new file mode 100644 index 0000000000000000000000000000000000000000..c1b796b81df321a12cc7851c18049757d9cf356c --- /dev/null +++ b/src/main/java/ipos/project/iposextension/orderpicker/eca/SeqPicklistRule.java @@ -0,0 +1,42 @@ +package ipos.project.iposextension.orderpicker.eca; + +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposPositionEvent; +import ipos.project.devkit.eca.zseq.ZoneSequenceRule; + +public class SeqPicklistRule extends ZoneSequenceRule { + private String picklistId; + private String pickerId; + + public SeqPicklistRule(String picklistId, String pickerId) { + this.picklistId = picklistId; + this.pickerId = pickerId; + } + + public String getPicklistId() { + return picklistId; + } + + public String getPickerId() { + return pickerId; + } + + @Override + public String toString() { + String strRepresentation = "SeqPicklistRule: \n picklistId: " + picklistId + "\n pickerId: " + pickerId + "\n"; + strRepresentation += zsCondition.toString(); + return strRepresentation; + + } + + @Override + public boolean isApplicable(IposPositionEvent posEvent){ + boolean picklistHasBeenFinished = zsCondition.getCurrentStage().getNextStage() == null; + boolean isApplicable = this.pickerId.equals(posEvent.getAgentId()) & (!picklistHasBeenFinished); + return super.isApplicable(posEvent) & isApplicable; + } + + //@Override + //public StageChangeAction createSCAction() { + // return null; + //} +} diff --git a/src/main/java/ipos/project/iposextension/orderpicker/eca/UpdateFrontendAction.java b/src/main/java/ipos/project/iposextension/orderpicker/eca/UpdateFrontendAction.java new file mode 100644 index 0000000000000000000000000000000000000000..49b8c3b90a6362fa6d6c5f7c5c48526a613db7d4 --- /dev/null +++ b/src/main/java/ipos/project/iposextension/orderpicker/eca/UpdateFrontendAction.java @@ -0,0 +1,63 @@ +package ipos.project.iposextension.orderpicker.eca; + +import ipos.models.OFBizOrderpicker; +import ipos.project.devkit.eca.zseq.StageChangeAction; +import ipos.project.devkit.utility.ProtoJsonMap; +import ipos.project.iposextension.orderpicker.OFBizOrderPicker; +import ipos.project.iposextension.orderpicker.frontend.FETransformer; +import ipos.project.iposextension.orderpicker.frontend.FEUpdateInventoryItem; +import ipos.project.iposextension.orderpicker.frontend.FEUpdateShipmentBin; +import org.apache.logging.log4j.LogManager; + +public class UpdateFrontendAction extends StageChangeAction { + private static org.apache.logging.log4j.Logger LOG = LogManager.getLogger(); + private final int index; + private final boolean isCorrect; + private final String itemId; + private final String inventoryOrShipment; + + // @Autowired + // public static ExternalPubServiceImpl mqttService; + + public UpdateFrontendAction(int index, boolean isCorrect, String itemId, String inventoryOrShipment) { + super(); + this.index = index; + this.isCorrect = isCorrect; + this.itemId = itemId; + this.inventoryOrShipment = inventoryOrShipment; + } + + @Override + public void execute() { + if (shouldBeWrittenInInventoryItemColumn(inventoryOrShipment)){ + FEUpdateInventoryItem feUpdInvItem = new FEUpdateInventoryItem(index, isCorrect, itemId); + OFBizOrderpicker.FEndUpdateInventoryItem proto_invItem = FETransformer.transformIntoProto(feUpdInvItem); + OFBizOrderpicker.FEndWrapper proto_invItemWrapper = FETransformer.putIntoWrapper(proto_invItem); + String jsonString = ProtoJsonMap.toJson(proto_invItemWrapper); + OFBizOrderPicker.mqttService.publish(OFBizOrderPicker.TOPIC_FRONTEND, jsonString, 0, false); + LOG.info("OP: publishing JSON-InventoryItem mqtt update-message to OP-Frontend-app:" + jsonString + " on topic: " + OFBizOrderPicker.TOPIC_FRONTEND + ". isCorrect (proto): " + proto_invItem.getInventoryIsCorrect()); + }else if(shouldBeWrittenInShipmentBinColumn(inventoryOrShipment)) { + FEUpdateShipmentBin feUpdShipBinNr = new FEUpdateShipmentBin(index, isCorrect, itemId); + OFBizOrderpicker.FEndUpdateShipmentBin proto_shipBin = FETransformer.transformIntoProto(feUpdShipBinNr); + OFBizOrderpicker.FEndWrapper proto_shipBinWrapper = FETransformer.putIntoWrapper(proto_shipBin); + String jsonString = ProtoJsonMap.toJson(proto_shipBinWrapper); + OFBizOrderPicker.mqttService.publish(OFBizOrderPicker.TOPIC_FRONTEND, jsonString, 0, false); + LOG.info("OP: publishing JSON-ShipmentBin mqtt update-message to OP-Frontend-app:" + jsonString + " on topic: " + OFBizOrderPicker.TOPIC_FRONTEND+ ". isCorrect (proto): " + proto_shipBin.getShipmentIsCorrect()); + } else { + LOG.info("OP: Warning: Could not react to StageChange, as vessel-type could not be determined"); + return; + } + } + + private int extractShipmentBinNr(String itemId) { + return Integer.parseInt(itemId.split("_")[1]); + } + + private boolean shouldBeWrittenInShipmentBinColumn(String itemId) { + return itemId.equals(OFBizOrderPicker.SHIPMENTBIN_TYPE_NAME); + } + + private boolean shouldBeWrittenInInventoryItemColumn(String itemId) { + return itemId.equals(OFBizOrderPicker.INVENTORYITEM_TYPE_NAME); + } +} diff --git a/src/main/java/ipos/project/iposextension/orderpicker/frontend/FEInitRow.java b/src/main/java/ipos/project/iposextension/orderpicker/frontend/FEInitRow.java new file mode 100644 index 0000000000000000000000000000000000000000..793adc3b0ea9a3e72a4fb8eab5907cb216610572 --- /dev/null +++ b/src/main/java/ipos/project/iposextension/orderpicker/frontend/FEInitRow.java @@ -0,0 +1,35 @@ +package ipos.project.iposextension.orderpicker.frontend; + +public class FEInitRow { + public FEInitRow(int index, String productId, String inventoryItem_Soll, String shipmentBinNr_Soll) { + this.index = index; + this.productId = productId; + this.inventoryItem_Soll = inventoryItem_Soll; + this.shipmentBinNr_Soll = shipmentBinNr_Soll; + } + + int index; + String productId; + String inventoryItem_Soll; + String shipmentBinNr_Soll; + + public int getIndex() { + return index; + } + + public String getProductId() { + return productId; + } + + public String getInventoryItem_Soll() { + return inventoryItem_Soll; + } + + public String getShipmentBinNr_Soll() { + return shipmentBinNr_Soll; + } + + public void setRowIdx(int rowIdx){ + this.index = rowIdx; + } +} diff --git a/src/main/java/ipos/project/iposextension/orderpicker/frontend/FETable.java b/src/main/java/ipos/project/iposextension/orderpicker/frontend/FETable.java new file mode 100644 index 0000000000000000000000000000000000000000..40eb2e8e38be86e054687ae7d9af2c0b4af404e1 --- /dev/null +++ b/src/main/java/ipos/project/iposextension/orderpicker/frontend/FETable.java @@ -0,0 +1,27 @@ +package ipos.project.iposextension.orderpicker.frontend; + +import java.util.List; + +public class FETable { + String picklistId; + String pickerId; + List<FEInitRow> feInitRows; + + public String getPicklistId() { + return picklistId; + } + + public String getPickerId() { + return pickerId; + } + + public List<FEInitRow> getFeInitRows() { + return feInitRows; + } + + public FETable(String picklistId, String pickerId, List<FEInitRow> feInitRows) { + this.picklistId = picklistId; + this.pickerId = pickerId; + this.feInitRows = feInitRows; + } +} diff --git a/src/main/java/ipos/project/iposextension/orderpicker/frontend/FETransformer.java b/src/main/java/ipos/project/iposextension/orderpicker/frontend/FETransformer.java new file mode 100644 index 0000000000000000000000000000000000000000..63c8ce3e7fb45cfade19ca39aaca486318a6eb52 --- /dev/null +++ b/src/main/java/ipos/project/iposextension/orderpicker/frontend/FETransformer.java @@ -0,0 +1,34 @@ +package ipos.project.iposextension.orderpicker.frontend; + +import ipos.models.OFBizOrderpicker; + +public class FETransformer { + public static OFBizOrderpicker.FEndUpdateInventoryItem transformIntoProto(FEUpdateInventoryItem feUpdInvItem) { + OFBizOrderpicker.FEndUpdateInventoryItem.Builder proto_invItem = OFBizOrderpicker.FEndUpdateInventoryItem.newBuilder(); + proto_invItem.setIndex(feUpdInvItem.getIndex()); + proto_invItem.setInventoryIsCorrect(feUpdInvItem.isCorrect()); + proto_invItem.setInventoryItemIst(feUpdInvItem.getInventoryItem_Ist()); + return proto_invItem.build(); + } + + public static OFBizOrderpicker.FEndUpdateShipmentBin transformIntoProto(FEUpdateShipmentBin feUpdShipBinNr) { + OFBizOrderpicker.FEndUpdateShipmentBin.Builder proto_shipBin = OFBizOrderpicker.FEndUpdateShipmentBin.newBuilder(); + proto_shipBin.setIndex(feUpdShipBinNr.getIndex()); + proto_shipBin.setShipmentIsCorrect(feUpdShipBinNr.isCorrect()); + proto_shipBin.setShipmentBinNrIst(feUpdShipBinNr.getShipmentBinNrIstColumn()); + return proto_shipBin.build(); + } + + public static OFBizOrderpicker.FEndWrapper putIntoWrapper(OFBizOrderpicker.FEndUpdateInventoryItem proto_invItem) { + OFBizOrderpicker.FEndWrapper.Builder proto_fendWrapper = OFBizOrderpicker.FEndWrapper.newBuilder(); + proto_fendWrapper.addFEndUpdateInventoryItems(proto_invItem); + return proto_fendWrapper.build(); + } + + public static OFBizOrderpicker.FEndWrapper putIntoWrapper(OFBizOrderpicker.FEndUpdateShipmentBin proto_shipBin) { + OFBizOrderpicker.FEndWrapper.Builder proto_fendWrapper = OFBizOrderpicker.FEndWrapper.newBuilder(); + proto_fendWrapper.addFEndUpdateShipmentBins(proto_shipBin); + return proto_fendWrapper.build(); + } + +} diff --git a/src/main/java/ipos/project/iposextension/orderpicker/frontend/FEUpdateInventoryItem.java b/src/main/java/ipos/project/iposextension/orderpicker/frontend/FEUpdateInventoryItem.java new file mode 100644 index 0000000000000000000000000000000000000000..2ab79a41877f03559d441cc6b5d4ca683eecb0b7 --- /dev/null +++ b/src/main/java/ipos/project/iposextension/orderpicker/frontend/FEUpdateInventoryItem.java @@ -0,0 +1,14 @@ +package ipos.project.iposextension.orderpicker.frontend; + +public class FEUpdateInventoryItem extends FEUpdateRow { + String inventoryItem_Ist; + + public FEUpdateInventoryItem(int index, boolean isCorrect, String inventoryItem_Ist) { + super(index, isCorrect); + this.inventoryItem_Ist = inventoryItem_Ist; + } + + public String getInventoryItem_Ist() { + return inventoryItem_Ist; + } +} diff --git a/src/main/java/ipos/project/iposextension/orderpicker/frontend/FEUpdateRow.java b/src/main/java/ipos/project/iposextension/orderpicker/frontend/FEUpdateRow.java new file mode 100644 index 0000000000000000000000000000000000000000..b007a0cbbcc5992123280649beecf099f4ffa941 --- /dev/null +++ b/src/main/java/ipos/project/iposextension/orderpicker/frontend/FEUpdateRow.java @@ -0,0 +1,19 @@ +package ipos.project.iposextension.orderpicker.frontend; + +public class FEUpdateRow { + int index; + boolean isCorrect; + + public FEUpdateRow(int index, boolean isCorrect) { + this.index = index; + this.isCorrect = isCorrect; + } + + public int getIndex() { + return index; + } + + public boolean isCorrect() { + return isCorrect; + } +} diff --git a/src/main/java/ipos/project/iposextension/orderpicker/frontend/FEUpdateShipmentBin.java b/src/main/java/ipos/project/iposextension/orderpicker/frontend/FEUpdateShipmentBin.java new file mode 100644 index 0000000000000000000000000000000000000000..8c7171cd4c400ccbba67539cf9f00369915f20e0 --- /dev/null +++ b/src/main/java/ipos/project/iposextension/orderpicker/frontend/FEUpdateShipmentBin.java @@ -0,0 +1,14 @@ +package ipos.project.iposextension.orderpicker.frontend; + +public class FEUpdateShipmentBin extends FEUpdateRow{ + String shipmentBinNrIstColumn; + + public FEUpdateShipmentBin(int index, boolean isCorrect, String shipmentBinNrIst) { + super(index, isCorrect); + this.shipmentBinNrIstColumn = shipmentBinNrIst; + } + + public String getShipmentBinNrIstColumn() { + return shipmentBinNrIstColumn; + } +} diff --git a/src/main/java/ipos/project/iposextension/osm/OSM.java b/src/main/java/ipos/project/iposextension/osm/OSM.java new file mode 100644 index 0000000000000000000000000000000000000000..84de78034cb783d277dbdb0936f5106689ab1817 --- /dev/null +++ b/src/main/java/ipos/project/iposextension/osm/OSM.java @@ -0,0 +1,65 @@ +package ipos.project.iposextension.osm; + +import com.google.protobuf.InvalidProtocolBufferException; +import ipos.models.VDA5050; +import ipos.project.DataModellntegration.VDA5050Processor.api.MqttRequestHandler; +import ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMMonitoringTarget; +import ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMObject; +import ipos.project.devkit.iposext.IPosArguments; +import ipos.project.devkit.utility.ExternalPubServiceImpl; +import ipos.project.devkit.utility.OtherUtility; +import ipos.project.devkit.utility.ProtoJsonMap; +import org.apache.logging.log4j.LogManager; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +import java.io.File; +import java.util.Scanner; + +@Component +public class OSM { + + public static final String TOPIC_TOOZEXT_OUTPUT = "SmartGlassesBackend"; + public static final String SERIALIZATIONTYPE_TOOZEXT_OUTPUT = "json"; + public static final String OSM_MONREQ = "{\"monitoringRequests\": [{\"properties\": [\"%s\"], \"monitoringTaskId\": \"%s\", \"refSystemId\": \"ROOT\", \"serializationType\": \"json\"}]}"; + public static final String TOPIC_OSM_ENVIRONMENT = "OSM_ENVIRONMENT"; + private static org.apache.logging.log4j.Logger LOG = LogManager.getLogger(); + static private OSMExt osmExt = new OSMExt(); + public static final String OSM_WAYPOINT_OSMOBJECT = "{ \"agentId\":\"waypoint%s\", \"agentType\":\"\", \"publisher\":\"main\", \"position\":{ \"refSystemId\":\"ROOT\", \"point\":{ \"x\":%s, \"y\":%s, \"z\":0 } }, \"time\":\"2022-04-14T09:41:20+00:00\" }"; + //public static final String OSM_WAYPOINT_OSMOBJECT = "{ \"waypoints\": [ { \"agentId\":\"waypoint%s\", \"agentType\":\"\", \"publisher\":\"main\", \"position\":{ \"refSystemId\":\"ROOT\", \"point\":{ \"x\":%s, \"y\":%s, \"z\":0 } }, \"time\":\"2022-04-14T09:41:20+00:00\" } ] }"; + // public static final String OSM_WAYPOINT_OSMOBJECT = "{ \"id\": \"waypoint%s\", \"sensorId\": \"\", \"type\": \"\", \"sensorType\": \"\", \"position\": { \"refSystemId\": \"ROOT\", \"point\": { \"x\": %s, \"y\": %s, \"z\": 0 }, \"accuracy\": 1 }, \"orientation\": { \"x\": 0, \"y\": 0, \"z\": 0, \"w\": 0 }, \"lastPosUpdate\": \"2021-09-14T09:41:20+00:00\" }"; + + @Autowired + public OSM(ExternalPubServiceImpl mqttService){ + osmExt.setMqttService(mqttService); + OSMIPosMonitoringWrapperMqtt.setMqttService(mqttService); + OSMExtInputMqtt.setMqttService(mqttService); + OSMExtOutputMqtt.setMqttService(mqttService); + osmExt.initOSM_drawWaypoints(); + } + + public static void handleOSMObject(OSMObject osmObject) { + osmExt.handleOSMObject(osmObject); + } + + public static void processMonTargetTestdata(String path_to_monTarget_file) { + File monTargetFile = new File(path_to_monTarget_file); + for (String line : OtherUtility.readLines(monTargetFile)) { + OSMExtInputMqtt.handleOsmExtInput(line); + } + } + + public static void handleOSMMonitoringTarget(OSMMonitoringTarget osmMonitoringTarget_internal) { + IPosArguments.IPosConfigData osmConf = new OSMArgs.OSMConf(OSMExt.TOPIC_OSM_EXT, osmMonitoringTarget_internal.getProtocol()); + osmExt.configureIpos(osmConf); + } + + public static void processTestData(String path_to_test_data_file){ + File testDataFile = new File(path_to_test_data_file); + Scanner scanner = new Scanner(System.in); + for (String line : OtherUtility.readLines(testDataFile)) { + OSMExtInputMqtt.handleOsmExtInput(line); + } + } + +} diff --git a/src/main/java/ipos/project/iposextension/osm/OSMArgs.java b/src/main/java/ipos/project/iposextension/osm/OSMArgs.java new file mode 100644 index 0000000000000000000000000000000000000000..5b0ae94df89f0dcb4f5012938986fea326ff7783 --- /dev/null +++ b/src/main/java/ipos/project/iposextension/osm/OSMArgs.java @@ -0,0 +1,27 @@ +package ipos.project.iposextension.osm; + +import ipos.project.devkit.iposext.IPosArguments; + +public class OSMArgs { + + public static class OSMConf implements IPosArguments.IPosConfigData { + + String monitoringTaskId; + + public String getProtocol() { + return protocol; + } + + String protocol; + public String getMonitoringTaskId() { + return monitoringTaskId; + } + + public OSMConf(String monitoringTaskId, String protocol) { + this.monitoringTaskId = monitoringTaskId; + this.protocol = protocol; + } + + } + +} diff --git a/src/main/java/ipos/project/iposextension/osm/OSMExt.java b/src/main/java/ipos/project/iposextension/osm/OSMExt.java new file mode 100644 index 0000000000000000000000000000000000000000..f51a486c73aa8fc3c0c5cfd7ce72c36ec118a5ee --- /dev/null +++ b/src/main/java/ipos/project/iposextension/osm/OSMExt.java @@ -0,0 +1,108 @@ +package ipos.project.iposextension.osm; + +import com.google.protobuf.InvalidProtocolBufferException; +import ipos.models.SimpleScene; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosRawdataEvent; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IposPositionEvent; +import ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMObject; +import ipos.project.devkit.iposext.IPosArguments; +import ipos.project.devkit.iposext.IPosExtension; +import ipos.project.devkit.utility.ProtoJsonMap; +import org.apache.logging.log4j.LogManager; +import org.jetbrains.annotations.Nullable; + +import java.util.Objects; + +public class OSMExt extends IPosExtension { + public static final String TOPIC_OSM_EXT = "AGVViewer_VDA5050"; + public static final String TOPIC_OSM_EXT_OUTPUT = "ipos/client/position"; + public static final String TOPIC_OSM_EXT_OUT_SET_WAYPOINT = "ipos/client/waypoint"; + public static final String SERIALIZATION_TYPE_OSM_EXT = "json"; + + private static org.apache.logging.log4j.Logger LOG = LogManager.getLogger(); + + void initOSM_drawWaypoints() { + createAndTransmitWaypointToOSMApp("1",18, 10); + createAndTransmitWaypointToOSMApp("2",6, 3.12f); + createAndTransmitWaypointToOSMApp("3",14, 3.12f); + createAndTransmitWaypointToOSMApp("4",14, 16.92f); + createAndTransmitWaypointToOSMApp("5",6, 16.92f); + createAndTransmitWaypointToOSMApp("6",2, 10); + } + + private void createAndTransmitWaypointToOSMApp(String waypointId, float x, float y) { + try { + //OSMObject waypointAsOSMObject = createWaypointAsOSMObject(waypointId, x, y); + //OSMExtOutputMqtt.transmitOSMObject(waypointAsOSMObject, TOPIC_OSM_EXT_OUT_SET_WAYPOINT, SERIALIZATION_TYPE_OSM_EXT); + ipos.models.OSM.OSMWaypoint waypoint_proto = createWaypoint_proto(waypointId, x, y); + OSMExtOutputMqtt.transmitOSMOutput(waypoint_proto, TOPIC_OSM_EXT_OUT_SET_WAYPOINT, SERIALIZATION_TYPE_OSM_EXT); + }catch(NullPointerException e){ + LOG.warn("Warning: Could not initialize OSM-app with waypoint. Id of the waypoint that could not be initialized: " + waypointId); + } + } + + private ipos.models.OSM.OSMWaypoint createWaypoint_proto(String waypointId, float x, float y) { + String waypointAsJSONString = String.format(OSM.OSM_WAYPOINT_OSMOBJECT, waypointId, String.valueOf(x), String.valueOf(y)); + ipos.models.OSM.OSMWaypoint waypoint_proto = Objects.requireNonNull(parseIntoProtoWaypointOrNull(waypointAsJSONString)); + return waypoint_proto; + } + + private ipos.models.OSM.OSMWaypoint parseIntoProtoWaypointOrNull(String wrappedWaypointAsJSONString) { + try { + return ProtoJsonMap.fromJson(wrappedWaypointAsJSONString, ipos.models.OSM.OSMWaypoint.class); + } catch (InvalidProtocolBufferException e) { + e.printStackTrace(); + return null; + } + } + + /* + private OSMObject createWaypointAsOSMObject(String waypointId, float x, float y) { + String waypointAsJSONString = String.format(OSM.OSM_WAYPOINT_OSMOBJECT, waypointId, String.valueOf(x), String.valueOf(y)); + SimpleScene.IposObject waypointAsOsmObjectProto = Objects.requireNonNull(parseIntoProtoObjectOrNull(waypointAsJSONString)); + OSMObject waypointAsOSMObject = OSMTrans.posEv_proto2OSMObject(waypointAsOsmObjectProto) ; + return waypointAsOSMObject; + } + */ + @Nullable + private SimpleScene.IposObject parseIntoProtoObjectOrNull(String waypointAsJSONString) { + try { + return ProtoJsonMap.fromJson(waypointAsJSONString, SimpleScene.IposObject.class); + } catch (InvalidProtocolBufferException e) { + e.printStackTrace(); + return null; + } + } + + + @Override + public void handlePositionEvent(IposPositionEvent posEvent) {} + + @Override + public void handlePositionEvent(IposPositionEvent posEvent, IPosArguments.HandlePosEventConf posEventConf) {} + + @Override + public void handleRawdataEvent(IPosRawdataEvent iPosRawdataEvent) {} + + public void handleOSMObject(OSMObject osmObject){ + OSMExtOutputMqtt.transmitOSMObject(osmObject, TOPIC_OSM_EXT_OUTPUT, SERIALIZATION_TYPE_OSM_EXT); + } + + @Override + public SimpleScene.IposConfigWrapper prepareConfigWrapper(IPosArguments.IPosConfigData iposConfigData) { + OSMArgs.OSMConf osmConf = (OSMArgs.OSMConf) iposConfigData; + String osmMonitoringTarget = osmConf.getMonitoringTaskId(); + String osmProtocol = osmConf.getProtocol(); + return createConfigWrapperFromOSMMonitoringTarget(osmMonitoringTarget, osmProtocol); + } + + private SimpleScene.IposConfigWrapper createConfigWrapperFromOSMMonitoringTarget(String monitoringTaskId, String protocol) { + String monitoringRequest = String.format(OSM.OSM_MONREQ, protocol, monitoringTaskId); + try { + return ProtoJsonMap.fromJson(monitoringRequest, SimpleScene.IposConfigWrapper.class); + } catch (InvalidProtocolBufferException e) { + LOG.info("Warning: IPos-IPS could not be configured properly, as there was a MonitoringTarget that no ConfigWrapper could be created from."); + return null; + } + } +} diff --git a/src/main/java/ipos/project/iposextension/osm/OSMExtInputMqtt.java b/src/main/java/ipos/project/iposextension/osm/OSMExtInputMqtt.java new file mode 100644 index 0000000000000000000000000000000000000000..38440b1acf0fde856b8d755ce8e2675b74d25dd0 --- /dev/null +++ b/src/main/java/ipos/project/iposextension/osm/OSMExtInputMqtt.java @@ -0,0 +1,42 @@ +package ipos.project.iposextension.osm; + +import com.google.protobuf.InvalidProtocolBufferException; +import ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMMonitoringTarget; +import ipos.project.config.mqtt.Handler; +import ipos.project.config.mqtt.MqttListener; +import ipos.project.devkit.utility.ExternalPubServiceImpl; +import ipos.project.devkit.utility.ProtoJsonMap; +import org.apache.logging.log4j.LogManager; +import org.eclipse.paho.client.mqttv3.MqttMessage; + +@MqttListener(OSM.TOPIC_OSM_ENVIRONMENT) +public class OSMExtInputMqtt implements Handler { + + private static org.apache.logging.log4j.Logger LOG = LogManager.getLogger(); + + private static ExternalPubServiceImpl mqttService; + public static void setMqttService(ExternalPubServiceImpl mqttService) { + OSMExtInputMqtt.mqttService = mqttService; + } + + @Override + public void handle(MqttMessage message) { + handleOsmExtInput(message.toString()); + } + + public static void handleOsmExtInput(String jsonMsg) { + ipos.models.OSM.OSMExtInputWrapper osmInputWrapper = null; + try { + LOG.info("OSM: Handling message in order to initialize OSM-application: " + jsonMsg); + osmInputWrapper = ProtoJsonMap.fromJson(jsonMsg, ipos.models.OSM.OSMExtInputWrapper.class); + } catch (InvalidProtocolBufferException e) { + e.printStackTrace(); + } + osmInputWrapper.getMonitoringTargetsList().forEach(osmMonitoringTarget -> handleOsmMonitoringTarget(osmMonitoringTarget)); + } + + private static void handleOsmMonitoringTarget(ipos.models.OSM.OSMMonitoringTarget monitoringTarget_proto) { + OSMMonitoringTarget osmMonitoringTarget_internal = OSMTrans.osmMonTarget_proto2internal(monitoringTarget_proto); + OSM.handleOSMMonitoringTarget(osmMonitoringTarget_internal); + } +} diff --git a/src/main/java/ipos/project/iposextension/osm/OSMExtOutputMqtt.java b/src/main/java/ipos/project/iposextension/osm/OSMExtOutputMqtt.java new file mode 100644 index 0000000000000000000000000000000000000000..99a4f963dd113467c3b948a309925d8c41566256 --- /dev/null +++ b/src/main/java/ipos/project/iposextension/osm/OSMExtOutputMqtt.java @@ -0,0 +1,48 @@ +package ipos.project.iposextension.osm; + +import com.google.protobuf.AbstractMessageLite; +import ipos.models.OSM; +import ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMObject; +import ipos.project.config.mqtt.Handler; +import ipos.project.config.mqtt.MqttListener; +import ipos.project.devkit.utility.ExternalPubServiceImpl; +import ipos.project.devkit.utility.OtherUtility; +import org.apache.logging.log4j.LogManager; +import org.eclipse.paho.client.mqttv3.MqttMessage; + +@MqttListener("invalid_topic") +public class OSMExtOutputMqtt implements Handler { + + private static org.apache.logging.log4j.Logger LOG = LogManager.getLogger(); + + private static ExternalPubServiceImpl mqttService; + public static void setMqttService(ExternalPubServiceImpl mqttService) { + OSMExtOutputMqtt.mqttService = mqttService; + } + + public static void transmitOSMOutput(AbstractMessageLite osmOutput, String topic, String serializationType) { + OtherUtility.publishRespectingSerializationType(topic, serializationType, osmOutput); + } + + @Override + public void handle(MqttMessage message) {} + + public static void transmitOSMObject(OSMObject osmObject, String topic, String serializationType){ + OSM.OSMObject osmObject_proto = OSMTrans.osmObject_internal2proto(osmObject); + OSM.OSMOutputWrapper osmOutputWrapper_proto = wrapIntoOutputWrapper(osmObject_proto); + logging_osm(topic, serializationType, osmObject_proto); + OtherUtility.publishRespectingSerializationType(topic, serializationType, osmOutputWrapper_proto); + } + + private static OSM.OSMOutputWrapper wrapIntoOutputWrapper(OSM.OSMObject osmObject_proto) { + OSM.OSMOutputWrapper.Builder osmOutputWrapper_proto = OSM.OSMOutputWrapper.newBuilder(); + osmOutputWrapper_proto.addObjects(osmObject_proto); + return osmOutputWrapper_proto.build(); + } + + private static void logging_osm(String topic, String serializationType, OSM.OSMObject osmObject_proto) { + LOG.info("OSM: Publishing " + osmObject_proto.getClass().getName() + " on topic " + topic + " with serialization type " + serializationType); + LOG.info("OSM: "); + } + +} diff --git a/src/main/java/ipos/project/iposextension/osm/OSMIPosMonitoringWrapperMqtt.java b/src/main/java/ipos/project/iposextension/osm/OSMIPosMonitoringWrapperMqtt.java new file mode 100644 index 0000000000000000000000000000000000000000..2b790fb6be33800a1e1059d94efa0a2743b6da66 --- /dev/null +++ b/src/main/java/ipos/project/iposextension/osm/OSMIPosMonitoringWrapperMqtt.java @@ -0,0 +1,61 @@ +package ipos.project.iposextension.osm; + +import com.google.protobuf.InvalidProtocolBufferException; +import ipos.models.SimpleScene; +import ipos.project.DataModellntegration.iPos_Datamodel.OSM.OSMObject; +import ipos.project.config.mqtt.Handler; +import ipos.project.config.mqtt.MqttListener; +import ipos.project.devkit.utility.ExternalPubServiceImpl; +import ipos.project.devkit.utility.ProtoJsonMap; +import org.apache.logging.log4j.LogManager; +import org.eclipse.paho.client.mqttv3.MqttMessage; + +@MqttListener(OSMExt.TOPIC_OSM_EXT) +public class OSMIPosMonitoringWrapperMqtt implements Handler { + + private static org.apache.logging.log4j.Logger LOG = LogManager.getLogger(); + + private static ExternalPubServiceImpl mqttService; + public static void setMqttService(ExternalPubServiceImpl mqttService) { + OSMIPosMonitoringWrapperMqtt.mqttService = mqttService; + } + + // für den generierten code ggf. noch eine höhere Wrapper-Ebene vorsehen: IPosInputWrapper (enthält sowohl PositionWrapper, als auch RawdataWrapper) + // für den generierten code auch vorsehen: eigene XMqtt-Klasse für jeden Wrapper generieren der empfangen werden können soll. + // Also eine Klasse für den IPosInputWrapper und eine andere Klasse für den IPosToozExtInputWrapper. Für die Wrapper-Abbildung in EMF ggf. mit Packages arbeiten + // Es gibt Wrapper die nur ausgehende Nachrichten beinhalten (z.B. bei der tooz-Anwendung: ToozExtOutputWrapper), man muss beim Generieren festlegen können ob + // die Wrapper-Nachrichten überhaupt empfangen werden sollen + @Override + public void handle(MqttMessage message) { + handleIPosMonitoringWrapper(message.toString()); + } + + // generierter code: grundsätzlich für jede mögliche Nachricht etwas generieren, nicht nur für IPosUWBEvent + private void handleIPosMonitoringWrapper(String jsonMsg) { + try { + LOG.info("OSM-app Received Message: " + jsonMsg + " on topic " + OSMExt.TOPIC_OSM_EXT); + SimpleScene.IposMonitoringWrapper iPosMonitoringWrapper = ProtoJsonMap.fromJson(jsonMsg, SimpleScene.IposMonitoringWrapper.class); + iPosMonitoringWrapper.getIposMsgRcvEventsList().stream().forEach(iposMsgRcvEvent -> this.handleIPosMsgRcvEvent(iposMsgRcvEvent)); + iPosMonitoringWrapper.getIposPositionEventsList().stream().forEach(iposPositionEvent -> this.handleIPosPositionEvent(iposPositionEvent)); + } catch (InvalidProtocolBufferException e) { + e.printStackTrace(); + } + } + + private void handleIPosMsgRcvEvent(SimpleScene.IposMsgRcvEvent iPosMsgRcvEvent_proto) { + OSMObject osmObject_internal = OSMTrans.msgRcvEv_proto2OSMObject(iPosMsgRcvEvent_proto); + LOG.info("OSM: Translated IPosMsgRcvEvent to OSMObject: " + osmObject_internal.toString()); + OSM.handleOSMObject(osmObject_internal); + } + + private void handleIPosPositionEvent(SimpleScene.IposPositionEvent iPosPositionEvent_proto) { + iPosPositionEvent_proto.getObjectsList().stream().forEach(iposObject -> handleIposObject(iposObject)); + } + + private void handleIposObject(SimpleScene.IposObject iposObject_proto) { + OSMObject osmObject_internal = OSMTrans.posEv_proto2OSMObject(iposObject_proto); + LOG.info("OSM: Translated IposObject into OSMObject: " + osmObject_internal.toString()); + OSM.handleOSMObject(osmObject_internal); + } + +} diff --git a/src/main/java/ipos/project/iposextension/osm/OSMTrans.java b/src/main/java/ipos/project/iposextension/osm/OSMTrans.java new file mode 100644 index 0000000000000000000000000000000000000000..67e6d3a97ade1fb821ebdcb8a266b98d8fdc9d18 --- /dev/null +++ b/src/main/java/ipos/project/iposextension/osm/OSMTrans.java @@ -0,0 +1,201 @@ +package ipos.project.iposextension.osm; + +import ipos.models.OSM; +import ipos.models.SimpleScene; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitFactory; +import ipos.project.DataModellntegration.iPos_Datamodel.OSM.*; +import org.apache.logging.log4j.LogManager; + +import java.util.Arrays; +import java.util.List; +import java.util.stream.Collectors; + +public class OSMTrans { + private static IPosDevKitFactory devKitFactory = IPosDevKitFactory.eINSTANCE; + private static OSMFactory osmFactory = OSMFactory.eINSTANCE; + private static org.apache.logging.log4j.Logger LOG = LogManager.getLogger(); + + public static OSMMonitoringTarget osmMonTarget_proto2internal(OSM.OSMMonitoringTarget osmMonitoringTarget_proto) { + OSMMonitoringTarget osmMonitoringTarget_internal = osmFactory.createOSMMonitoringTarget(); + osmMonitoringTarget_internal.setMonitoringTaskId(osmMonitoringTarget_proto.getMonitorintTaskId()); + osmMonitoringTarget_internal.setProtocol(osmMonitoringTarget_proto.getProtocol()); + return osmMonitoringTarget_internal; + } + + public static OSM.OSMObject osmObject_internal2proto(OSMObject osmObject_internal) { + OSM.OSMObject.Builder osmObject_proto = OSM.OSMObject.newBuilder(); + if(null != osmObject_internal.getId()) osmObject_proto.setId(osmObject_internal.getId()); + if(null != osmObject_internal.getSensorId()) osmObject_proto.setSensorId(osmObject_internal.getSensorId()); + if(null != osmObject_internal.getType()) osmObject_proto.setType(osmObject_internal.getType()); + if(null != osmObject_internal.getSensorType()) osmObject_proto.setSensorType(osmObject_internal.getSensorType()); + if(null != osmObject_internal.getLastPosUpdate()) osmObject_proto.setLastPosUpdate(osmObject_internal.getLastPosUpdate()); + if(null != osmObject_internal.getOsmposition()) osmObject_proto.setPosition(osmposition_internal2proto(osmObject_internal.getOsmposition())); + if(null != osmObject_internal.getOsmorientation()) osmObject_proto.setOrientation(osmorientation_internal2proto(osmObject_internal.getOsmorientation())); + if(null != osmObject_internal.getOsmzonedescriptor()) osmObject_proto.addAllZoneDescriptors(osmObject_internal.getOsmzonedescriptor().stream().map(OSMTrans::zdescr_osm2proto).collect(Collectors.toList())); + if(null != osmObject_internal.getOsmextractedattributes()) osmObject_proto.setExtractedAttributes(exAtr_internal2proto(osmObject_internal.getOsmextractedattributes())); + return osmObject_proto.build(); + } + + private static OSM.OSMExtractedAttributes exAtr_internal2proto(OSMExtractedAttributes osmExtractedattributes_internal) { + OSM.OSMExtractedAttributes.Builder osmExtractedAttributes_proto = OSM.OSMExtractedAttributes.newBuilder(); + osmExtractedAttributes_proto.setTheta(osmExtractedattributes_internal.getTheta()); // getTheta default-value: 0.0F + osmExtractedAttributes_proto.setBatteryChargeLevel(osmExtractedattributes_internal.getBatteryChargeLevel()); // getBatteryChargeLevel default-value: 0.0F + if(null != osmExtractedattributes_internal.getErrors()) { + List<Integer> errorsAsList = Arrays.stream(osmExtractedattributes_internal.getErrors()).boxed().collect(Collectors.toList()); + osmExtractedAttributes_proto.addAllErrors(errorsAsList); + } + if (null != osmExtractedattributes_internal.getLoadedItems()) { + List<Integer> loadsAsList = Arrays.stream(osmExtractedattributes_internal.getLoadedItems()).boxed().collect(Collectors.toList()); + osmExtractedAttributes_proto.addAllLoadedItems(loadsAsList); + } + return osmExtractedAttributes_proto.build(); + } + + private static OSM.OSMZoneDescriptor zdescr_osm2proto(OSMZoneDescriptor osmZoneDescriptor_internal) { + OSM.OSMZoneDescriptor.Builder osmZoneDescriptor_proto = OSM.OSMZoneDescriptor.newBuilder(); + if( null != osmZoneDescriptor_internal.getZoneId()) osmZoneDescriptor_proto.setZoneId(osmZoneDescriptor_internal.getZoneId()); + if( null != osmZoneDescriptor_internal.getNotificationType()) osmZoneDescriptor_proto.setNotificationType(osmZoneDescriptor_internal.getNotificationType()); + return osmZoneDescriptor_proto.build(); + } + + private static OSM.OSMOrientation osmorientation_internal2proto(OSMOrientation osmOrientation_internal) { + OSM.OSMOrientation.Builder osmOrientation_proto = OSM.OSMOrientation.newBuilder(); + osmOrientation_proto.setX(osmOrientation_internal.getX()); // getX default-value: 0.0F + osmOrientation_proto.setY(osmOrientation_internal.getY()); // getY default-value: 0.0F + osmOrientation_proto.setZ(osmOrientation_internal.getZ()); // getZ default-value: 0.0F + osmOrientation_proto.setW(osmOrientation_internal.getW()); // getW default-value: 0.0F + return osmOrientation_proto.build(); + } + + private static OSM.OSMPosition osmposition_internal2proto(OSMPosition osmposition_internal) { + OSM.OSMPosition.Builder osmPosition_proto = OSM.OSMPosition.newBuilder(); + if (null != osmposition_internal.getRefSystemId()) osmPosition_proto.setRefSystemId(osmposition_internal.getRefSystemId()); + osmPosition_proto.setAccuracy(osmposition_internal.getAccuracy()); // accuracy-default value 0.0F + if (null != osmposition_internal.getOsmpoint()) osmPosition_proto.setPoint(osmpoint_internal2proto(osmposition_internal.getOsmpoint())); + return osmPosition_proto.build(); + } + + private static OSM.OSMPoint osmpoint_internal2proto(OSMPoint osmpoint_internal) { + OSM.OSMPoint.Builder osmPoint_proto = OSM.OSMPoint.newBuilder(); + osmPoint_proto.setX(osmpoint_internal.getX()); + osmPoint_proto.setY(osmpoint_internal.getY()); + osmPoint_proto.setZ(osmpoint_internal.getZ()); + return osmPoint_proto.build(); + } + + public static OSMObject msgRcvEv_proto2OSMObject(SimpleScene.IposMsgRcvEvent iPosMsgRcvEvent_proto) { + OSMObject osmObject_internal = osmFactory.createOSMObject(); + osmObject_internal.setId(iPosMsgRcvEvent_proto.getAgentId()); + osmObject_internal.setSensorId(iPosMsgRcvEvent_proto.getAgentId()); // Annahme: für VDA5050-artige Protokolle gilt: sensorId == agentId + osmObject_internal.setType(""); // Annahme: VDA5050-artige Protokolle schicken zwar meist Nachrichten von AGVs, geben aber den Agententyp typischerweise nicht an + osmObject_internal.setSensorType(""); // Annahme: VDA5050-artige Protokolle berechnen zwar die Position aber schicken nicht unbedingt die Information Sensortype mit + osmObject_internal.setLastPosUpdate(iPosMsgRcvEvent_proto.getLastPosUpdate()); + if (null != iPosMsgRcvEvent_proto.getLastKnownPosition()) { + OSMPosition osmPosition = position_proto2OSM(iPosMsgRcvEvent_proto.getLastKnownPosition()); + osmObject_internal.setOsmposition(osmPosition); + } + if (null != iPosMsgRcvEvent_proto.getLastKnownOrientation()) { + OSMOrientation osmOrientation = orientation_proto2OSM(iPosMsgRcvEvent_proto.getLastKnownOrientation()); + osmObject_internal.setOsmorientation(osmOrientation); + } + if (null != iPosMsgRcvEvent_proto.getLastKnownZoneDescriptorsList()) osmObject_internal.getOsmzonedescriptor().addAll(iPosMsgRcvEvent_proto.getLastKnownZoneDescriptorsList().stream().map(OSMTrans::zoneDescr_proto2OSM).collect(Collectors.toList())); + if (null != iPosMsgRcvEvent_proto.getExtractedAttributesList()) osmObject_internal.setOsmextractedattributes(exAtr_proto2OSM(iPosMsgRcvEvent_proto.getExtractedAttributesList())); + return osmObject_internal; + } + + private static OSMExtractedAttributes exAtr_proto2OSM(List<SimpleScene.Attribute> extractedAttributes_proto) { + OSMExtractedAttributes osmExtractedAttributes = osmFactory.createOSMExtractedAttributes(); + for (SimpleScene.Attribute attribute : extractedAttributes_proto) { + extractProtoAttributeIntoOSMAtr(osmExtractedAttributes, attribute); + } + return osmExtractedAttributes; + } + + private static void extractProtoAttributeIntoOSMAtr(OSMExtractedAttributes osmExtractedAttributes, SimpleScene.Attribute attribute) { + try { + switch (attribute.getName()) { + case "batteryCharge": + osmExtractedAttributes.setBatteryChargeLevel(Float.parseFloat(attribute.getData())); + break; + case "theta": + osmExtractedAttributes.setTheta(Float.parseFloat(attribute.getData())); break; + case "loads": + osmExtractedAttributes.setLoadedItems(parseIntArray(attribute.getData())); break; + case "errors": + osmExtractedAttributes.setErrors(parseIntArray(attribute.getData())); break; + default: + LOG.info("Unknown extracted attribute: " + attribute.getName()); break; + } + } catch(NumberFormatException e){ + LOG.info("Warning: Extracted attribute " + attribute.getName() + " could not be parsed: " + e.getMessage()); + } + } + + private static int[] parseIntArray(String data) { + String[] stringArray = data + .replaceAll("\\[", "") + .replaceAll("]", "") + .replaceAll("\\s+","") // removing whitespace + .split(","); + int[] intArray = new int[stringArray.length]; + for (int i = 0; i < stringArray.length; i++) { + intArray[i] = Integer.parseInt(stringArray[i]); + } + return intArray; + } + + private static OSMZoneDescriptor zoneDescr_proto2OSM(SimpleScene.IposZoneDescriptor iposZoneDescriptor) { + OSMZoneDescriptor osmZoneDescriptor = osmFactory.createOSMZoneDescriptor(); + osmZoneDescriptor.setZoneId(iposZoneDescriptor.getZoneId()); + osmZoneDescriptor.setNotificationType(iposZoneDescriptor.getNotificationType()); + return osmZoneDescriptor; + } + + private static OSMOrientation orientation_proto2OSM(SimpleScene.IposSimpleOrientation lastKnownOrientation) { + OSMOrientation orientation = osmFactory.createOSMOrientation(); + orientation.setX(lastKnownOrientation.getX()); // getX-default: 0F + orientation.setY(lastKnownOrientation.getY()); + orientation.setZ(lastKnownOrientation.getZ()); + orientation.setW(lastKnownOrientation.getW()); + return orientation; + } + + private static OSMPosition position_proto2OSM(SimpleScene.IposPosition position_proto) { + OSMPosition position = osmFactory.createOSMPosition(); + position.setRefSystemId(position_proto.getRefSystemId()); + position.setAccuracy(position_proto.getAccuracy()); + position.setOsmpoint(point_proto2OSM(position_proto.getPoint())); + return position; + } + + private static OSMPoint point_proto2OSM(SimpleScene.IposPoint3D point_proto) { + OSMPoint osmPoint = osmFactory.createOSMPoint(); + osmPoint.setX(point_proto.getX()); + osmPoint.setY(point_proto.getY()); + osmPoint.setZ(point_proto.getZ()); + return osmPoint; + } + + + public static OSMObject posEv_proto2OSMObject(SimpleScene.IposObject iposObject_proto) { + OSMObject osmObject_internal = osmFactory.createOSMObject(); + osmObject_internal.setId(iposObject_proto.getId()); + osmObject_internal.setSensorId(iposObject_proto.getSensorId()); + osmObject_internal.setType(iposObject_proto.getType()); + osmObject_internal.setSensorType(iposObject_proto.getSensorType()); + osmObject_internal.setLastPosUpdate(iposObject_proto.getLastPosUpdate()); + if (null != iposObject_proto.getPosition()) { + OSMPosition osmPosition = position_proto2OSM(iposObject_proto.getPosition()); + osmObject_internal.setOsmposition(osmPosition); + } + if (null != iposObject_proto.getOrientation()) { + OSMOrientation osmOrientation = orientation_proto2OSM(iposObject_proto.getOrientation()); + osmObject_internal.setOsmorientation(osmOrientation); + } + if (null != iposObject_proto.getZoneDescriptorsList()) { + osmObject_internal.getOsmzonedescriptor().addAll( + iposObject_proto.getZoneDescriptorsList().stream().map(OSMTrans::zoneDescr_proto2OSM).collect(Collectors.toList())); + } + return osmObject_internal; + } +} diff --git a/src/main/java/ipos/project/iposextension/tooz/Tooz.java b/src/main/java/ipos/project/iposextension/tooz/Tooz.java new file mode 100644 index 0000000000000000000000000000000000000000..a4a1adf11847fbddde4053fb303942ccb0659de3 --- /dev/null +++ b/src/main/java/ipos/project/iposextension/tooz/Tooz.java @@ -0,0 +1,155 @@ +package ipos.project.iposextension.tooz; + +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosBTEvent; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosBeaconEvent; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosUWBEvent; +import ipos.project.DataModellntegration.iPos_Datamodel.Tooz.DistantEntity; +import ipos.project.DataModellntegration.iPos_Datamodel.Tooz.MonitoringTarget; +import ipos.project.DataModellntegration.iPos_Datamodel.Tooz.ToozFactory; +import ipos.project.devkit.iposext.IPosArguments; +import ipos.project.devkit.utility.ExternalPubServiceImpl; +import ipos.project.devkit.utility.OtherUtility; +import org.apache.logging.log4j.LogManager; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +import java.io.File; +import java.util.*; + +@Component +public class Tooz { + private static org.apache.logging.log4j.Logger LOG = LogManager.getLogger(); + + public static final String TOPIC_TOOZEXT_OUTPUT = "SmartGlassesBackend"; + public static final String SERIALIZATIONTYPE_TOOZEXT_OUTPUT = "json"; + public static final String TOOZ_MONREQ = "{\"monitoringRequests\": [{\"id\": [\"%s\"], \"properties\": [\"distance\"], \"monitoringTaskId\": \"%s\", \"refSystemId\": \"ROOT\", \"serializationType\": \"json\"}]}"; + public static final String TOOZ_MONITORINGTASKID = "tooz_distances"; + // public static final String TOPIC_TOOZ_EXT = "TOOZ_TEST_MONITORING"; + public static final String TOPIC_TOOZ_ENVIRONMENT = "TOOZ_ENVIRONMENT"; + public static final String TOPIC_TOOZ_EXT_OUTPUT = "TOOZ_EXT_OUTPUT"; + public static final String STOMP_BLUETOOTH_NAME = "IPOS_IPS"; + public static final String SERIALIZATION_TYPE_JSON = "json"; + public static final String TOOZ_SERVICE_APPLICATION_DESTINATION_PREFIX = "/medical_ar_app"; + public static final String TOOZ_SERVICE_GLASS_ID = "/id_of_the_tooz_glass_the_service_should_send_information_to"; // see de.tu.dresden.swt.medical.ar.service.controller.PublicWebSocketMessagesController.glassChannelMessage + public static final String TOOZ_STOMP_URI = "ws://localhost:8000/medical_ar-websocket"; // see C:\Users\Admin\Promotion\IPos\ar-support-in-medical-environments\Service\src\test\java\testutility\WSTest.java + + private static ToozFactory toozFactory = ToozFactory.eINSTANCE; + private Timer timer; + + /** + * This IPos extension manages for certain monitoring targets (so called local agents) a list of distant entities, + * including their respective distance from the local agent, based on + * rawdata information that is provided to this extension by the IPos-FW. Repeatedly, after a + * regular interval, for each local agent the nearest distant entity is determined. The id of this entity is + * provided to the Tooz backend service. + * + * ToozIPosRawdataMqtt.handleIPosUWBEvent(...): rawdata handling, distances are updated + * ToozExtInputMqtt.handleToozExtInput(...): new local agents are registered + * Tooz.updateToozBackend(...): for each local agent the closest distant entity is determined. Tooz backend service is updated + * ToozExtOutputStomp.transmitDistantEntity(...) Tooz Backend service is updated + * + * @param mqttService + */ + @Autowired + public Tooz(ExternalPubServiceImpl mqttService) { + toozExt.setMqttService(mqttService); + ToozIPosRawdataMqtt.setMqttService(mqttService); + ToozExtInputMqtt.setMqttService(mqttService); + ToozExtOutputMqtt.setMqttService(mqttService); + startUpdateTimer(); + } + +// ich könnte noch machen: gleich die NFC bzw. RFID-Rohdatenübertragung einbauen, dann muss ich mich später nicht erst lange einarbeiten + + private void startUpdateTimer() { + timer = new Timer(); + timer.scheduleAtFixedRate(new TimerTask() { + @Override + public void run(){ + updateToozBackend(); + } + }, 0, 3000); + } + + static private ToozExt toozExt = new ToozExt(); + + public static void handleIPosBTEvent(IPosBTEvent iPosBTEvent){ + handleIPosBeaconEvent((IPosBeaconEvent) iPosBTEvent); + } + + public static void handleIPosUWBEvent(IPosUWBEvent iPosUWBEvent) { + handleIPosBeaconEvent((IPosBeaconEvent) iPosUWBEvent); + } + + public static void handleIPosBeaconEvent(IPosBeaconEvent iPosBeaconEvent){ + try { + toozExt.handleRawdataEvent(iPosBeaconEvent); + } catch (RuntimeException e) { + LOG.info(e.getMessage()); + } + } + + public static void processMonTargetTestdata(String path_to_monTarget_file) { + File monTargetFile = new File(path_to_monTarget_file); + for (String line : OtherUtility.readLines(monTargetFile)) { + ToozExtInputMqtt.handleToozExtInput(line); + } + } + + /** + * This function configures the IPos-IPS to receive and forward location information concerning + * a monitoring target (i.e., a position sensor with a particular ID). Location information + * may be the distances of the monitoring target from particular distant entities. + * @param monitoringTarget_internal + */ + public static void handleMonitoringTarget(MonitoringTarget monitoringTarget_internal) { + LOG.info("TOOZ: Attempting to configure IPos-IPS for monitoring the location of the sensor with id " + monitoringTarget_internal.getTargetSensorId()); + IPosArguments.IPosConfigData toozConf = new ToozArgs.ToozConf(monitoringTarget_internal); + toozExt.configureIpos(toozConf); + ToozLocalAgent newlyRegisteredTarget = new ToozLocalAgent(monitoringTarget_internal.getTargetSensorId()); + toozExt.getAllCurrentlyMonitoredTargets().add(newlyRegisteredTarget); + } + + public static void updateToozBackend() { + LOG.info("TOOZ: Updating tooz-backend"); + List<ToozLocalAgent> allCurrentlyMonitoredTargets = toozExt.getAllCurrentlyMonitoredTargets(); + allCurrentlyMonitoredTargets.stream().forEach(monitoredTarget -> updateToozBackendForTarget(monitoredTarget)); + } + + private static void updateToozBackendForTarget(ToozLocalAgent monitoredTarget) { + if (!monitoredTarget.hasChangedSinceLastUpdate()){ + return; + } + List<Map.Entry<String, Double>> sortedDistances = extractSortedDistances(monitoredTarget); + if (sortedDistances.size() == 0){ + LOG.info("Could not update Tooz-backend for monitoring Target " + monitoredTarget.getTargetSensorId() + " as no distant entities are known yet."); + return; + } + Map.Entry<String, Double> nearestDistantEntity = sortedDistances.get(0); + DistantEntity distantEntity = createDistantEntityFromMonitoredTarget(monitoredTarget, nearestDistantEntity); + LOG.info("TOOZ: The closest distant entity of monitoring target " + monitoredTarget.getTargetSensorId() + " has changed. Id of closest entity: " + distantEntity.getDistantEntityId() + "; distance of closest entity: " + distantEntity.getDistance() + "; all known distances for this monitoring target: " + monitoredTarget.getCopyOfDistances().values()); + //ToozExtOutputMqtt.transmitDistantEntity(distantEntity, TOPIC_TOOZ_EXT_OUTPUT, SERIALIZATION_TYPE_JSON); + ToozExtOutputStomp.transmitDistantEntity(distantEntity, TOPIC_TOOZ_EXT_OUTPUT); + monitoredTarget.setHasChangedSinceLastUpdate(false); // Tooz-backend has been updated and is up-to-date now, so we regard the monitoredTarget as not having changed since last update + return; + } + + private static DistantEntity createDistantEntityFromMonitoredTarget(ToozLocalAgent monitoredTarget, Map.Entry<String, Double> nearestDistantEntity) { + DistantEntity distantEntity = toozFactory.createDistantEntity(); + distantEntity.setLocalSensorId(monitoredTarget.getTargetSensorId()); + distantEntity.setLocalAgentId(monitoredTarget.getLocalAgentId()); + distantEntity.setDistantEntityId(nearestDistantEntity.getKey()); + distantEntity.setDistance(nearestDistantEntity.getValue()); + distantEntity.setProximityIndex(0); + distantEntity.setEntityData(new HashMap<>()); + distantEntity.setTimeStamp(monitoredTarget.getTimestamp()); + return distantEntity; + } + + private static List<Map.Entry<String, Double>> extractSortedDistances(ToozLocalAgent monitoredTarget) { + List<Map.Entry<String, Double>> toBeSortedDistancesList = new LinkedList<>(); + toBeSortedDistancesList.addAll(monitoredTarget.getCopyOfDistances().entrySet()); + Collections.sort(toBeSortedDistancesList, (e1, e2) -> e1.getValue().compareTo(e2.getValue())); + return toBeSortedDistancesList; + } +} diff --git a/src/main/java/ipos/project/iposextension/tooz/ToozArgs.java b/src/main/java/ipos/project/iposextension/tooz/ToozArgs.java new file mode 100644 index 0000000000000000000000000000000000000000..463ba7cb8eaccbc0ac39d83a5baa692e59dc6583 --- /dev/null +++ b/src/main/java/ipos/project/iposextension/tooz/ToozArgs.java @@ -0,0 +1,21 @@ +package ipos.project.iposextension.tooz; + +import ipos.project.DataModellntegration.iPos_Datamodel.Tooz.MonitoringTarget; +import ipos.project.devkit.iposext.IPosArguments; + +public class ToozArgs { + + public static class ToozConf implements IPosArguments.IPosConfigData { + + MonitoringTarget monitoringTarget; + public MonitoringTarget getMonitoringTargets() { + return monitoringTarget; + } + + public ToozConf(MonitoringTarget monitoringTarget) { + this.monitoringTarget = monitoringTarget; + } + + } + +} diff --git a/src/main/java/ipos/project/iposextension/tooz/ToozExt.java b/src/main/java/ipos/project/iposextension/tooz/ToozExt.java new file mode 100644 index 0000000000000000000000000000000000000000..6046133062ebcc160c37c749f40164ea5549549f --- /dev/null +++ b/src/main/java/ipos/project/iposextension/tooz/ToozExt.java @@ -0,0 +1,139 @@ +package ipos.project.iposextension.tooz; + +import com.google.protobuf.InvalidProtocolBufferException; +import ipos.models.SimpleScene; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.*; +import ipos.project.DataModellntegration.iPos_Datamodel.Tooz.MonitoringTarget; +import ipos.project.devkit.iposext.IPosArguments; +import ipos.project.devkit.iposext.IPosExtension; +import ipos.project.devkit.utility.ProtoJsonMap; +import ipos.project.iposextension.tooz.websocket.WebSocketService; +import org.apache.logging.log4j.LogManager; + +import java.util.LinkedList; +import java.util.List; +import java.util.Map; +import java.util.Objects; + +import static ipos.project.iposextension.tooz.Tooz.TOOZ_MONITORINGTASKID; + +public class ToozExt extends IPosExtension { + private static org.apache.logging.log4j.Logger LOG = LogManager.getLogger(); + + public ToozExt() { + initStomp(); + } + + private WebSocketService webSocketService; + + protected List<ToozLocalAgent> getAllCurrentlyMonitoredTargets() { + return allCurrentlyMonitoredTargets; + } + + private List<ToozLocalAgent> allCurrentlyMonitoredTargets = new LinkedList<>(); + + @Override + public void handlePositionEvent(IposPositionEvent posEvent) {} + + @Override + public void handlePositionEvent(IposPositionEvent posEvent, IPosArguments.HandlePosEventConf posEventConf) {} + + @Override + public void handleRawdataEvent(IPosRawdataEvent iPosRawdataEvent) { + if (iPosRawdataEvent instanceof IPosUWBEvent){ + handleIPosUWBEvent((IPosUWBEvent) iPosRawdataEvent); + } + if (iPosRawdataEvent instanceof IPosBTEvent){ + handleIPosBTEvent((IPosBTEvent) iPosRawdataEvent); + } + } + + private void handleIPosBTEvent(IPosBTEvent iPosRawdataEvent) { + IPosBTEvent iPosBTEvent = iPosRawdataEvent; + if ((iPosBTEvent.getDistances().size() == 0) && (iPosBTEvent.getRss().size() == 0)){ + LOG.info("Ignoring IPosBTEvent, as it neither contains distances nor rss-values"); + return; + } + if ((iPosBTEvent.getDistances().size() == 0) && (iPosBTEvent.getRss().size() > 0)) { + iPosBTEvent.setDistances(translateRssToDistances(iPosBTEvent)); + } + handleIPosBeaconEvent((IPosBeaconEvent) iPosBTEvent); + } + + private void handleIPosUWBEvent(IPosUWBEvent iPosRawdataEvent) { + IPosUWBEvent iPosUWBEvent = iPosRawdataEvent; + if (iPosUWBEvent.getDistances().size() > 0) { + handleIPosBeaconEvent((IPosBeaconEvent) iPosUWBEvent); + }else{ + LOG.info("Ignoring IPosUWBEvent as it does not contain any distances"); + } + } + + private Map<String, Double> translateRssToDistances(IPosBTEvent iPosBTEvent) { + // currently rss is incorrectly translated into distances by creating a copy + return iPosBTEvent.getRss(); + } + + @Override + public SimpleScene.IposConfigWrapper prepareConfigWrapper(IPosArguments.IPosConfigData iposConfigData) { + ToozArgs.ToozConf toozConf = (ToozArgs.ToozConf) iposConfigData; + MonitoringTarget monitoringTarget = toozConf.getMonitoringTargets(); + return createConfigWrapperFromMonitoringTarget(monitoringTarget); + } + + private SimpleScene.IposConfigWrapper createConfigWrapperFromMonitoringTarget(MonitoringTarget monitoringTarget) { + String monitoringRequest = String.format(Tooz.TOOZ_MONREQ, monitoringTarget.getTargetSensorId(), TOOZ_MONITORINGTASKID); + try { + return ProtoJsonMap.fromJson(monitoringRequest, SimpleScene.IposConfigWrapper.class); + } catch (InvalidProtocolBufferException e) { + LOG.info("Warning: IPos-IPS could not be configured properly, as there was a MonitoringTarget that no ConfigWrapper could be created from."); + return null; + } + } + + protected void handleIPosBeaconEvent(IPosBeaconEvent iPosBeaconEvent) { + LOG.info("TOOZ: Attempting to handle IPosBeaconEvent (class: " + iPosBeaconEvent.getClass().getName()); + ToozLocalAgent toozLocalAgent = fetchMonitoringTarget(iPosBeaconEvent); + toozLocalAgent.addOrUpdateDistances(iPosBeaconEvent.getDistances()); + toozLocalAgent.setLocalAgentId(iPosBeaconEvent.getAgentId()); + toozLocalAgent.setTimestamp(iPosBeaconEvent.getTimeStamp()); // the time when the distances to the distant entities have been updated the previous time + LOG.info("TOOZ: ToozExt received rawdata event: " + iPosBeaconEvent.getClass().getName() + + ". Monitoring target (sensorId): " + iPosBeaconEvent.getSensorId() + + ", agent: " + iPosBeaconEvent.getAgentId() + ", timestamp: " + + iPosBeaconEvent.getTimeStamp()); + } + + private ToozLocalAgent fetchMonitoringTarget(IPosBeaconEvent iPosUWBEvent) { + String targetSensorId = iPosUWBEvent.getSensorId(); + ToozLocalAgent localAgent = allCurrentlyMonitoredTargets.stream().filter( + monTarget -> monTarget.getTargetSensorId().equals(targetSensorId)) + .findFirst(). + orElseThrow(() -> new RuntimeException("Warning: ToozExt received rawdata from a position sensor that no MonitoringTarget was defined for")); + return localAgent; + } + + public void initStomp(){ + webSocketService = new WebSocketService(); + ToozExtOutputStomp.setToozExt(this); + LOG.info("Tooz-extension of IPos-FW is attempting to connect to STOMP broker with URI " + Tooz.TOOZ_STOMP_URI + " ( ws://ip:port/endpoint )"); + webSocketService.reconnectWebSocket(Tooz.TOOZ_STOMP_URI, 1000); + } + public void requestPatientInfoFromServiceForGlasses(String _destination, String _patientId) { + try { + Objects.requireNonNull(webSocketService); + String patientId = Objects.requireNonNull(_patientId); + String destination = Objects.requireNonNull(_destination); + _requestPatientInfoFromServiceForGlasses(destination, patientId); + } catch (NullPointerException e) { + LOG.info("Warning: Could not request patient information from tooz-backend for glasses. Possible reasons: (1) STOMP was not propertly initialized, (2) patient id was null."); + } + } + + private void _requestPatientInfoFromServiceForGlasses(String destination, String patientId){ + LOG.info("Tooz-extension of IPos-FW requests the tooz backend service to publish relevant information for distant agent with id " + patientId + " to the tooz smart glasses with id: " + Tooz.TOOZ_SERVICE_GLASS_ID + ". Destination prefix of the backend service: " + Tooz.TOOZ_SERVICE_APPLICATION_DESTINATION_PREFIX); + LOG.info("Resulting destination of the tooz backend service: " + destination); + webSocketService.requestPatientInfoFromServiceForGlasses(destination, patientId); + } + + +} diff --git a/src/main/java/ipos/project/iposextension/tooz/ToozExtInputMqtt.java b/src/main/java/ipos/project/iposextension/tooz/ToozExtInputMqtt.java new file mode 100644 index 0000000000000000000000000000000000000000..f852b72883ef1b5df4ccf8246d2d90aac65551cc --- /dev/null +++ b/src/main/java/ipos/project/iposextension/tooz/ToozExtInputMqtt.java @@ -0,0 +1,42 @@ +package ipos.project.iposextension.tooz; + +import com.google.protobuf.InvalidProtocolBufferException; +import ipos.project.DataModellntegration.iPos_Datamodel.Tooz.MonitoringTarget; +import ipos.project.config.mqtt.Handler; +import ipos.project.config.mqtt.MqttListener; +import ipos.project.devkit.utility.ExternalPubServiceImpl; +import ipos.project.devkit.utility.ProtoJsonMap; +import org.apache.logging.log4j.LogManager; +import org.eclipse.paho.client.mqttv3.MqttMessage; + +@MqttListener(Tooz.TOPIC_TOOZ_ENVIRONMENT) +public class ToozExtInputMqtt implements Handler { + + private static org.apache.logging.log4j.Logger LOG = LogManager.getLogger(); + + private static ExternalPubServiceImpl mqttService; + public static void setMqttService(ExternalPubServiceImpl mqttService) { + ToozExtInputMqtt.mqttService = mqttService; + } + + @Override + public void handle(MqttMessage message) { + handleToozExtInput(message.toString()); + } + + public static void handleToozExtInput(String jsonMsg) { + LOG.info("TOOZ: Handling ToozExtInput: " + jsonMsg); + ipos.models.Tooz.IPosToozExtInputWrapper toozInputWrapper = null; + try { + toozInputWrapper = ProtoJsonMap.fromJson(jsonMsg, ipos.models.Tooz.IPosToozExtInputWrapper.class); + } catch (InvalidProtocolBufferException e) { + e.printStackTrace(); + } + toozInputWrapper.getMonitoringTargetsList().forEach(monitoringTarget -> handleMonitoringTarget(monitoringTarget)); + } + + private static void handleMonitoringTarget(ipos.models.Tooz.MonitoringTarget monitoringTarget_proto) { + MonitoringTarget monitoringTarget_internal = ToozTrans.monTarget_proto2internal(monitoringTarget_proto); + Tooz.handleMonitoringTarget(monitoringTarget_internal); + } +} diff --git a/src/main/java/ipos/project/iposextension/tooz/ToozExtOutputMqtt.java b/src/main/java/ipos/project/iposextension/tooz/ToozExtOutputMqtt.java new file mode 100644 index 0000000000000000000000000000000000000000..42dbe7a367c939f15a3088d04e6bd44515b14f4c --- /dev/null +++ b/src/main/java/ipos/project/iposextension/tooz/ToozExtOutputMqtt.java @@ -0,0 +1,35 @@ +package ipos.project.iposextension.tooz; + +import ipos.project.DataModellntegration.iPos_Datamodel.Tooz.DistantEntity; +import ipos.project.config.mqtt.Handler; +import ipos.project.config.mqtt.MqttListener; +import ipos.project.devkit.utility.ExternalPubServiceImpl; +import ipos.project.devkit.utility.OtherUtility; +import org.apache.logging.log4j.LogManager; +import org.eclipse.paho.client.mqttv3.MqttMessage; + +@MqttListener(Tooz.TOPIC_TOOZ_EXT_OUTPUT) +public class ToozExtOutputMqtt implements Handler { + + private static org.apache.logging.log4j.Logger LOG = LogManager.getLogger(); + + private static ExternalPubServiceImpl mqttService; + public static void setMqttService(ExternalPubServiceImpl mqttService) { + ToozExtOutputMqtt.mqttService = mqttService; + } + + @Override + public void handle(MqttMessage message) {} + + public static void transmitDistantEntity(DistantEntity distantEntity_internal, String topic, String serializationType){ + ipos.models.Tooz.DistantEntity distantEntity_proto = ToozTrans.distantEntity_internal2proto(distantEntity_internal); + logging_tooz(topic, serializationType, distantEntity_proto); + OtherUtility.publishRespectingSerializationType(topic, serializationType, distantEntity_proto); + } + + private static void logging_tooz(String topic, String serializationType, ipos.models.Tooz.DistantEntity distantEntity_proto) { + LOG.info("TOOZ: Publishing " + distantEntity_proto.getClass().getName() + " on topic " + topic + " with serialization type " + serializationType); + LOG.info("TOOZ: "); + } + +} diff --git a/src/main/java/ipos/project/iposextension/tooz/ToozExtOutputStomp.java b/src/main/java/ipos/project/iposextension/tooz/ToozExtOutputStomp.java new file mode 100644 index 0000000000000000000000000000000000000000..65e6693626d8192b2e5b36c8cf16d7258a3a8b86 --- /dev/null +++ b/src/main/java/ipos/project/iposextension/tooz/ToozExtOutputStomp.java @@ -0,0 +1,50 @@ +package ipos.project.iposextension.tooz; + +import ipos.project.DataModellntegration.iPos_Datamodel.Tooz.DistantEntity; +import org.apache.logging.log4j.LogManager; + +import java.util.Objects; +// import de.tu.dresden.swt.medical.ar.toozer_app_java.websocket.WebSocketService.StompSessionHandler; + + + +// webSocketService.setBluetoothName(Tooz.IPOS_IPS); + +public class ToozExtOutputStomp { + + private static org.apache.logging.log4j.Logger LOG = LogManager.getLogger(); + + static private ToozExt toozExt; + + /** + * The web-socket-client to handle stomp-messages. + */ + // private final ___StompSessionClient stompSessionClient = new ___StompSessionClient(new StompSessionHandler()); + + static void setToozExt(ToozExt _toozExt){ + toozExt = Objects.requireNonNull(_toozExt); + } + + static void transmitDistantEntity(DistantEntity _distantEntity, String _topicToozExtOutput) { + try { + Objects.requireNonNull(toozExt); + DistantEntity distantEntity = Objects.requireNonNull(_distantEntity); + String topicToozExtOutput = Objects.requireNonNull(_topicToozExtOutput); + _transmitDistantEntity(distantEntity, topicToozExtOutput); + }catch(NullPointerException e){ + LOG.info("Warning: Could not transmit information on distant entity to tooz-backend. Possible reasons: (1) STOMP was not propertly initialized, (2) distant entity or topic was null."); + } + } + + static void _transmitDistantEntity(DistantEntity distantEntity, String topicToozExtOutput) { + String destination = Tooz.TOOZ_SERVICE_APPLICATION_DESTINATION_PREFIX + Tooz.TOOZ_SERVICE_GLASS_ID; + String stompMessageContent = distantEntity.getDistantEntityId(); //patientId, see ipos.project.iposextension.tooz.Tooz.createDistantEntityFromMonitoredTarget + LOG.info("TOOZ: Attempting to transmit STOMP message containing distant entity ID " + stompMessageContent + " to destination " + destination); + toozExt.requestPatientInfoFromServiceForGlasses(destination, stompMessageContent); + + // Message patientIdMessage = new Message(MessageType.PATIENT_ID, stompMessageContent); + // ToozController.sendMessageToService(destination, patientIdMessage); + //webSocketService.getPatientWithBeaconId(distantEntity.getDistantEntityId()) + + } +} diff --git a/src/main/java/ipos/project/iposextension/tooz/ToozIPosRawdataMqtt.java b/src/main/java/ipos/project/iposextension/tooz/ToozIPosRawdataMqtt.java new file mode 100644 index 0000000000000000000000000000000000000000..5fc8257ff8a0e23d77aa7f4e63bac879c5bdbe1a --- /dev/null +++ b/src/main/java/ipos/project/iposextension/tooz/ToozIPosRawdataMqtt.java @@ -0,0 +1,58 @@ +package ipos.project.iposextension.tooz; + +import com.google.protobuf.InvalidProtocolBufferException; +import ipos.models.GenericSensor; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosBTEvent; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosUWBEvent; +import ipos.project.config.mqtt.Handler; +import ipos.project.config.mqtt.MqttListener; +import ipos.project.devkit.utility.ExternalPubServiceImpl; +import ipos.project.devkit.utility.ProtoJsonMap; +import org.apache.logging.log4j.LogManager; +import org.eclipse.paho.client.mqttv3.MqttMessage; + +@MqttListener(Tooz.TOOZ_MONITORINGTASKID) +public class ToozIPosRawdataMqtt implements Handler { + + private static org.apache.logging.log4j.Logger LOG = LogManager.getLogger(); + + private static ExternalPubServiceImpl mqttService; + public static void setMqttService(ExternalPubServiceImpl mqttService) { + ToozIPosRawdataMqtt.mqttService = mqttService; + } + + // für den generierten code ggf. noch eine höhere Wrapper-Ebene vorsehen: IPosInputWrapper (enthält sowohl PositionWrapper, als auch RawdataWrapper) + // für den generierten code auch vorsehen: eigene XMqtt-Klasse für jeden Wrapper generieren der empfangen werden können soll. + // Also eine Klasse für den IPosInputWrapper und eine andere Klasse für den IPosToozExtInputWrapper. Für die Wrapper-Abbildung in EMF ggf. mit Packages arbeiten + // Es gibt Wrapper die nur ausgehende Nachrichten beinhalten (z.B. bei der tooz-Anwendung: ToozExtOutputWrapper), man muss beim Generieren festlegen können ob + // die Wrapper-Nachrichten überhaupt empfangen werden sollen + @Override + public void handle(MqttMessage message) { + LOG.info("TOOZ: ToozIPosRawdataMqtt received message: " + message.toString()); + handleIPosRawdataWrapper(message.toString()); + } + + // generierter code: grundsätzlich für jede mögliche Nachricht etwas generieren, nicht nur für IPosUWBEvent + private void handleIPosRawdataWrapper(String jsonMsg) { + try { + GenericSensor.IPosRawdataEventWrapper iPosRawdataEventWrapper = ProtoJsonMap.fromJson(jsonMsg, GenericSensor.IPosRawdataEventWrapper.class); + iPosRawdataEventWrapper.getIPosUWBEventList().stream().forEach(iPosUWBEvent -> this.handleIPosUWBEvent(iPosUWBEvent)); + iPosRawdataEventWrapper.getIPosBTEventList().stream().forEach(iPosBTEvent -> this.handleIPosBTEvent(iPosBTEvent)); + } catch (InvalidProtocolBufferException e) { + e.printStackTrace(); + } + } + + private void handleIPosBTEvent(GenericSensor.IPosBTEvent iPosBTEvent_proto) { + IPosBTEvent iPosBTEvent_internal = ToozTrans.bt_proto2IPosRawdata(iPosBTEvent_proto); + LOG.info("TOOZ: BTEvent was transformed into internal data format: " + iPosBTEvent_internal.toString()); + Tooz.handleIPosBTEvent(iPosBTEvent_internal); + } + + private void handleIPosUWBEvent(GenericSensor.IPosUWBEvent iPosUWBEvent_proto) { + IPosUWBEvent iPosUWBEvent_internal = ToozTrans.uwb_proto2IPosRawdata(iPosUWBEvent_proto); + LOG.info("TOOZ: UWBEvent was transformed into internal data format: " + iPosUWBEvent_internal.toString()); + Tooz.handleIPosUWBEvent(iPosUWBEvent_internal); + } + +} diff --git a/src/main/java/ipos/project/iposextension/tooz/ToozLocalAgent.java b/src/main/java/ipos/project/iposextension/tooz/ToozLocalAgent.java new file mode 100644 index 0000000000000000000000000000000000000000..094b636e0ef0c1b8d37a2dce741e183266d6f7df --- /dev/null +++ b/src/main/java/ipos/project/iposextension/tooz/ToozLocalAgent.java @@ -0,0 +1,91 @@ +package ipos.project.iposextension.tooz; + +import java.util.HashMap; +import java.util.Map; + +public class ToozLocalAgent { + + public ToozLocalAgent(String targetSensorId) { + this.targetSensorId = targetSensorId; + this.targetData = new HashMap<>(); + this.localAgentId = ""; + this.timestamp = ""; + this.hasChanged = false; + } + + private Map<String, Double> distances = new HashMap<>(); + + public String getTimestamp() { + return timestamp; + } + + public void setTimestamp(String timestamp) { + this.timestamp = timestamp; + } + + private String timestamp; // the time when the distances to the distant entities have been updated the previous time + + /** + * Returns true if this instance of ToozLocalAgent has to be regarded as having changed since the last + * update of the Tooz-backend, and false otherwise. + * @return + */ + public boolean hasChangedSinceLastUpdate() { + return hasChanged; + } + + /** + * Sets the boolean value that defines whether this instance of ToozLocalAgent has to be + * regarde as having changed since last update of the Tooz-backend + * @param hasChanged + */ + public void setHasChangedSinceLastUpdate(boolean hasChanged) { + this.hasChanged = hasChanged; + } + + private boolean hasChanged; + + private String localAgentId; + Map<String, String> targetData; + + protected Map<String, Double> getCopyOfDistances() { + HashMap<String, Double> copyOfDistances = new HashMap<>(); + copyOfDistances.putAll(distances); + return copyOfDistances; + } + + protected void addDistance(String sensorId, Double distance){ + distances.put(sensorId, distance); + } + + public String getTargetSensorId() { + return targetSensorId; + } + + private String targetSensorId; + + public void addOrUpdateDistances(Map<String, Double> map){ + if (map.size() > 0) { + map.entrySet().forEach(entry -> distances.put(entry.getKey(), entry.getValue())); // put-function creates new entry, or updates existing one + this.hasChanged = true; + } + } + + public String getLocalAgentId() { + return localAgentId; + } + + public void setLocalAgentId(String localAgentId) { + this.localAgentId = localAgentId; + } + + + public Map<String, String> getTargetData() { + return targetData; + } + + public void setTargetData(Map<String, String> targetData) { + this.targetData = targetData; + } + +} diff --git a/src/main/java/ipos/project/iposextension/tooz/ToozTrans.java b/src/main/java/ipos/project/iposextension/tooz/ToozTrans.java new file mode 100644 index 0000000000000000000000000000000000000000..84160f3ca63aba111a54b83b495debf3fa91b82c --- /dev/null +++ b/src/main/java/ipos/project/iposextension/tooz/ToozTrans.java @@ -0,0 +1,68 @@ +package ipos.project.iposextension.tooz; + +import ipos.models.GenericSensor; +import ipos.models.Tooz; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosBTEvent; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosBeaconEvent; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosDevKitFactory; +import ipos.project.DataModellntegration.iPos_Datamodel.IPosDevKit.IPosUWBEvent; +import ipos.project.DataModellntegration.iPos_Datamodel.Tooz.DistantEntity; +import ipos.project.DataModellntegration.iPos_Datamodel.Tooz.MonitoringTarget; +import ipos.project.DataModellntegration.iPos_Datamodel.Tooz.ToozFactory; + +import java.util.HashMap; +import java.util.Map; + +public class ToozTrans { + private static IPosDevKitFactory devKitFactory = IPosDevKitFactory.eINSTANCE; + private static ToozFactory toozFactory = ToozFactory.eINSTANCE; + + + public static IPosUWBEvent uwb_proto2IPosRawdata(GenericSensor.IPosUWBEvent iPosUWBEvent_proto) { + IPosUWBEvent iPosUWBEvent_internal = devKitFactory.createIPosUWBEvent(); + return ToozTrans.beacon_proto2IPosRawdata(iPosUWBEvent_internal, iPosUWBEvent_proto.getAgentId(), iPosUWBEvent_proto.getSensorId(), iPosUWBEvent_proto.getAgentType(), iPosUWBEvent_proto.getSensorType(), iPosUWBEvent_proto.getTimeStamp(), iPosUWBEvent_proto.getDistancesMap()); + } + + public static IPosBTEvent bt_proto2IPosRawdata(GenericSensor.IPosBTEvent iPosBTEvent_proto) { + IPosBTEvent iPosBTEvent_internal = devKitFactory.createIPosBTEvent(); + iPosBTEvent_internal = ToozTrans.beacon_proto2IPosRawdata(iPosBTEvent_internal, iPosBTEvent_proto.getAgentId(), iPosBTEvent_proto.getSensorId(), iPosBTEvent_proto.getAgentType(), iPosBTEvent_proto.getSensorType(), iPosBTEvent_proto.getTimeStamp(), iPosBTEvent_proto.getDistancesMap()); + iPosBTEvent_internal.setRss(Map_String2Double(iPosBTEvent_proto.getRssMap())); + return iPosBTEvent_internal; + } + + private static <T extends IPosBeaconEvent> T beacon_proto2IPosRawdata(T iPosBeaconEvent_internal, String agentId, String sensorId, String agentType, String sensorType, String timeStamp, java.util.Map<String, String> distancesMap) { + iPosBeaconEvent_internal.setAgentId(agentId); + iPosBeaconEvent_internal.setSensorId(sensorId); + iPosBeaconEvent_internal.setAgentType(agentType); + iPosBeaconEvent_internal.setSensorType(sensorType); + iPosBeaconEvent_internal.setTimeStamp(timeStamp); + iPosBeaconEvent_internal.setDistances(Map_String2Double(distancesMap)); + return iPosBeaconEvent_internal; + } + + private static Map<String, Double> Map_String2Double(Map<String, String> distances) { + HashMap<String, Double> distancesDouble = new HashMap<>(); + for (Map.Entry<String, String> distanceEntry : distances.entrySet()){ + distancesDouble.put(distanceEntry.getKey(), Double.valueOf(distanceEntry.getValue())); + } + return distancesDouble; + } + + public static MonitoringTarget monTarget_proto2internal(Tooz.MonitoringTarget monitoringTarget_proto) { + MonitoringTarget monitoringTarget_internal = toozFactory.createMonitoringTarget(); + monitoringTarget_internal.setTargetSensorId(monitoringTarget_proto.getTargetSensorId()); + return monitoringTarget_internal; + } + + public static Tooz.DistantEntity distantEntity_internal2proto(DistantEntity distantEntity_internal) { + Tooz.DistantEntity.Builder distantEntity_proto = Tooz.DistantEntity.newBuilder(); + distantEntity_proto.setLocalSensorId(distantEntity_internal.getLocalSensorId()); + distantEntity_proto.setLocalAgentId(distantEntity_internal.getLocalAgentId()); + distantEntity_proto.setDistantEntityId(distantEntity_internal.getDistantEntityId()); + distantEntity_proto.setDistance(distantEntity_internal.getDistance()); + distantEntity_proto.setProximityIndex(distantEntity_internal.getProximityIndex()); + distantEntity_proto.putAllEntityData(distantEntity_internal.getEntityData()); + return distantEntity_proto.build(); + } + +} diff --git a/src/main/java/ipos/project/iposextension/tooz/websocket/Message.java b/src/main/java/ipos/project/iposextension/tooz/websocket/Message.java new file mode 100644 index 0000000000000000000000000000000000000000..fdb87ca23f5ac61afd1abbc12f5161f38808d23e --- /dev/null +++ b/src/main/java/ipos/project/iposextension/tooz/websocket/Message.java @@ -0,0 +1,95 @@ +package ipos.project.iposextension.tooz.websocket; + +import org.jetbrains.annotations.NotNull; + +import java.util.ArrayList; +import java.util.List; + +/** + * Defined format for a message to send or receive with the {@link StompSessionClient}. + */ +public class Message { + + /** + * Type of the message. + */ + private MessageType messageType; + + /** + * Message-content as a {@link List} of {@link String}. + * Every list-item represents a singe page to show on the glasses. + * If the message will be used as command, only one item needs to be in the {@link List}. + */ + private List<String> content; + + /** + * Defines a default-message. + * Use this constructor only for initialisation while a reflection-process. + * The default {@link MessageType} is {@link MessageType#UNDEFINED}. + */ + private Message() { + this(MessageType.UNDEFINED); + } + + /** + * Creates an empty message with a {@link MessageType}. + * + * @param messageType type for the message + */ + public Message(final @NotNull MessageType messageType) { + setMessageType(messageType); + setContent(new ArrayList<>()); + } + + /** + * Creates a message. + * @param messageType type for the message. + * @param message a message as an item in the message-content + */ + public Message(final @NotNull MessageType messageType, final @NotNull String message) { + this(messageType); + addInformationToContent(message); + } + + /** + * Sets the {@link MessageType}. + * + * @param messageType new type for the message. + */ + private void setMessageType(final @NotNull MessageType messageType) { + this.messageType = messageType; + } + + /** + * Gives the {@link MessageType} of the message. + * + * @return the {@link MessageType} of the message. + */ + public MessageType getMessageType() { + return messageType; + } + + /** + * Adds a new item to the message-content. + * @param information content for the new item in the message-content. + */ + public void addInformationToContent(final @NotNull String information) { + content.add(information); + } + + /** + * Sets a {@link List} with {@link String}s as new content for the message. + * @param content a {@link List} of {@link String} as new content for the message. + */ + private void setContent(final @NotNull List<String> content) { + this.content = content; + } + + /** + * Gives the complete content of the message as {@link List} of {@link String}. + * @return the complete content of the message. + */ + public List<String> getContent() { + return content; + } +} diff --git a/src/main/java/ipos/project/iposextension/tooz/websocket/MessageType.java b/src/main/java/ipos/project/iposextension/tooz/websocket/MessageType.java new file mode 100644 index 0000000000000000000000000000000000000000..ef7c13e5cfc46fb52c9dc44882625d052867d091 --- /dev/null +++ b/src/main/java/ipos/project/iposextension/tooz/websocket/MessageType.java @@ -0,0 +1,54 @@ +package ipos.project.iposextension.tooz.websocket; + +/** + * Types of message they can be send to the medical-ar-service. + */ +public enum MessageType { + + /** + * Defines a message with a patient-id in the message-content. + */ + PATIENT_ID, + + /** + * Defines a emergency-message. + */ + EMERGENCY, + + /** + * Defines a broadcast-message. Broadcasts are send to all clients. + */ + BROADCAST, + + /** + * Defines a message with beacon-information. + */ + BEACON, + + /** + * Defines a button-pressed event-message. + */ + BUTTON_PRESSED, + + + /** + * Defines a massage with content to display in the toozer-apps head. + */ + DISPLAY_HEAD, + + /** + * Defines a message with content to display in the toozer-apps text-container. + */ + DISPLAY_TEXT, + + + /** + * Defines a test-message. + */ + TEST, + + /** + * Defines a undefined message. These messages should not be processed. + */ + UNDEFINED +} diff --git a/src/main/java/ipos/project/iposextension/tooz/websocket/StompSessionClient.java b/src/main/java/ipos/project/iposextension/tooz/websocket/StompSessionClient.java new file mode 100644 index 0000000000000000000000000000000000000000..95a54e709d75c7413c75278f885d9f76ae66ad02 --- /dev/null +++ b/src/main/java/ipos/project/iposextension/tooz/websocket/StompSessionClient.java @@ -0,0 +1,311 @@ +package ipos.project.iposextension.tooz.websocket; + +import org.apache.logging.log4j.LogManager; +import org.jetbrains.annotations.NotNull; +import org.springframework.messaging.converter.MappingJackson2MessageConverter; +import org.springframework.messaging.simp.stomp.StompSession; +import org.springframework.messaging.simp.stomp.StompSessionHandlerAdapter; +import org.springframework.web.client.ResourceAccessException; +import org.springframework.web.socket.client.standard.StandardWebSocketClient; +import org.springframework.web.socket.messaging.WebSocketStompClient; +import org.springframework.web.socket.sockjs.client.SockJsClient; +import org.springframework.web.socket.sockjs.client.Transport; +import org.springframework.web.socket.sockjs.client.WebSocketTransport; + +import java.util.*; +import java.util.concurrent.Semaphore; +import java.util.concurrent.atomic.AtomicBoolean; + +/** + * <p> + * A client to connect with a web-socket to the medical-ar-service. + * This client creates a stomp-session within the web-socket to handle all messages and events. + * </p> + * <p> + * Currently there is no authentication supported. + * </p> + */ +public class StompSessionClient { + private static org.apache.logging.log4j.Logger LOG = LogManager.getLogger(); + // Atomic structures and semaphores to handling internal threading. + private final AtomicBoolean disconnect = new AtomicBoolean(true); + private final Semaphore connectionMutex = new Semaphore(1); + + /** + * Map with stomp-subscriptions. + */ + private final Map<String, StompSession.Subscription> subscriptions = new HashMap<>(); + + /** + * The web-socket to connect to the medical-ar-service. + */ + private volatile StompSession webSocketSession; + + /** + * The stomp-session. + */ + private final StompSessionHandlerAdapter sessionHandler; + + /** + * Creates a client to connect with a web-socket to a service. + * + * @param sessionHandler handler to manage stomp-messages as events. + */ + StompSessionClient(final @NotNull StompSessionHandlerAdapter sessionHandler) { + this.sessionHandler = sessionHandler; + } + + /** + * Connects to a given destination with a given timeout. + * + * @param uri the destination to connect with. + * @param waitMillis the timeout to wait for a response. + */ + private void connect(final @NotNull String uri, final long waitMillis) { + new Thread(new ConnectWebSocket(uri, createWebSocketStompClient(), waitMillis)).start(); + } + + /** + * Disconnects the client from the destination. + */ + void disconnect() { + new Thread(new DisconnectWebSocket()).start(); + } + + /** + * Disconnects the client first from the current destination + * and try to reconnect to the given destination with a timeout. + * + * @param uri the destination to reconnect with. + * @param waitMillis the timeout to wait for a response. + */ + void reconnect(final @NotNull String uri, final long waitMillis) { + disconnect(); + connect(uri, waitMillis); + } + + /** + * Gives the connection-state of the client. + * + * @return {@code true}, if the client is currently connected to a destination. + */ + boolean isConnected() { + return webSocketSession.isConnected(); + } + + /** + * Subscribe to a new destination, if the client is connected. It's a threaded function and + * blocks the semaphore while working. + * + * @param destination the new destination to subscribe. + */ + void subscribe(final @NotNull String destination) { + new Thread(() -> { + try { + connectionMutex.acquire(); + + if (webSocketSession != null && webSocketSession.isConnected() && !subscriptions.containsKey(destination)) { + LOG.info("subscribe to: %s", destination); + subscriptions.put(destination, webSocketSession.subscribe(destination, sessionHandler)); + } + } catch (InterruptedException e) { + LOG.info(e); + } catch (Exception e) { + LOG.info(e); + } finally { + connectionMutex.release(); + } + }).start(); + } + + /** + * Unsubscribe from a subscribed stomp-destination. It's a threaded function and + * blocks the semaphore while working. + * + * @param destination the destination to unsubscribe. + */ + void unsubscribe(final @NotNull String destination) { + new Thread(() -> { + try { + connectionMutex.acquire(); + + if (webSocketSession != null && webSocketSession.isConnected() && subscriptions.containsKey(destination)) { + LOG.info("unsubscribe to: %s", destination); + Objects.requireNonNull(subscriptions.remove(destination)).unsubscribe(); + } + } catch (InterruptedException e) { + LOG.info(e); + } catch (Exception e) { + LOG.info(e); + } finally { + connectionMutex.release(); + } + }).start(); + } + + /** + * Subscription-state for a given stomp-destination. + * + * @param destination the destination to check its subscription-state. + * @return {@code true}, if the destination has been subscribed. + */ + boolean hasSubscribedToDestination(final String destination) { + return subscriptions.containsKey(destination); + } + + /** + * Sends a message to a given stomp-destination. + * The destination should be supported by the service connected with. + * It's a threaded function and blocks the semaphore while working. + * + * @param destination the destination to send a message. + * @param message the message to send. + * The concrete class of the message-object should be supported by the service connected with. + */ + void sendMessage(final @NotNull String destination, final @NotNull Object message) { + new Thread(() -> { + try { + connectionMutex.acquire(); + + if (webSocketSession != null && webSocketSession.isConnected()) { + webSocketSession.send(destination, message); + LOG.info("send message '%s' to '%s'", message.toString(), destination); + } + } catch (InterruptedException e) { + LOG.info(e); + } catch (Exception e) { + LOG.info(e); + } finally { + connectionMutex.release(); + } + }).start(); + } + + /** + * Helper-function to create a web-socket client with an underlying stomp-session. + * @return a web-socket-client wit underlying stomp-session. + */ + private WebSocketStompClient createWebSocketStompClient() { + final StandardWebSocketClient client = new StandardWebSocketClient(); + + final List<Transport> transports = new ArrayList<>(1); + transports.add(new WebSocketTransport(client)); + + final SockJsClient sockJsClient = new SockJsClient(transports); + + final WebSocketStompClient webSocketStompClient = new WebSocketStompClient(sockJsClient); + webSocketStompClient.setMessageConverter(new MappingJackson2MessageConverter()); + + return webSocketStompClient; + } + + /** + * Inner class to create a web-socket-connection to handle stomp-messages. + */ + private class ConnectWebSocket implements Runnable { + + /** + * The destination to connect with. + */ + final private String uri; + + /** + * The web-socket-client to connect wit a service. + */ + final private WebSocketStompClient webSocketStompClient; + + /** + * Timeout for the connection-response. + */ + final private long waitMillis; + + /** + * Creates a web-socket with a given stomp-client. + * @param uri the destination to connect with. + * @param webSocketStompClient the stomp-client to handle stomp-messages. + * @param waitMillis the timeout for the connection-response. + */ + ConnectWebSocket(final String uri, final WebSocketStompClient webSocketStompClient, + final long waitMillis) { + this.uri = uri; + this.webSocketStompClient = webSocketStompClient; + this.waitMillis = waitMillis; + } + + /** + * Start the connection with the destination and listen for stomp-messages to handle them. + * This function should be run in a thread and blocks the semaphore while the connection-process. + * The connection-process restarts every time a timeout exists. + */ + public void run() { + try { + connectionMutex.acquire(); + disconnect.set(false); + + final AtomicBoolean isNotConnected = new AtomicBoolean(true); + + do { + if (disconnect.get()) { + LOG.info("disconnect occurred -> stop self"); + break; + } + + try { + webSocketSession = webSocketStompClient.connect(uri, sessionHandler).get(); + } catch (ResourceAccessException e) { + LOG.info("can not connect to: %s", uri); + } catch (Exception e) { + LOG.info(e); + } + + if (webSocketSession == null || !webSocketSession.isConnected()) { + LOG.info("not connected -> retry connect in %s seconds", 0.001f * waitMillis); + + try { + Thread.sleep(waitMillis); + } catch (InterruptedException e) { + LOG.info("thread has been interrupted -> stop self"); + break; + } + } else { + isNotConnected.set(false); + } + } while (isNotConnected.get()); + } catch (InterruptedException e) { + LOG.info(e); + } finally { + connectionMutex.release(); + } + } + } + + /** + * Disconnects the client from the destination. + * This function should be run in a thread and blocks the semaphore while the disconnection-process. + */ + private class DisconnectWebSocket implements Runnable { + + public void run() { + try { + disconnect.set(true); + connectionMutex.acquire(); + + if (webSocketSession != null) { + if (webSocketSession.isConnected()) { + subscriptions.forEach((k, v) -> v.unsubscribe()); + webSocketSession.disconnect(); + } + + subscriptions.clear(); + webSocketSession = null; + } + } catch (InterruptedException e) { + LOG.info(e); + } catch (Exception e) { + LOG.info(e); + } finally { + connectionMutex.release(); + } + } + } +} diff --git a/src/main/java/ipos/project/iposextension/tooz/websocket/ToozController.java b/src/main/java/ipos/project/iposextension/tooz/websocket/ToozController.java new file mode 100644 index 0000000000000000000000000000000000000000..d8d45002b2833a77d82bdc301325278483b25e4a --- /dev/null +++ b/src/main/java/ipos/project/iposextension/tooz/websocket/ToozController.java @@ -0,0 +1,22 @@ +package ipos.project.iposextension.tooz.websocket; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.messaging.simp.SimpMessagingTemplate; +import org.springframework.stereotype.Controller; + +@Controller +public class ToozController { + + @Autowired + private static SimpMessagingTemplate template; + + //@Autowired + //public ToozController(SimpMessagingTemplate template){ + //this.template = template; + //} + + public static void sendMessageToService(String destination, Message message){ + template.convertAndSend(destination, message); + } + +} diff --git a/src/main/java/ipos/project/iposextension/tooz/websocket/WebSocketConfiguration.java b/src/main/java/ipos/project/iposextension/tooz/websocket/WebSocketConfiguration.java new file mode 100644 index 0000000000000000000000000000000000000000..4ce95392b2a443ae2f20918b04bcf7975a18c98f --- /dev/null +++ b/src/main/java/ipos/project/iposextension/tooz/websocket/WebSocketConfiguration.java @@ -0,0 +1,48 @@ +package ipos.project.iposextension.tooz.websocket; + +import org.apache.logging.log4j.LogManager; +import org.springframework.context.annotation.Configuration; +import org.springframework.messaging.simp.config.MessageBrokerRegistry; +import org.springframework.scheduling.concurrent.DefaultManagedTaskScheduler; +import org.springframework.web.socket.config.annotation.EnableWebSocketMessageBroker; +import org.springframework.web.socket.config.annotation.StompEndpointRegistry; +import org.springframework.web.socket.config.annotation.WebSocketMessageBrokerConfigurer; + +/** + * Simple configuration to use WebSockets as server/de.tu.dresden.swt.medical.ar.service. + */ +@Configuration +@EnableWebSocketMessageBroker +public class WebSocketConfiguration implements WebSocketMessageBrokerConfigurer { + private static org.apache.logging.log4j.Logger LOG = LogManager.getLogger(); + + /** + * Configures the MessageBroker-registry. + * + * @param config {@link MessageBrokerRegistry} to become configured + */ + @Override + public void configureMessageBroker(final MessageBrokerRegistry config) { + // their service receives messages + //config.enableSimpleBroker("/medical_ar_app") + // .setTaskScheduler(new DefaultManagedTaskScheduler()) + // .setHeartbeatValue(new long[]{0, 0}); + //config.enableStompBrokerRelay("destprefixes"); + // ipos-fw receives nothing... + // config.setApplicationDestinationPrefixes("/medical_ar_app"); + + // LOG.debug("Simple STOMP-broker enabled."); + } + + /** + * Configures the STOMP-endpoint. + * + * @param registry {@link StompEndpointRegistry} to create endpoint for STOMP-messages + */ + @Override + public void registerStompEndpoints(final StompEndpointRegistry registry) { + registry.addEndpoint("/iposfw_stomp_endpoint").setAllowedOrigins("*").withSockJS(); + + LOG.debug("Endpoints registered."); + } +} diff --git a/src/main/java/ipos/project/iposextension/tooz/websocket/WebSocketService.java b/src/main/java/ipos/project/iposextension/tooz/websocket/WebSocketService.java new file mode 100644 index 0000000000000000000000000000000000000000..60b89388ebf16e76df7f2411e437d63cd9a2e85a --- /dev/null +++ b/src/main/java/ipos/project/iposextension/tooz/websocket/WebSocketService.java @@ -0,0 +1,245 @@ +package ipos.project.iposextension.tooz.websocket; + +import ipos.project.iposextension.tooz.Tooz; +import org.apache.logging.log4j.LogManager; +import org.jetbrains.annotations.NotNull; +import org.springframework.messaging.simp.stomp.*; + +import java.lang.reflect.Type; + + + +/** + * A background-android-service to handle the web-socket-connection with an underlying stomp-connection. + */ +public class WebSocketService { + + private static org.apache.logging.log4j.Logger LOG = LogManager.getLogger(); + + /** + * The web-socket-client to handle stomp-messages. + */ + private final StompSessionClient stompSessionClient = new StompSessionClient(new StompSessionHandler()); + + + /** + * Name of the bluetooth-device. + */ + private String bluetoothName = "glass_default"; + + /** + * The destination for the service to connect with. + */ + private String ownDestination = null; + + /** + * Sets the bluetooth-device-name to the background-service + * It is used to identify the android-device at the medical-ar-service. + * + * @param bluetoothName + */ + public void setBluetoothName(final @NotNull String bluetoothName) { + if (ownDestination != null) + return; + + this.bluetoothName = bluetoothName; + ownDestination = "/medical_ar_app/" + bluetoothName; + } + + /** + * Gives the connection-state of the internal web-socket-connection. + * + * @return {@code true}, if a connection is established. + */ + public boolean isConnected() { + return stompSessionClient.isConnected(); + } + + /** + * Reconnects the internal web-socket-client wit a given destination and timeout. + * Before the new connection will be created, the current connection will be destroyed. + * + * @param uri the new destination to connect with. + * @param waitMillis timeout for the connection-response. + */ + public void reconnectWebSocket(final @NotNull String uri, final long waitMillis) { + stompSessionClient.reconnect(uri, waitMillis); + } + + public void requestPatientInfoFromServiceForGlasses(String destination, String patientId){ + final Message message = new Message(MessageType.PATIENT_ID, patientId); + + stompSessionClient.sendMessage(destination, + message); + } + + /** + * Sends a message to the service to get patient-information. + * + * @param patientId the patient-id of the patient to get the information about. + */ + public void getPatient(final @NotNull String patientId) { + final Message message = new Message(MessageType.PATIENT_ID, patientId); + + stompSessionClient.sendMessage(ownDestination, + message); + } + + /** + * Sends a message to the service to get patient-information with a beacon-id. + * + * @param beackonId the beacon-id of the patient to get the information about. + */ + public void getPatientWithBeaconId(final @NotNull String beackonId) { + final Message message = new Message(MessageType.BEACON, beackonId); + + stompSessionClient.sendMessage(ownDestination, + message); + } + + /** + * Sends a message to the service wit a button-pressed-event. + */ + public void buttonPressed() { + stompSessionClient.sendMessage(ownDestination, + new Message(MessageType.BUTTON_PRESSED)); + } + + /** + * Subscribes to a given stomp-destination. + * + * @param channelName the name of the stomp-destination to connect with. + */ + public void subscribeToChannel(final @NotNull String channelName) { + stompSessionClient.subscribe(channelName); + } + + /** + * Unsubscribe from a given stomp-destination. + * + * @param channelName the name of the stomp-destination to disconnect from. + */ + public void unsubscribeToChannel(final @NotNull String channelName) { + stompSessionClient.unsubscribe(channelName); + } + + /** + * An internal event-handling-class to handle events from a stomp-connection. + */ + private class StompSessionHandler extends StompSessionHandlerAdapter { + + // Mutex for thread-handling. + private final Object mutex = new Object(); + + /** + * OnAfterConnected-event-handle. Gets called after a stomp-connection has been established. + * Subscribes to the broadcast-destination and an id-destination to get only messages for a single android-device. + * Forwards the exception to all connected {@linkk WebSocketEventListener} as an OnConnectionEvent. + * + * @param session the session that has been created. + * @param connectedHeaders the connection-header send from the connected service. + */ + @Override + public void afterConnected(final StompSession session, final StompHeaders connectedHeaders) { + synchronized (mutex) { + LOG.info("session started: ID -> %s ", session.getSessionId()); + + stompSessionClient.subscribe("/broadcast"); + stompSessionClient.subscribe(String.format("/glass/%s", bluetoothName)); + + // webSocketEventListeners.forEach(listener -> listener.onConnectionEvent(true)); + } + } + + /** + * OnException-event-handle. Gets called if an exception has been thrown. + * Forwards the exception to all connected {@linkk WebSocketEventListener} as an OnErrorEvent. + * + * @param session the session where the exception has been thrown. + * @param command the stomp-command where the exception has been thrown. + * @param headers the stomp-header where the exception has been thrown. + * @param payload the stomp-message-content where the exception has been thrown. + * @param exception the exception that has been thrown. + */ + @Override + public void handleException(final StompSession session, final StompCommand command, + final StompHeaders headers, final byte[] payload, + final Throwable exception) { + //webSocketEventListeners.forEach(listener -> listener.onErrorEvent(exception)); + } + + /** + * Sets the {@link Type} of the messages that should be handled by the stomp-client. + * Currently the {@link Type} is {@link Message}. + * The {@link StompHeaders} can be used to differentiate between types of messages in the future. + * + * @param headers the stomp-header to differentiate between types of messages. + * @return the {@link Type} of the message to reflect. + */ + @Override + @NotNull + public Type getPayloadType(final StompHeaders headers) { + return Message.class; + } + + /** + * <p> + * OnHandleMessage-event-handle. Gets called after a message has been received. + * Only messages to a subscribed stomp-destination will be processed. + * Forwards the {@link Message} to all connected {@linkk WebSocketEventListener} as an OnMessageReceivedEvent. + * </p> + * + * <p> + * Creates the payload with reflection based on the result of the {@link StompSessionHandler#getPayloadType} function. + * If you're change this function, you need to include these changes here. + * </p> + * + * @param headers the stomp-header to differentiate between types of messages. + * @param payload the reflected message-content from the received frame. + */ + @Override + public void handleFrame(final StompHeaders headers, final Object payload) { + synchronized (mutex) { + final Message message = (Message) payload; + final String destination = headers.getDestination(); + + if (destination != null && stompSessionClient.hasSubscribedToDestination(destination)) { + // webSocketEventListeners.forEach( + // listener -> listener.onMessageReceivedEvent(message)); + } + } + } + + /** + * <p> + * OnHandleSendError-event-handler. Gets called every time an exception while sending a message has been thrown. + * </p> + * + * <P> + * If a connection has been lost this function forwards the {@link Exception} to all connected + * {@linkk WebSocketEventListener} as an OnConnectionEvent and OnDisconnectOccurredEvent. + * </P> + * + * <p> + * In any other cases this function forwards the {@link Exception} to all connected + * {@linkk WebSocketEventListener} as an OnErrorEvent. + * </p> + * + * @param session the session where the exception has been thrown. + * @param exception the exception that has been thrown. + */ + @Override + public void handleTransportError(final StompSession session, final Throwable exception) { + if (exception instanceof ConnectionLostException) { + LOG.info("connection lost -> create a new one"); + + // webSocketEventListeners.forEach(listener -> listener.onConnectionEvent(false)); + // webSocketEventListeners.forEach(WebSocketEventListener::onDisconnectOccurredEvent); + + return; + } + + //webSocketEventListeners.forEach(listener -> listener.onErrorEvent(exception)); + } + } +} \ No newline at end of file diff --git a/src/main/resources/GenericSensor.proto b/src/main/resources/GenericSensor.proto new file mode 100644 index 0000000000000000000000000000000000000000..bff038ddbc540d50f8b0ba0ec9aaf5c1c9dd1f71 --- /dev/null +++ b/src/main/resources/GenericSensor.proto @@ -0,0 +1,91 @@ +syntax = "proto3"; + +package ipos.models; + +import "SimpleScene.proto"; + +message SensorEventWrapper{ // mqtt-like protocols: just une kind of protobuf-message shall be sent over a topic, therefore wrapper-messages are used to encapsulate different kinds of protobuf-messages + repeated RFIDRawDataEvent rfidRawDataEvent = 1; + repeated NFCRawDataEvent nfcRawDataEvent = 2; + repeated BarcodeRawDataEvent barcodeRawDataEvent = 3; + repeated OtherProxRawDataEvent otherProxRawDataEvent = 4; + repeated BluetoothRawDataEvent bluetoothRawDataEvent = 5; + repeated UWBRawDataEvent uwbRawDataEvent = 6; + repeated OtherBeaconRawDataEvent otherBeaconRawDataEvent = 7; + repeated IMURawDataEvent imuRawDataEvent = 8; + repeated SensorPositionEvent sensorPositionEvent = 9; +} + +message RFIDRawDataEvent { + string timestamp = 1; // https://en.wikipedia.org/wiki/ISO_8601 + string tagId = 2; + string type = 3; + string scannerId = 4; + string location = 5; +} + +message NFCRawDataEvent { + string timestamp = 1; + string tagId = 2; + string type = 3; + string scannerId = 4; + map<string, string> tagData = 5; +} + +message BarcodeRawDataEvent { + string timestamp = 1; + string tagId = 2; + string type = 3; + string scannerId = 4; +} + +message OtherProxRawDataEvent { + string timestamp = 1; + string tagId = 2; + string type = 3; + string scannerId = 4; + map<string, string> data = 5; +} + +message BluetoothRawDataEvent { + string timestamp = 1; + string sensorId = 2; + map<string, string> distances = 3; // beacon-id -> distance + string type = 4; + map<string, string> rss = 5; // beacon-id -> rss + +} + +message UWBRawDataEvent { + string timestamp = 1; + string sensorId = 2; + map<string, string> distances = 3; // beacon-id -> distance + string type = 4; +} + +message OtherBeaconRawDataEvent { + string timestamp = 1; + string sensorId = 2; + map<string, string> distances = 3; // beacon-id -> distance + string type = 4; + map<string, string> data = 5; +} + +message IMURawDataEvent { + string timestamp = 1; + string sensorId = 2; + float yaw = 3; // angular rate (rad/s), https://en.wikipedia.org/wiki/Aircraft_principal_axes#Transverse_axis_(pitch) + float pitch = 4; + float roll = 5; + float x = 6; // linear acceleration, m/(s^2) + float y = 7; + float z = 8; +} + +message SensorPositionEvent { + string sensorId = 1; //unique + IposPosition position = 2; + IposSimpleOrientation orientation = 3; + string lastPosUpdate = 4; // https://en.wikipedia.org/wiki/ISO_8601 +} + diff --git a/src/main/resources/SimpleScene.proto b/src/main/resources/SimpleScene.proto index e343c6c5db7cb6a990261cea7622d8f1269449b9..79aa262ba9416e19aec32aa3f097b9e0a15e98d5 100644 --- a/src/main/resources/SimpleScene.proto +++ b/src/main/resources/SimpleScene.proto @@ -2,52 +2,83 @@ syntax = "proto3"; package ipos.models; -//option java_multiple_files = true; -//option java_package = "ipos.project.models"; +message IposConfigWrapper { // wrapper-message for configuration-topic + repeated IposFrameConfig frames = 1; + repeated IposObject objects = 2; // an object must be either in this list + repeated IposObjectConfig objectConfigs = 3; // or in this list, not in both + repeated POI pois = 4; + repeated RefSystem refsystems = 5; + repeated IposMonitoringRequest monitoringRequests = 6; +} -message IposConfig { - repeated IposFrame frames = 1; - repeated IposObject objects = 2; +message IposObjectConfig { + string id = 1; // unique for each object, but there may be multiple positioning sensors for that object + string sensorId = 2; // unique (each sensor localizes a single object) + string agentType = 3; // CeTI will send BOX,BIN,ZONE,ROBOT,HUMAN,OTHER + string sensorType = 4; // BLUETOOTH, UWB, NFC, RFID, IMU... } +// note: IposObjectConfigs are used to register sensors. Beacon-positions are POIs and should be sent to sensor after registration. Bluetooth/UWB sensor need to know a reference system id. All Beacon-position sent to the Bluetooth/UWB sensor should have the same reference system id -message IposPositionUpdate { - repeated IposObject objects = 1; +message IposPositionEvent { + repeated IposObject object = 1; + string type = 2; // may be ExitNotification or EntryNotification } message IposObject { - - // required: string id = 1; // unique for each object, but there may be multiple sensors - string sensor_id = 2; // unique + string sensorId = 2; //unique string type = 3; // Applications may send BOX,BIN,ZONE,ROBOT,HUMAN,OTHER - - // optional: - IposRelativePosition position = 4; - IposSimpleOrientation orientation = 5; - string last_pos_update = 6; // https://en.wikipedia.org/wiki/ISO_8601 - + string sensorType = 4; // BLUETOOTH, UWB, NFC, RFID, IMU + IposPosition position = 5; + IposSimpleOrientation orientation = 6; + string lastPosUpdate = 7; // https://en.wikipedia.org/wiki/ISO_8601 } -message IposFrame { +message IposFrameConfig { string id = 1; // unique for every frame, used for relative coordinates IposSpace space = 2; // cube defining the extension, might be (0,0,0) - IposPosition position = 3; // centre of the "frame" cube, absolute - IposSimpleOrientation orientation = 4; // orientation of the frame - float delta = 5; // min. Position to trigger a position update + IposPosition position = 3; // centre of the "frame" cube +} + +message RefSystem { + string id = 1; + IposPosition position = 2; // position of origin of RefSystem. May be relative or absolute } -// relative coordinates -message IposRelativePosition { - string frame_id = 1; - IposPosition pos = 2; +message IposMonitoringRequest { + string frameId = 1; + float delta = 2; // min. change in position to trigger a position update, setting delta and updateFrequency to -1 cancels the (existing) monitoring task + float updateFrequency = 3; // defines how many times per second a PositionUpdateEvent is sent + repeated string type = 4; // object-types to be observed; CeTI will send BOX,BIN,ZONE,ROBOT,HUMAN,OTHER + repeated string id = 5; // object-ids to be observed + string fusionStrategy = 6; // e.g., "accuracy" for accuracy-optimized monitoring if multiple positions sensors per agent + bool exit_notification = 7; // IPos will notify receiver when object has left the frame + repeated string properties = 8; // properties that shall be monitored: position or id or type + string monitoringTaskId = 9; // unique for each monitoringRequest. IPosFW uses this info for configuring the communication protocol, e.g., for selecting a specific topic for MQTT-communication; a monitoringRequest with the same monitoringTaskId like a previous request updates this request + string requestorProtocol = 10; // communication protocol, e.g., "mqtt"; Assumption: requestor = receiver +} + +message IposMonitoringResponse { + string monitoringTaskId = 1; + string status = 2; // success- or error-Message } -// relative coordinates message IposPosition { + string refSystemId = 1; // e.g., "WGS84" if absolute position, "ROOT" for testcases or if specific absolute position is actually irrelevant + IposPoint3D point = 2; + float accuracy = 3; // object is with 95% probability within x metres of this point (gaussian distribution) +} + +message IposPoint3D { float x = 1; // pos in x direction in m float y = 2; // pos in y direction in m float z = 3; // pos in z direction in m (up) - float accuracy = 4; // object is with 95% probability within x metres of this point (gaussian distribution) +} + +message POI { // point-of-interest + string description = 1; // e.g., "tag" + map<string, string> data = 2; // e.g., "id" -> tag-id; "type" -> "nfc" + IposPosition position = 3; } message IposSpace { @@ -62,29 +93,3 @@ message IposSimpleOrientation { float z = 3; // there is no orientation float w = 4; // available } - -message IposSubscriptionRequest { - - string subscription_id = 1; - - Selection type_selection = 2; - repeated string types = 3; - - Selection object_selection = 4; - repeated string objects = 5; - - Selection zone_selection = 6; - repeated string zones = 7; - - double minimum_position_delta = 8; - double max_update_frequency = 9; - -} - -enum Selection { - SELECTION_UNSPECIFIED = 0; - SELECTION_ALL = 1; - SELECTION_NONE = 2; - SELECTION_ONLY_LIST = 3; - SELECTION_EXCEPT_LIST = 4; -} diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index c41bd9578be586635dc79a6fba72d436dda7d683..f14f376c92693b553d131934ae9fd06db0fc2fbb 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -1,6 +1,7 @@ logging: level: ipos: DEBUG + config: logback-spring.xml server: port: 7071 @@ -10,11 +11,15 @@ mqtt: cleanSession: true setKeepAliveInterval: 10 connectionTimeout: 20 - clientId: ipos.project - hostname: broker.hivemq.com + clientId: ipos.project.fw + # hostname: 192.168.0.111 # ceti-laptop robolab + # hostname: broker.hivemq.com # online + # hostname: 192.168.0.143 # Frank-laptop robolab + # hostname: localhost # locally-running mosquitto + hostname: localhost port: 1883 spring: activemq: packages: - trusted: ipos.models, com.google.protobuf \ No newline at end of file + trusted: ipos.models, com.google.protobuf # JMS serializes just trusted classes \ No newline at end of file diff --git a/testdata_raw_empty.txt b/testdata_raw_empty.txt new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/testdata_raw_indfro.txt b/testdata_raw_indfro.txt new file mode 100644 index 0000000000000000000000000000000000000000..21e970201e6e02772da033b5758b2eb25eab28e6 --- /dev/null +++ b/testdata_raw_indfro.txt @@ -0,0 +1,2 @@ +{"sensorPositionEvent": [{"sensorId": "UWB_1", "position": {"refSystemId": "CETI_ROOT", "point": {"x": 1.0,"y": 1.0,"z": 1.0}, "accuracy": 10.0}, "orientation": {"x": 1.0,"y": 0.0,"z": 0.0, "w": 0.0}, "lastPosUpdate": "2021-10-14T19:32:20+00:00"}]} +{"sensorPositionEvent": [{"sensorId": "UWB_1", "position": {"refSystemId": "CETI_ROBOTARM_CELL", "point": {"x": -0.07573951,"y": 0.47573978,"z": -1.5899485}, "accuracy": 10.0}, "orientation": {"x": 0.4323382,"y": 0.37717205,"z": -0.45804298, "w": -0.6789863}, "lastPosUpdate": "2021-10-14T19:32:20+00:00"}]} \ No newline at end of file diff --git a/testdata_raw_orderpicker.txt b/testdata_raw_orderpicker.txt new file mode 100644 index 0000000000000000000000000000000000000000..ed1e4b2d440ca276d32874b8a6225743527272a4 --- /dev/null +++ b/testdata_raw_orderpicker.txt @@ -0,0 +1 @@ +{"picklists" : [{ "picklistId" : "picklist_1", "picklistRoles" : [ { "picklistId" : "Picklist_1", "partyId" : "Employee_1", "roleTypeId" : "PICKER" } ], "picklistBins" : [ { "picklistId" : "picklist_1", "binLocationNumber" : "shipmentBin_1", "picklistItems" : [ { "inventoryItem" : { "inventoryItemId" : "invit1", "containerId" : "box_1", "productId" : "blau" } } ] }, { "picklistId" : "picklist_1", "binLocationNumber" : "shipmentBin_2", "picklistItems" : [ { "inventoryItem" : { "inventoryItemId" : "invit3", "containerId" : "box_2", "productId" : "grün" } }, { "inventoryItem" : { "inventoryItemId" : "invit3", "containerId" : "box_3", "productId" : "rot" } } ] } ] }]} \ No newline at end of file diff --git a/testdata_raw_orderpicker_posEvts.txt b/testdata_raw_orderpicker_posEvts.txt new file mode 100644 index 0000000000000000000000000000000000000000..4561fe339502428742c4efd27f13d9eee83fb478 --- /dev/null +++ b/testdata_raw_orderpicker_posEvts.txt @@ -0,0 +1,8 @@ +{"iposPositionEvents" : [ {"objects" : [ { "id" : "Employee_1", "sensorId" : "UWB_1", "type" : "HUMAN", "sensorType" : "UWB", "position" : {"refSystemId": "ROOT", "point": {"x": 0,"y": 0,"z": 0.97}, "accuracy": 0.01}, "orientation" : {"x": 0.0,"y": 0.0,"z": 0.0, "w": 0.0}, "lastPosUpdate" : "2021-10-14T19:32:20+00:00", "zoneDescriptors" : [{"zoneId" : "box_1", "notificationType" : "undefined"}] } ]} ]} +{"iposPositionEvents" : [ {"objects" : [ { "id" : "Employee_1", "sensorId" : "UWB_1", "type" : "HUMAN", "sensorType" : "UWB", "position" : {"refSystemId": "ROOT", "point": {"x": 0,"y": 0,"z": 0.97}, "accuracy": 0.01}, "orientation" : {"x": 0.0,"y": 0.0,"z": 0.0, "w": 0.0}, "lastPosUpdate" : "2021-10-14T19:32:20+00:00", "zoneDescriptors" : [{"zoneId" : "shipmentBin_5", "notificationType" : "undefined"}] } ]} ]} +{"iposPositionEvents" : [ {"objects" : [ { "id" : "Employee_1", "sensorId" : "UWB_1", "type" : "HUMAN", "sensorType" : "UWB", "position" : {"refSystemId": "ROOT", "point": {"x": 0,"y": 0,"z": 0.97}, "accuracy": 0.01}, "orientation" : {"x": 0.0,"y": 0.0,"z": 0.0, "w": 0.0}, "lastPosUpdate" : "2021-10-14T19:32:20+00:00", "zoneDescriptors" : [{"zoneId" : "box_4", "notificationType" : "undefined"}] } ]} ]} +{"iposPositionEvents" : [ {"objects" : [ { "id" : "Employee_1", "sensorId" : "UWB_1", "type" : "HUMAN", "sensorType" : "UWB", "position" : {"refSystemId": "ROOT", "point": {"x": 0,"y": 0,"z": 0.97}, "accuracy": 0.01}, "orientation" : {"x": 0.0,"y": 0.0,"z": 0.0, "w": 0.0}, "lastPosUpdate" : "2021-10-14T19:32:20+00:00", "zoneDescriptors" : [{"zoneId" : "shipmentBin_3", "notificationType" : "undefined"}] } ]} ]} +{"iposPositionEvents" : [ {"objects" : [ { "id" : "Employee_1", "sensorId" : "UWB_1", "type" : "HUMAN", "sensorType" : "UWB", "position" : {"refSystemId": "ROOT", "point": {"x": 0,"y": 0,"z": 0.97}, "accuracy": 0.01}, "orientation" : {"x": 0.0,"y": 0.0,"z": 0.0, "w": 0.0}, "lastPosUpdate" : "2021-10-14T19:32:20+00:00", "zoneDescriptors" : [{"zoneId" : "box_5", "notificationType" : "undefined"}] } ]} ]} +{"iposPositionEvents" : [ {"objects" : [ { "id" : "Employee_1", "sensorId" : "UWB_1", "type" : "HUMAN", "sensorType" : "UWB", "position" : {"refSystemId": "ROOT", "point": {"x": 0,"y": 0,"z": 0.97}, "accuracy": 0.01}, "orientation" : {"x": 0.0,"y": 0.0,"z": 0.0, "w": 0.0}, "lastPosUpdate" : "2021-10-14T19:32:20+00:00", "zoneDescriptors" : [{"zoneId" : "shipmentBin_3", "notificationType" : "undefined"}] } ]} ]} +{"iposPositionEvents" : [ {"objects" : [ { "id" : "Employee_1", "sensorId" : "UWB_1", "type" : "HUMAN", "sensorType" : "UWB", "position" : {"refSystemId": "ROOT", "point": {"x": 0,"y": 0,"z": 0.97}, "accuracy": 0.01}, "orientation" : {"x": 0.0,"y": 0.0,"z": 0.0, "w": 0.0}, "lastPosUpdate" : "2021-10-14T19:32:20+00:00", "zoneDescriptors" : [{"zoneId" : "box_2", "notificationType" : "undefined"}] } ]} ]} +{"iposPositionEvents" : [ {"objects" : [ { "id" : "Employee_1", "sensorId" : "UWB_1", "type" : "HUMAN", "sensorType" : "UWB", "position" : {"refSystemId": "ROOT", "point": {"x": 0,"y": 0,"z": 0.97}, "accuracy": 0.01}, "orientation" : {"x": 0.0,"y": 0.0,"z": 0.0, "w": 0.0}, "lastPosUpdate" : "2021-10-14T19:32:20+00:00", "zoneDescriptors" : [{"zoneId" : "shipmentBin_2", "notificationType" : "undefined"}] } ]} ]} \ No newline at end of file diff --git a/testdata_raw_orderpicker_posEvts_readable.txt b/testdata_raw_orderpicker_posEvts_readable.txt new file mode 100644 index 0000000000000000000000000000000000000000..f6bc0a7ca025477de3d1bb8d899863f4c2bba5b3 --- /dev/null +++ b/testdata_raw_orderpicker_posEvts_readable.txt @@ -0,0 +1,112 @@ +{"iposPositionEvents" : [ + {"objects" : [ + { + "id" : "Employee_1", + "sensorId" : "UWB_1", + "type" : "HUMAN", + "sensorType" : "UWB", + "position" : {"refSystemId": "ROOT", "point": {"x": 0,"y": 0,"z": 0.97}, "accuracy": 0.01}, + "orientation" : {"x": 0.0,"y": 0.0,"z": 0.0, "w": 0.0}, + "lastPosUpdate" : "2021-10-14T19:32:20+00:00", + "zoneDescriptors" : [{"zoneId" : "box_1", "notificationType" : "undefined"}] + } + ]} +]} +{"iposPositionEvents" : [ + {"objects" : [ + { + "id" : "Employee_1", + "sensorId" : "UWB_1", + "type" : "HUMAN", + "sensorType" : "UWB", + "position" : {"refSystemId": "ROOT", "point": {"x": 0,"y": 0,"z": 0.97}, "accuracy": 0.01}, + "orientation" : {"x": 0.0,"y": 0.0,"z": 0.0, "w": 0.0}, + "lastPosUpdate" : "2021-10-14T19:32:20+00:00", + "zoneDescriptors" : [{"zoneId" : "shipmentBin_5", "notificationType" : "undefined"}] + } + ]} +]} +{"iposPositionEvents" : [ + {"objects" : [ + { + "id" : "Employee_1", + "sensorId" : "UWB_1", + "type" : "HUMAN", + "sensorType" : "UWB", + "position" : {"refSystemId": "ROOT", "point": {"x": 0,"y": 0,"z": 0.97}, "accuracy": 0.01}, + "orientation" : {"x": 0.0,"y": 0.0,"z": 0.0, "w": 0.0}, + "lastPosUpdate" : "2021-10-14T19:32:20+00:00", + "zoneDescriptors" : [{"zoneId" : "box_4", "notificationType" : "undefined"}] + } + ]} +]} +{"iposPositionEvents" : [ + {"objects" : [ + { + "id" : "Employee_1", + "sensorId" : "UWB_1", + "type" : "HUMAN", + "sensorType" : "UWB", + "position" : {"refSystemId": "ROOT", "point": {"x": 0,"y": 0,"z": 0.97}, "accuracy": 0.01}, + "orientation" : {"x": 0.0,"y": 0.0,"z": 0.0, "w": 0.0}, + "lastPosUpdate" : "2021-10-14T19:32:20+00:00", + "zoneDescriptors" : [{"zoneId" : "shipmentBin_3", "notificationType" : "undefined"}] + } + ]} +]} +{"iposPositionEvents" : [ + {"objects" : [ + { + "id" : "Employee_1", + "sensorId" : "UWB_1", + "type" : "HUMAN", + "sensorType" : "UWB", + "position" : {"refSystemId": "ROOT", "point": {"x": 0,"y": 0,"z": 0.97}, "accuracy": 0.01}, + "orientation" : {"x": 0.0,"y": 0.0,"z": 0.0, "w": 0.0}, + "lastPosUpdate" : "2021-10-14T19:32:20+00:00", + "zoneDescriptors" : [{"zoneId" : "box_5", "notificationType" : "undefined"}] + } + ]} +]} +{"iposPositionEvents" : [ + {"objects" : [ + { + "id" : "Employee_1", + "sensorId" : "UWB_1", + "type" : "HUMAN", + "sensorType" : "UWB", + "position" : {"refSystemId": "ROOT", "point": {"x": 0,"y": 0,"z": 0.97}, "accuracy": 0.01}, + "orientation" : {"x": 0.0,"y": 0.0,"z": 0.0, "w": 0.0}, + "lastPosUpdate" : "2021-10-14T19:32:20+00:00", + "zoneDescriptors" : [{"zoneId" : "shipmentBin_3", "notificationType" : "undefined"}] + } + ]} +]} +{"iposPositionEvents" : [ + {"objects" : [ + { + "id" : "Employee_1", + "sensorId" : "UWB_1", + "type" : "HUMAN", + "sensorType" : "UWB", + "position" : {"refSystemId": "ROOT", "point": {"x": 0,"y": 0,"z": 0.97}, "accuracy": 0.01}, + "orientation" : {"x": 0.0,"y": 0.0,"z": 0.0, "w": 0.0}, + "lastPosUpdate" : "2021-10-14T19:32:20+00:00", + "zoneDescriptors" : [{"zoneId" : "box_2", "notificationType" : "undefined"}] + } + ]} +]} +{"iposPositionEvents" : [ + {"objects" : [ + { + "id" : "Employee_1", + "sensorId" : "UWB_1", + "type" : "HUMAN", + "sensorType" : "UWB", + "position" : {"refSystemId": "ROOT", "point": {"x": 0,"y": 0,"z": 0.97}, "accuracy": 0.01}, + "orientation" : {"x": 0.0,"y": 0.0,"z": 0.0, "w": 0.0}, + "lastPosUpdate" : "2021-10-14T19:32:20+00:00", + "zoneDescriptors" : [{"zoneId" : "shipmentBin_2", "notificationType" : "undefined"}] + } + ]} +]} \ No newline at end of file diff --git a/testdata_raw_orderpicker_readable.txt b/testdata_raw_orderpicker_readable.txt new file mode 100644 index 0000000000000000000000000000000000000000..a1e14d7c81033012e411da5e6a013c546d3aa686 --- /dev/null +++ b/testdata_raw_orderpicker_readable.txt @@ -0,0 +1,49 @@ +{"picklists" : [{ + "picklistId" : "picklist_1", + "picklistRoles" : [ + { "picklistId" : "Picklist_1", + "partyId" : "Employee_1", + "roleTypeId" : "PICKER" + + } + ], + "picklistBins" : [ + { + "picklistId" : "picklist_1", + "binLocationNumber" : "shipmentBin_1", + "picklistItems" : [ + { + "inventoryItem" : + { + "inventoryItemId" : "invit1", + "containerId" : "box_1", + "productId" : "blau" + } + } + ] + }, + { + "picklistId" : "picklist_1", + "binLocationNumber" : "shipmentBin_2", + "picklistItems" : [ + { + "inventoryItem" : + { + "inventoryItemId" : "invit3", + "containerId" : "box_2", + "productId" : "grün" + } + }, + { + "inventoryItem" : + { + "inventoryItemId" : "invit3", + "containerId" : "box_3", + "productId" : "rot" + } + } + ] + + } + ] + }]} \ No newline at end of file diff --git a/testdata_raw_osm_init.txt b/testdata_raw_osm_init.txt new file mode 100644 index 0000000000000000000000000000000000000000..16ee7724d9b70d8e71dad466d2ad59774e55caae --- /dev/null +++ b/testdata_raw_osm_init.txt @@ -0,0 +1 @@ +{"monitoringTargets" : [{"protocol" : "VDA5050"}]} \ No newline at end of file diff --git a/testdata_raw_query.txt b/testdata_raw_query.txt new file mode 100644 index 0000000000000000000000000000000000000000..bd86a5a94b1b1b1ff0d7bc5e00a371ecc380ade2 --- /dev/null +++ b/testdata_raw_query.txt @@ -0,0 +1 @@ +{"queryRequests":[{"trackingTaskId": "RobolabMonitoringCeti_tracking"}, {"trackingTaskId": "RobolabMonitoringFrontend_tracking"}]} \ No newline at end of file diff --git a/testdata_raw_sdf.txt b/testdata_raw_sdf.txt new file mode 100644 index 0000000000000000000000000000000000000000..2362c025eea8b4aa9b7687cb1502d7ec33d18a51 --- /dev/null +++ b/testdata_raw_sdf.txt @@ -0,0 +1,4 @@ +{"sensorPositionEvent": [{"sensorId": "UWB_1", "position": {"refSystemId": "ROOT", "point": {"x": 3.0,"y": 1.5,"z": 3.0}, "accuracy": 1.0}, "orientation": {"x": 1.0,"y": 0.5,"z": 1.0, "w": 1.5}, "lastPosUpdate": "2021-10-14T19:32:20+00:00"}]} +{"nfcRawDataEvent" : [ {"timestamp" : "2021-10-14T19:33:20+00:00", "tagId": "83221710", "type": "RFID", "scannerId": "98:CD:AC:26:2D:18"} ] } +{"nfcRawDataEvent" : [ {"timestamp" : "2021-10-14T19:33:20+00:00", "tagId": "31762128", "type": "RFID", "scannerId": "98:CD:AC:26:2D:18"} ] } +{"sensorPositionEvent": [{"sensorId": "UWB_1", "position": {"refSystemId": "ROOT", "point": {"x": 3.0,"y": 1.5,"z": 3.0}, "accuracy": 1.0}, "orientation": {"x": 1.0,"y": 0.5,"z": 1.0, "w": 1.5}, "lastPosUpdate": "2021-10-14T19:34:20+00:00"}]} \ No newline at end of file diff --git a/testdata_raw_tooz.txt b/testdata_raw_tooz.txt new file mode 100644 index 0000000000000000000000000000000000000000..7a6e3f300912c27a24398b58a55da0ac6d71f2d1 --- /dev/null +++ b/testdata_raw_tooz.txt @@ -0,0 +1,8 @@ +{"uwbRawDataEvent" : [ {"timestamp" : "2022-02-02T16:03:20+00:00", "sensorId" : "tooz_employee_uwb", "type": "UWB"}]} +{"bluetoothRawDataEvent" : [{"timestamp" : "2022-02-02T16:03:20+00:00", "sensorId" : "tooz_employee_bt", "type": "BT"}]} +{"bluetoothRawDataEvent" : [{"timestamp" : "2022-02-02T16:03:20+00:00", "sensorId" : "tooz_employee_bt", "type": "BT", "rss": {"beacon_1" : "12.7", "beacon_2" : "15.3", "beacon_3" : "18.7"}}]} +{"bluetoothRawDataEvent" : [{"timestamp" : "2022-02-02T16:03:20+00:00", "sensorId" : "tooz_employee_bt", "distances": {"beacon_1" : "2.5", "beacon_2" : "5.5", "beacon_3" : "8.5"}, "type": "BT", "rss": {"beacon_1" : "12.7", "beacon_2" : "15.3", "beacon_3" : "18.7"}}]} +{"bluetoothRawDataEvent" : [{"timestamp" : "2022-02-02T16:03:20+00:00", "sensorId" : "tooz_employee_bt", "distances": {"beacon_1" : "2.5", "beacon_2" : "5.5", "beacon_3" : "8.5"}, "type": "BT"}]} +{"uwbRawDataEvent" : [ {"timestamp" : "2022-02-02T16:03:20+00:00", "sensorId" : "tooz_employee_uwb", "distances": {"beacon_1" : "2.5", "beacon_2" : "5.5", "beacon_3" : "8.5"}, "type": "UWB"}]} +{"uwbRawDataEvent" : [ {"timestamp" : "2022-02-02T16:04:20+00:00", "sensorId" : "tooz_employee_uwb", "distances": {"beacon_1" : "15.0"}, "type": "UWB"}]} +{"uwbRawDataEvent" : [ {"timestamp" : "2022-02-02T16:05:20+00:00", "sensorId" : "tooz_employee_uwb", "distances": {"beacon_5" : "1.8"}, "type": "UWB"}]} \ No newline at end of file diff --git a/testdata_raw_tooz_init.txt b/testdata_raw_tooz_init.txt new file mode 100644 index 0000000000000000000000000000000000000000..48143b48f772541ac5626926f249db7e06626871 --- /dev/null +++ b/testdata_raw_tooz_init.txt @@ -0,0 +1,2 @@ +{"monitoringTargets" : [{"targetSensorId" : "tooz_employee_uwb" }]} +{"monitoringTargets" : [{"targetSensorId" : "tooz_employee_bt" }]} \ No newline at end of file diff --git a/testdata_raw_vda5050.txt b/testdata_raw_vda5050.txt new file mode 100644 index 0000000000000000000000000000000000000000..eff1fd29908c7433d0738efe842737dea4c6550d --- /dev/null +++ b/testdata_raw_vda5050.txt @@ -0,0 +1,4 @@ +{"headerId": "4", "timeStamp": "2022-03-30T09:51:41.405124+00:00", "manufacturer": "TL_TUD", "serialNumber": "4", "lastNodeId": "0", "batteryState": {"batteryCharge": "100"}, "errors": [{"errorType": "0", "errorLevel": "WARNING"}], "agvPosition": {"x": 9.4777, "y": 2.1158, "theta": 0.0009999996666689628}, "loads": [{"loadId": "0"}]} +{"timeStamp" : "2021-10-14T20:35:33+00:00", "manufacturer" : "TL_TUD", "serialNumber" : "Virtual_AGV"} +{"timeStamp" : "2021-10-14T20:35:33+00:00", "manufacturer" : "TL_TUD", "serialNumber" : "Virtual_AGV", "lastNodeId" : "31762128", "batteryState" : {"batteryCharge" : 88.0}, "errors" : [{"errorType" : "83", "errorLevel" : "WARNING"}, {"errorType" : "16", "errorLevel" : "FATAL"}], "loads" : [{"loadId" : "47"}, {"loadId" : "23"}]} +{"timeStamp" : "2021-10-14T19:32:20+00:00", "manufacturer" : "TL_TUD", "serialNumber" : "Virtual_AGV", "lastNodeId" : "31762128", "batteryState" : {"batteryCharge" : 86.0}, "errors" : [{"errorType" : "83", "errorLevel" : "WARNING"}, {"errorType" : "16", "errorLevel" : "FATAL"}], "agvPosition" : {"x" : 4.3, "y" : 2.5, "theta" : 1.0}, "loads" : [{"loadId" : "47"}, {"loadId" : "23"}]} \ No newline at end of file