Merge "Bug 544278 - [IoTML] SensiNact profile integration"
diff --git a/org.eclipse.papyrus.iotml.profile/META-INF/MANIFEST.MF b/org.eclipse.papyrus.iotml.profile/META-INF/MANIFEST.MF
index 9ed5be7..38fef09 100644
--- a/org.eclipse.papyrus.iotml.profile/META-INF/MANIFEST.MF
+++ b/org.eclipse.papyrus.iotml.profile/META-INF/MANIFEST.MF
@@ -5,7 +5,11 @@
Bundle-Version: 1.0.0.qualifier
Bundle-ClassPath: .
Bundle-Vendor: %Bundle-Vendor
+Bundle-Localization: plugin
Export-Package: org.eclipse.papyrus.iotml,
+ org.eclipse.papyrus.iotml.sensinact,
+ org.eclipse.papyrus.iotml.sensinact.impl,
+ org.eclipse.papyrus.iotml.sensinact.util,
org.eclipse.papyrus.iotml.animate,
org.eclipse.papyrus.iotml.animate.impl,
org.eclipse.papyrus.iotml.animate.util,
@@ -41,6 +45,9 @@
org.eclipse.papyrus.iotml.s3pml.software,
org.eclipse.papyrus.iotml.s3pml.software.impl,
org.eclipse.papyrus.iotml.s3pml.software.util,
+ org.eclipse.papyrus.iotml.sensinact,
+ org.eclipse.papyrus.iotml.sensinact.impl,
+ org.eclipse.papyrus.iotml.sensinact.util,
org.eclipse.papyrus.iotml.software,
org.eclipse.papyrus.iotml.software.artefact,
org.eclipse.papyrus.iotml.software.artefact.impl,
diff --git a/org.eclipse.papyrus.iotml.profile/model/IoT-ML.profile.genmodel b/org.eclipse.papyrus.iotml.profile/model/IoT-ML.profile.genmodel
index ee26a33..f895571 100644
--- a/org.eclipse.papyrus.iotml.profile/model/IoT-ML.profile.genmodel
+++ b/org.eclipse.papyrus.iotml.profile/model/IoT-ML.profile.genmodel
@@ -5,7 +5,7 @@
modelDirectory="/org.eclipse.papyrus.iotml.profile/src-gen" modelPluginID="org.eclipse.papyrus.iotml.profile"
modelName="IoT-ML" rootExtendsClass="org.eclipse.emf.ecore.impl.MinimalEObjectImpl$Container"
importerID="org.eclipse.uml2.uml.ecore.importer" complianceLevel="8.0" copyrightFields="false"
- usedGenPackages="../../org.eclipse.emf.ecore/model/Ecore.genmodel#//ecore platform:/plugin/org.eclipse.papyrus.marte.static.profile/resources/MARTE.genmodel#//MARTE platform:/plugin/org.eclipse.papyrus.marte.static.profile/resources/MARTE.genmodel#//MARTE_Library ../../org.eclipse.papyrus.sysml14/resources/profile/SysML.profile.genmodel#//sysml14 platform:/plugin/org.eclipse.uml2.types/model/Types.genmodel#//types platform:/plugin/org.eclipse.uml2.uml/model/UML.genmodel#//uml"
+ usedGenPackages="../../org.eclipse.emf.ecore/model/Ecore.genmodel#//ecore platform:/plugin/org.eclipse.papyrus.marte.static.profile/resources/MARTE.genmodel#//MARTE platform:/plugin/org.eclipse.papyrus.marte.static.profile/resources/MARTE.genmodel#//MARTE_Library ../../org.eclipse.papyrus.sysml14/resources/profile/SysML.profile.genmodel#//sysml14 platform:/plugin/org.eclipse.uml2.types/model/Types.genmodel#//types platform:/plugin/org.eclipse.uml2.uml/model/UML.genmodel#//uml ../../org.eclipse.uml2.uml.profile.standard/model/Standard.genmodel#//standard"
importOrganizing="true">
<genAnnotations source="http://www.eclipse.org/emf/2002/GenModel/importer/org.eclipse.uml2.uml.ecore.importer">
<details key="OPPOSITE_ROLE_NAMES" value="IGNORE"/>
@@ -287,5 +287,77 @@
disposableProviderFactory="true" ecorePackage="iotml.ecore#//hybrid">
<genClasses xsi:type="genmodel:GenClass" ecoreClass="iotml.ecore#//hybrid/PhysicalEntity"/>
</nestedGenPackages>
+ <nestedGenPackages xsi:type="genmodel:GenPackage" prefix="Sensinact" basePackage="org.eclipse.papyrus.iotml"
+ disposableProviderFactory="true" ecorePackage="iotml.ecore#//sensinact">
+ <genEnums xsi:type="genmodel:GenEnum" typeSafeEnumCompatible="false" ecoreEnum="iotml.ecore#//sensinact/AccessMethodType">
+ <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="iotml.ecore#//sensinact/AccessMethodType/GET"/>
+ <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="iotml.ecore#//sensinact/AccessMethodType/SET"/>
+ <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="iotml.ecore#//sensinact/AccessMethodType/ACT"/>
+ <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="iotml.ecore#//sensinact/AccessMethodType/SUBSCRIBE"/>
+ <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="iotml.ecore#//sensinact/AccessMethodType/UNSUBSCRIBE"/>
+ </genEnums>
+ <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="iotml.ecore#//sensinact/TypedElement">
+ <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+ propertySortChoices="true" ecoreFeature="ecore:EReference iotml.ecore#//sensinact/TypedElement/value"/>
+ <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+ propertySortChoices="true" ecoreFeature="ecore:EReference iotml.ecore#//sensinact/TypedElement/base_TypedElement"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="iotml.ecore#//sensinact/Studio">
+ <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+ propertySortChoices="true" ecoreFeature="ecore:EReference iotml.ecore#//sensinact/Studio/gateways"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="iotml.ecore#//sensinact/Gateway">
+ <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+ propertySortChoices="true" ecoreFeature="ecore:EReference iotml.ecore#//sensinact/Gateway/devices"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="iotml.ecore#//sensinact/Device">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute iotml.ecore#//sensinact/Device/friendlyName"/>
+ <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+ propertySortChoices="true" ecoreFeature="ecore:EReference iotml.ecore#//sensinact/Device/services"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="iotml.ecore#//sensinact/Service">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute iotml.ecore#//sensinact/Service/friendlyName"/>
+ <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+ propertySortChoices="true" ecoreFeature="ecore:EReference iotml.ecore#//sensinact/Service/resources"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="iotml.ecore#//sensinact/Resource">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute iotml.ecore#//sensinact/Resource/friendlyName"/>
+ <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+ propertySortChoices="true" ecoreFeature="ecore:EReference iotml.ecore#//sensinact/Resource/accessMethods"/>
+ <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+ propertySortChoices="true" ecoreFeature="ecore:EReference iotml.ecore#//sensinact/Resource/attributes"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="iotml.ecore#//sensinact/AccessMethod">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute iotml.ecore#//sensinact/AccessMethod/type"/>
+ <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+ propertySortChoices="true" ecoreFeature="ecore:EReference iotml.ecore#//sensinact/AccessMethod/parameters"/>
+ <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+ propertySortChoices="true" ecoreFeature="ecore:EReference iotml.ecore#//sensinact/AccessMethod/base_Operation"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="iotml.ecore#//sensinact/Parameter"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="iotml.ecore#//sensinact/Attribute">
+ <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+ propertySortChoices="true" ecoreFeature="ecore:EReference iotml.ecore#//sensinact/Attribute/metadata"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="iotml.ecore#//sensinact/Metadata"/>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="iotml.ecore#//sensinact/Property">
+ <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+ propertySortChoices="true" ecoreFeature="ecore:EReference iotml.ecore#//sensinact/Property/base_Property"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="iotml.ecore#//sensinact/SensorData">
+ <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+ propertySortChoices="true" ecoreFeature="ecore:EReference iotml.ecore#//sensinact/SensorData/base_Property"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="iotml.ecore#//sensinact/StateVariable">
+ <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+ propertySortChoices="true" ecoreFeature="ecore:EReference iotml.ecore#//sensinact/StateVariable/modifier"/>
+ <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+ propertySortChoices="true" ecoreFeature="ecore:EReference iotml.ecore#//sensinact/StateVariable/base_Property"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="iotml.ecore#//sensinact/Action">
+ <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+ propertySortChoices="true" ecoreFeature="ecore:EReference iotml.ecore#//sensinact/Action/state"/>
+ </genClasses>
+ </nestedGenPackages>
</genPackages>
</genmodel:GenModel>
diff --git a/org.eclipse.papyrus.iotml.profile/model/IoT-ML.profile.notation b/org.eclipse.papyrus.iotml.profile/model/IoT-ML.profile.notation
index 3140c7a..8395747 100644
--- a/org.eclipse.papyrus.iotml.profile/model/IoT-ML.profile.notation
+++ b/org.eclipse.papyrus.iotml.profile/model/IoT-ML.profile.notation
@@ -1881,6 +1881,14 @@
<element xmi:type="uml:Stereotype" href="IoT-ML.profile.uml#_Fw88MCtyEeeZI6rMTYV60w"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_Fw-KUStyEeeZI6rMTYV60w" x="470" y="258" width="202" height="82"/>
</children>
+ <children xmi:type="notation:Shape" xmi:id="_iKSGWiuBEemAOL1eRjr3BA" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_iKSGWyuBEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_iKSGXSuBEemAOL1eRjr3BA" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#ValueSpecification"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_iKSGXCuBEemAOL1eRjr3BA" x="251" y="65"/>
+ </children>
<styles xmi:type="notation:StringValueStyle" xmi:id="_lXloMCtxEeeZI6rMTYV60w" name="diagram_compatibility_version" stringValue="1.4.0"/>
<styles xmi:type="notation:DiagramStyle" xmi:id="_lXloMStxEeeZI6rMTYV60w"/>
<styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_TRozsAtCEeiGKKNRaLJTMQ" diagramKindId="org.eclipse.papyrus.uml.diagram.profile">
@@ -1936,6 +1944,16 @@
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_OM4msCtyEeeZI6rMTYV60w" id="(0.0,0.5853658536585366)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_OM4msStyEeeZI6rMTYV60w" id="(1.0,0.5853658536585366)"/>
</edges>
+ <edges xmi:type="notation:Connector" xmi:id="_iKSGXiuBEemAOL1eRjr3BA" type="StereotypeCommentLink" source="_qDFuACtxEeeZI6rMTYV60w" target="_iKSGWiuBEemAOL1eRjr3BA">
+ <styles xmi:type="notation:FontStyle" xmi:id="_iKSGXyuBEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_iKb3USuBEemAOL1eRjr3BA" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#ValueSpecification"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_iKSGYCuBEemAOL1eRjr3BA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_iKSGYSuBEemAOL1eRjr3BA"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_iKb3UCuBEemAOL1eRjr3BA"/>
+ </edges>
</notation:Diagram>
<notation:Diagram xmi:id="_v_8RgCtyEeeZI6rMTYV60w" type="PapyrusUMLClassDiagram" name="Resource package" measurementUnit="Pixel">
<children xmi:type="notation:Shape" xmi:id="_zIq9ACtyEeeZI6rMTYV60w" type="Package_Shape">
@@ -2243,7 +2261,7 @@
<element xmi:type="uml:Stereotype" href="IoT-ML.profile.uml#_fJDgADgYEei4Qbge_iolbQ"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_fJDgAjgYEei4Qbge_iolbQ" x="659" y="182" width="181" height="80"/>
</children>
- <styles xmi:type="notation:StringValueStyle" xmi:id="_WfeowTP_EeiPBNQ6rB83Ew" name="diagram_compatibility_version" stringValue="1.3.0"/>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_WfeowTP_EeiPBNQ6rB83Ew" name="diagram_compatibility_version" stringValue="1.4.0"/>
<styles xmi:type="notation:DiagramStyle" xmi:id="_WfeowjP_EeiPBNQ6rB83Ew"/>
<styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_WfeowzP_EeiPBNQ6rB83Ew" diagramKindId="org.eclipse.papyrus.uml.diagram.profile">
<owner xmi:type="uml:Package" href="IoT-ML.profile.uml#_UMmnMDP_EeiPBNQ6rB83Ew"/>
@@ -3060,4 +3078,1146 @@
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5EyBITQFEeiPBNQ6rB83Ew" id="(1.0,0.5714285714285714)"/>
</edges>
</notation:Diagram>
+ <notation:Diagram xmi:id="_9lVtQCuBEemAOL1eRjr3BA" type="PapyrusUMLProfileDiagram" name="SensiNact" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_-9kEcCuBEemAOL1eRjr3BA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_-9kEciuBEemAOL1eRjr3BA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_-9kEcyuBEemAOL1eRjr3BA" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_-9kEdCuBEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_-9kEdSuBEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_-9kEdiuBEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-9kEdyuBEemAOL1eRjr3BA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_-9kEeCuBEemAOL1eRjr3BA" visible="false" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_-9kEeSuBEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_-9kEeiuBEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_-9kEeyuBEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-9kEfCuBEemAOL1eRjr3BA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="IoT-ML.profile.uml#_-9aTcCuBEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-9kEcSuBEemAOL1eRjr3BA" x="-140" y="-100"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="__pmrECuBEemAOL1eRjr3BA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="__pmrEiuBEemAOL1eRjr3BA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__pmrEyuBEemAOL1eRjr3BA" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_KYlnMCuLEemAOL1eRjr3BA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="IoT-ML.profile.uml#_I_xaICuLEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_KYlnMSuLEemAOL1eRjr3BA"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="__pmrFCuBEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__pmrFSuBEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__pmrFiuBEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__pmrFyuBEemAOL1eRjr3BA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__pmrGCuBEemAOL1eRjr3BA" visible="false" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="__pmrGSuBEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__pmrGiuBEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__pmrGyuBEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__pmrHCuBEemAOL1eRjr3BA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="IoT-ML.profile.uml#__pc6ECuBEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__pmrESuBEemAOL1eRjr3BA" x="-160" y="280"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_AbI1sCuCEemAOL1eRjr3BA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_AbI1siuCEemAOL1eRjr3BA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_AbI1syuCEemAOL1eRjr3BA" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_MwyNoCuLEemAOL1eRjr3BA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="IoT-ML.profile.uml#_MMCh0CuLEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_MwyNoSuLEemAOL1eRjr3BA"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_AbI1tCuCEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AbI1tSuCEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AbI1tiuCEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AbI1tyuCEemAOL1eRjr3BA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_AbI1uCuCEemAOL1eRjr3BA" visible="false" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_AbI1uSuCEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_AbI1uiuCEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_AbI1uyuCEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AbI1vCuCEemAOL1eRjr3BA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="IoT-ML.profile.uml#_Aa_rwCuCEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AbI1sSuCEemAOL1eRjr3BA" x="80" y="280"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_GxJVgSuCEemAOL1eRjr3BA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_GxJVgyuCEemAOL1eRjr3BA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_GxJVhCuCEemAOL1eRjr3BA" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_ICFfUCuKEemAOL1eRjr3BA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="IoT-ML.profile.uml#_IBykYCuKEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_ICFfUSuKEemAOL1eRjr3BA"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_GxJVhSuCEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_GxJVhiuCEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_GxJVhyuCEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GxJViCuCEemAOL1eRjr3BA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_GxJViSuCEemAOL1eRjr3BA" visible="false" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_GxJViiuCEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_GxJViyuCEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_GxJVjCuCEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GxJVjSuCEemAOL1eRjr3BA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="IoT-ML.profile.uml#_GxJVgCuCEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GxJVgiuCEemAOL1eRjr3BA" x="320" y="280"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_HqRV4SuCEemAOL1eRjr3BA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_HqRV4yuCEemAOL1eRjr3BA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_HqRV5CuCEemAOL1eRjr3BA" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_HqRV5SuCEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_HqRV5iuCEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_HqRV5yuCEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_HqRV6CuCEemAOL1eRjr3BA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_HqRV6SuCEemAOL1eRjr3BA" visible="false" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_HqRV6iuCEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_HqRV6yuCEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_HqRV7CuCEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_HqRV7SuCEemAOL1eRjr3BA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="IoT-ML.profile.uml#_HqRV4CuCEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_HqRV4iuCEemAOL1eRjr3BA" x="120" y="480"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_JFBcoSuCEemAOL1eRjr3BA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_JFLNoCuCEemAOL1eRjr3BA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_JFLNoSuCEemAOL1eRjr3BA" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_JFLNoiuCEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_JFLNoyuCEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_JFLNpCuCEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_JFLNpSuCEemAOL1eRjr3BA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_JFLNpiuCEemAOL1eRjr3BA" visible="false" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_JFLNpyuCEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_JFLNqCuCEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_JFLNqSuCEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_JFLNqiuCEemAOL1eRjr3BA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="IoT-ML.profile.uml#_JFBcoCuCEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_JFBcoiuCEemAOL1eRjr3BA" x="260" y="480"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_K7TBwSuCEemAOL1eRjr3BA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_K7cywCuCEemAOL1eRjr3BA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_K7cywSuCEemAOL1eRjr3BA" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_K7cywiuCEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_K7cywyuCEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_K7cyxCuCEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_K7cyxSuCEemAOL1eRjr3BA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_K7cyxiuCEemAOL1eRjr3BA" visible="false" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_K7cyxyuCEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_K7cyyCuCEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_K7cyySuCEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_K7cyyiuCEemAOL1eRjr3BA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="IoT-ML.profile.uml#_K7TBwCuCEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_K7TBwiuCEemAOL1eRjr3BA" x="400" y="480"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_LyDDkSuCEemAOL1eRjr3BA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_LyDDkyuCEemAOL1eRjr3BA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_LyM0kCuCEemAOL1eRjr3BA" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_LyM0kSuCEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_LyM0kiuCEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_LyM0kyuCEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LyM0lCuCEemAOL1eRjr3BA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_LyM0lSuCEemAOL1eRjr3BA" visible="false" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_LyM0liuCEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_LyM0lyuCEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_LyM0mCuCEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LyM0mSuCEemAOL1eRjr3BA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="IoT-ML.profile.uml#_LyDDkCuCEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LyDDkiuCEemAOL1eRjr3BA" x="600" y="480"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Mrel8CuCEemAOL1eRjr3BA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Mrel8iuCEemAOL1eRjr3BA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_Mrel8yuCEemAOL1eRjr3BA" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Mrel9CuCEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Mrel9SuCEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Mrel9iuCEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Mrel9yuCEemAOL1eRjr3BA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_Mrel-CuCEemAOL1eRjr3BA" visible="false" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Mrel-SuCEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Mrel-iuCEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Mrel-yuCEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Mrel_CuCEemAOL1eRjr3BA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="IoT-ML.profile.uml#_MrU08CuCEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Mrel8SuCEemAOL1eRjr3BA" x="340" y="80"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_NTyjISuCEemAOL1eRjr3BA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_NT8UICuCEemAOL1eRjr3BA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_NT8UISuCEemAOL1eRjr3BA" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_NT8UIiuCEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_NT8UIyuCEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_NT8UJCuCEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_NT8UJSuCEemAOL1eRjr3BA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_NT8UJiuCEemAOL1eRjr3BA" visible="false" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_NT8UJyuCEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_NT8UKCuCEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_NT8UKSuCEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_NT8UKiuCEemAOL1eRjr3BA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="IoT-ML.profile.uml#_NTyjICuCEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_NTyjIiuCEemAOL1eRjr3BA" x="340" y="-100"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_N7XggCuCEemAOL1eRjr3BA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_N7XggiuCEemAOL1eRjr3BA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_N7XggyuCEemAOL1eRjr3BA" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_N7XghCuCEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_N7XghSuCEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_N7XghiuCEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_N7XghyuCEemAOL1eRjr3BA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_N7XgiCuCEemAOL1eRjr3BA" visible="false" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_N7XgiSuCEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_N7XgiiuCEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_N7XgiyuCEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_N7XgjCuCEemAOL1eRjr3BA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="IoT-ML.profile.uml#_N7NvgCuCEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_N7XggSuCEemAOL1eRjr3BA" x="600" y="280"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_OlnXYSuCEemAOL1eRjr3BA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_OlxIYCuCEemAOL1eRjr3BA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_OlxIYSuCEemAOL1eRjr3BA" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_OlxIYiuCEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_OlxIYyuCEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_OlxIZCuCEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OlxIZSuCEemAOL1eRjr3BA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_OlxIZiuCEemAOL1eRjr3BA" visible="false" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_OlxIZyuCEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_OlxIaCuCEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_OlxIaSuCEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OlxIaiuCEemAOL1eRjr3BA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="IoT-ML.profile.uml#_OlnXYCuCEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OlnXYiuCEemAOL1eRjr3BA" x="600" y="80"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_PVhxYSuCEemAOL1eRjr3BA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_PVhxYyuCEemAOL1eRjr3BA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_PVhxZCuCEemAOL1eRjr3BA" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_PVhxZSuCEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_PVhxZiuCEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_PVhxZyuCEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PVhxaCuCEemAOL1eRjr3BA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_PVhxaSuCEemAOL1eRjr3BA" visible="false" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_PVhxaiuCEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_PVhxayuCEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_PVhxbCuCEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PVhxbSuCEemAOL1eRjr3BA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="IoT-ML.profile.uml#_PVhxYCuCEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PVhxYiuCEemAOL1eRjr3BA" x="-140" y="80"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_7MSVwCuCEemAOL1eRjr3BA" type="Enumeration_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_7MSVwiuCEemAOL1eRjr3BA" type="Enumeration_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_7MSVwyuCEemAOL1eRjr3BA" type="Enumeration_LiteralCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_pGVOQCuIEemAOL1eRjr3BA" type="EnumerationLiteral_LiteralLabel">
+ <element xmi:type="uml:EnumerationLiteral" href="IoT-ML.profile.uml#_pGBsQCuIEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_pGVOQSuIEemAOL1eRjr3BA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_poPogCuIEemAOL1eRjr3BA" type="EnumerationLiteral_LiteralLabel">
+ <element xmi:type="uml:EnumerationLiteral" href="IoT-ML.profile.uml#_pn8tkCuIEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_poPogSuIEemAOL1eRjr3BA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_qIYhICuIEemAOL1eRjr3BA" type="EnumerationLiteral_LiteralLabel">
+ <element xmi:type="uml:EnumerationLiteral" href="IoT-ML.profile.uml#_qIFmMCuIEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_qIYhISuIEemAOL1eRjr3BA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_rABTwCuIEemAOL1eRjr3BA" type="EnumerationLiteral_LiteralLabel">
+ <element xmi:type="uml:EnumerationLiteral" href="IoT-ML.profile.uml#_q_uY0CuIEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_rABTwSuIEemAOL1eRjr3BA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_sxiicCuNEemAOL1eRjr3BA" type="EnumerationLiteral_LiteralLabel">
+ <element xmi:type="uml:EnumerationLiteral" href="IoT-ML.profile.uml#_sxF2gCuNEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_sxiicSuNEemAOL1eRjr3BA"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_7MSVxCuCEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_7MSVxSuCEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_7MSVxiuCEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_7MSVxyuCEemAOL1eRjr3BA"/>
+ </children>
+ <element xmi:type="uml:Enumeration" href="IoT-ML.profile.uml#_7MIkwCuCEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_7MSVwSuCEemAOL1eRjr3BA" x="780" y="280"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_S5SAcCuMEemAOL1eRjr3BA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_S5SAciuMEemAOL1eRjr3BA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_S5SAcyuMEemAOL1eRjr3BA" type="Stereotype_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_ZdRR4CuMEemAOL1eRjr3BA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="IoT-ML.profile.uml#_ZcrcACuMEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_ZdRR4SuMEemAOL1eRjr3BA"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_S5SAdCuMEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_S5SAdSuMEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_S5SAdiuMEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_S5SAdyuMEemAOL1eRjr3BA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_S5SAeCuMEemAOL1eRjr3BA" visible="false" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_S5SAeSuMEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_S5SAeiuMEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_S5SAeyuMEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_S5SAfCuMEemAOL1eRjr3BA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="IoT-ML.profile.uml#_S5I2gCuMEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_S5SAcSuMEemAOL1eRjr3BA" x="560" y="-100"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_9lVtQSuBEemAOL1eRjr3BA" name="diagram_compatibility_version" stringValue="1.4.0"/>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_9lVtQiuBEemAOL1eRjr3BA"/>
+ <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_9lVtQyuBEemAOL1eRjr3BA" diagramKindId="org.eclipse.papyrus.uml.diagram.profile">
+ <owner xmi:type="uml:Package" href="IoT-ML.profile.uml#_lz21ECuBEemAOL1eRjr3BA"/>
+ </styles>
+ <element xmi:type="uml:Package" href="IoT-ML.profile.uml#_lz21ECuBEemAOL1eRjr3BA"/>
+ <edges xmi:type="notation:Connector" xmi:id="_jSH-gCuJEemAOL1eRjr3BA" type="Association_Edge" source="_N7XggCuCEemAOL1eRjr3BA" target="_7MSVwCuCEemAOL1eRjr3BA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_jSH-gyuJEemAOL1eRjr3BA" type="Association_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_xpDLUCuKEemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_jSH-hCuJEemAOL1eRjr3BA" y="60"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_jSH-hSuJEemAOL1eRjr3BA" type="Association_NameLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_xpWGQCuKEemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_jSH-hiuJEemAOL1eRjr3BA" y="20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_jSH-hyuJEemAOL1eRjr3BA" type="Association_TargetRoleLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_xppBMCuKEemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_jSH-iCuJEemAOL1eRjr3BA" x="-23" y="27"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_jSH-iSuJEemAOL1eRjr3BA" visible="false" type="Association_SourceRoleLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_xp78ICuKEemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_jSRvgCuJEemAOL1eRjr3BA" x="12" y="-20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_jSRvgSuJEemAOL1eRjr3BA" type="Association_SourceMultiplicityLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_xqFtICuKEemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_jSRvgiuJEemAOL1eRjr3BA" x="12" y="20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_jSRvgyuJEemAOL1eRjr3BA" type="Association_TargetMultiplicityLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_xqYoECuKEemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_jSRvhCuJEemAOL1eRjr3BA" x="-12" y="-20"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_jSH-gSuJEemAOL1eRjr3BA"/>
+ <element xmi:type="uml:Association" href="IoT-ML.profile.uml#_jRYXoCuJEemAOL1eRjr3BA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_jSH-giuJEemAOL1eRjr3BA" points="[700, 340, -643984, -643984]$[780, 340, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_jS3lYCuJEemAOL1eRjr3BA" id="(1.0,0.6)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_jS3lYSuJEemAOL1eRjr3BA" id="(0.0,0.5454545454545454)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_2lY-8CuJEemAOL1eRjr3BA" type="Association_Edge" source="_N7XggCuCEemAOL1eRjr3BA" target="_OlnXYSuCEemAOL1eRjr3BA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_2lY-8yuJEemAOL1eRjr3BA" type="Association_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_xqiZECuKEemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_2lY-9CuJEemAOL1eRjr3BA" y="60"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_2lY-9SuJEemAOL1eRjr3BA" type="Association_NameLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_xqrjACuKEemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_2lY-9iuJEemAOL1eRjr3BA" y="20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_2lY-9yuJEemAOL1eRjr3BA" type="Association_TargetRoleLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_xq1UACuKEemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_2lY--CuJEemAOL1eRjr3BA" x="-27" y="35"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_2lY--SuJEemAOL1eRjr3BA" visible="false" type="Association_SourceRoleLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_xq_FACuKEemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_2lY--iuJEemAOL1eRjr3BA" x="15" y="-20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_2lY--yuJEemAOL1eRjr3BA" type="Association_SourceMultiplicityLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_xrR_8CuKEemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_2lY-_CuJEemAOL1eRjr3BA" x="15" y="20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_2lY-_SuJEemAOL1eRjr3BA" type="Association_TargetMultiplicityLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_xrk64CuKEemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_2lY-_iuJEemAOL1eRjr3BA" x="-15" y="-20"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_2lY-8SuJEemAOL1eRjr3BA"/>
+ <element xmi:type="uml:Association" href="IoT-ML.profile.uml#_2k86ECuJEemAOL1eRjr3BA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_2lY-8iuJEemAOL1eRjr3BA" points="[660, 280, -643984, -643984]$[660, 180, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_2l1q4CuJEemAOL1eRjr3BA" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_2l1q4SuJEemAOL1eRjr3BA" id="(0.6,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_RJo5sCuKEemAOL1eRjr3BA" type="Association_Edge" source="_GxJVgSuCEemAOL1eRjr3BA" target="_N7XggCuCEemAOL1eRjr3BA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_RJo5syuKEemAOL1eRjr3BA" type="Association_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_xrur4CuKEemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_RJo5tCuKEemAOL1eRjr3BA" y="60"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_RJo5tSuKEemAOL1eRjr3BA" type="Association_NameLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_xsBm0CuKEemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_RJo5tiuKEemAOL1eRjr3BA" y="20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_RJo5tyuKEemAOL1eRjr3BA" type="Association_TargetRoleLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_xsKwwCuKEemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_RJo5uCuKEemAOL1eRjr3BA" x="-54" y="27"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_RJo5uSuKEemAOL1eRjr3BA" visible="false" type="Association_SourceRoleLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_xsUhwCuKEemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_RJo5uiuKEemAOL1eRjr3BA" x="13" y="-20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_RJo5uyuKEemAOL1eRjr3BA" type="Association_SourceMultiplicityLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_xseSwCuKEemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_RJo5vCuKEemAOL1eRjr3BA" x="13" y="20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_RJo5vSuKEemAOL1eRjr3BA" type="Association_TargetMultiplicityLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_xs6XoCuKEemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_RJo5viuKEemAOL1eRjr3BA" x="-13" y="-20"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_RJo5sSuKEemAOL1eRjr3BA"/>
+ <element xmi:type="uml:Association" href="IoT-ML.profile.uml#_RJV-wCuKEemAOL1eRjr3BA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_RJo5siuKEemAOL1eRjr3BA" points="[431, 340, -643984, -643984]$[520, 340, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_RKFloCuKEemAOL1eRjr3BA" id="(1.0,0.6)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_RKFloSuKEemAOL1eRjr3BA" id="(0.0,0.6)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_Ve9UICuKEemAOL1eRjr3BA" type="Association_Edge" source="_GxJVgSuCEemAOL1eRjr3BA" target="_Mrel8CuCEemAOL1eRjr3BA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Ve9UIyuKEemAOL1eRjr3BA" type="Association_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_zCdOQCuKEemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Ve9UJCuKEemAOL1eRjr3BA" y="60"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_Ve9UJSuKEemAOL1eRjr3BA" type="Association_NameLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_zCwwQCuKEemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Ve9UJiuKEemAOL1eRjr3BA" y="20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_Ve9UJyuKEemAOL1eRjr3BA" type="Association_TargetRoleLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_zDDrMCuKEemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Ve9UKCuKEemAOL1eRjr3BA" x="-27" y="28"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_Ve9UKSuKEemAOL1eRjr3BA" visible="false" type="Association_SourceRoleLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_zDM1ICuKEemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Ve9UKiuKEemAOL1eRjr3BA" x="15" y="-20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_Ve9UKyuKEemAOL1eRjr3BA" type="Association_SourceMultiplicityLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_zDgXICuKEemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Ve9ULCuKEemAOL1eRjr3BA" x="15" y="20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_Ve9ULSuKEemAOL1eRjr3BA" type="Association_TargetMultiplicityLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_zDphECuKEemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Ve9ULiuKEemAOL1eRjr3BA" x="-15" y="-20"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_Ve9UISuKEemAOL1eRjr3BA"/>
+ <element xmi:type="uml:Association" href="IoT-ML.profile.uml#_VepyICuKEemAOL1eRjr3BA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Ve9UIiuKEemAOL1eRjr3BA" points="[400, 280, -643984, -643984]$[400, 180, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_VfjKACuKEemAOL1eRjr3BA" id="(0.5298013245033113,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_VfjKASuKEemAOL1eRjr3BA" id="(0.6,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_jS0FkCuKEemAOL1eRjr3BA" type="Association_Edge" source="_Mrel8CuCEemAOL1eRjr3BA" target="_NTyjISuCEemAOL1eRjr3BA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_jS0FkyuKEemAOL1eRjr3BA" type="Association_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_zFIu0CuKEemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_jS0FlCuKEemAOL1eRjr3BA" y="60"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_jS0FlSuKEemAOL1eRjr3BA" type="Association_NameLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_zFSf0CuKEemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_jS0FliuKEemAOL1eRjr3BA" y="20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_jS0FlyuKEemAOL1eRjr3BA" type="Association_TargetRoleLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_zFbpwCuKEemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_jS0FmCuKEemAOL1eRjr3BA" x="-27" y="32"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_jS0FmSuKEemAOL1eRjr3BA" visible="false" type="Association_SourceRoleLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_zF4VsCuKEemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_jS0FmiuKEemAOL1eRjr3BA" x="6" y="-20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_jS0FmyuKEemAOL1eRjr3BA" type="Association_SourceMultiplicityLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_zGCGsCuKEemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_jS0FnCuKEemAOL1eRjr3BA" x="6" y="20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_jS0FnSuKEemAOL1eRjr3BA" type="Association_TargetMultiplicityLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_zGLQoCuKEemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_jS0FniuKEemAOL1eRjr3BA" x="-6" y="-20"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_jS0FkSuKEemAOL1eRjr3BA"/>
+ <element xmi:type="uml:Association" href="IoT-ML.profile.uml#_jSOPsCuKEemAOL1eRjr3BA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_jS0FkiuKEemAOL1eRjr3BA" points="[400, 80, -643984, -643984]$[400, 40, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_jTQxgCuKEemAOL1eRjr3BA" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_jTQxgSuKEemAOL1eRjr3BA" id="(0.6,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_tL_xMCuKEemAOL1eRjr3BA" type="Association_Edge" source="_AbI1sCuCEemAOL1eRjr3BA" target="_GxJVgSuCEemAOL1eRjr3BA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_tMJiMCuKEemAOL1eRjr3BA" type="Association_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_zDzSECuKEemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_tMJiMSuKEemAOL1eRjr3BA" y="60"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_tMJiMiuKEemAOL1eRjr3BA" type="Association_NameLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_zEGNACuKEemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_tMJiMyuKEemAOL1eRjr3BA" y="20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_tMJiNCuKEemAOL1eRjr3BA" type="Association_TargetRoleLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_zEP-ACuKEemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_tMJiNSuKEemAOL1eRjr3BA" x="-29" y="27"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_tMJiNiuKEemAOL1eRjr3BA" visible="false" type="Association_SourceRoleLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_zEi48CuKEemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_tMJiNyuKEemAOL1eRjr3BA" x="12" y="-20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_tMJiOCuKEemAOL1eRjr3BA" type="Association_SourceMultiplicityLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_zEsC4CuKEemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_tMJiOSuKEemAOL1eRjr3BA" x="12" y="20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_tMJiOiuKEemAOL1eRjr3BA" type="Association_TargetMultiplicityLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_zE1z4CuKEemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_tMJiOyuKEemAOL1eRjr3BA" x="-12" y="-20"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_tL_xMSuKEemAOL1eRjr3BA"/>
+ <element xmi:type="uml:Association" href="IoT-ML.profile.uml#_tLQKUCuKEemAOL1eRjr3BA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_tL_xMiuKEemAOL1eRjr3BA" points="[200, 340, -643984, -643984]$[280, 340, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_tMvYECuKEemAOL1eRjr3BA" id="(1.0,0.6)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_tMvYESuKEemAOL1eRjr3BA" id="(0.0,0.6)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_U-QlYCuLEemAOL1eRjr3BA" type="Association_Edge" source="__pmrECuBEemAOL1eRjr3BA" target="_AbI1sCuCEemAOL1eRjr3BA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_U-QlYyuLEemAOL1eRjr3BA" type="Association_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_uka_4CuOEemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_U-QlZCuLEemAOL1eRjr3BA" y="60"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_U-QlZSuLEemAOL1eRjr3BA" type="Association_NameLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_uk3r0CuOEemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_U-QlZiuLEemAOL1eRjr3BA" y="20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_U-QlZyuLEemAOL1eRjr3BA" type="Association_TargetRoleLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_ulKmwCuOEemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_U-QlaCuLEemAOL1eRjr3BA" x="-34" y="27"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_U-QlaSuLEemAOL1eRjr3BA" visible="false" type="Association_SourceRoleLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_uldhsCuOEemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_U-QlaiuLEemAOL1eRjr3BA" x="16" y="-20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_U-QlayuLEemAOL1eRjr3BA" type="Association_SourceMultiplicityLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_ulwcoCuOEemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_U-QlbCuLEemAOL1eRjr3BA" x="16" y="20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_U-QlbSuLEemAOL1eRjr3BA" type="Association_TargetMultiplicityLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_ul6NoCuOEemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_U-QlbiuLEemAOL1eRjr3BA" x="-16" y="-20"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_U-QlYSuLEemAOL1eRjr3BA"/>
+ <element xmi:type="uml:Association" href="IoT-ML.profile.uml#_U9qIcCuLEemAOL1eRjr3BA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_U-QlYiuLEemAOL1eRjr3BA" points="[-9, 340, -643984, -643984]$[100, 340, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_U-2bQCuLEemAOL1eRjr3BA" id="(1.0,0.6)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_U-2bQSuLEemAOL1eRjr3BA" id="(0.0,0.6)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_fANygCuLEemAOL1eRjr3BA" type="Association_Edge" source="_PVhxYSuCEemAOL1eRjr3BA" target="__pmrECuBEemAOL1eRjr3BA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_fANygyuLEemAOL1eRjr3BA" type="Association_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_fANyhCuLEemAOL1eRjr3BA" y="60"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_fANyhSuLEemAOL1eRjr3BA" type="Association_NameLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_fANyhiuLEemAOL1eRjr3BA" y="20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_fANyhyuLEemAOL1eRjr3BA" type="Association_TargetRoleLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_fANyiCuLEemAOL1eRjr3BA" x="2" y="36"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_fANyiSuLEemAOL1eRjr3BA" visible="false" type="Association_SourceRoleLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_fANyiiuLEemAOL1eRjr3BA" y="-20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_fANyiyuLEemAOL1eRjr3BA" type="Association_SourceMultiplicityLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_fANyjCuLEemAOL1eRjr3BA" y="20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_fANyjSuLEemAOL1eRjr3BA" type="Association_TargetMultiplicityLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_fANyjiuLEemAOL1eRjr3BA" y="-20"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_fANygSuLEemAOL1eRjr3BA"/>
+ <element xmi:type="uml:Association" href="IoT-ML.profile.uml#_e_xGkCuLEemAOL1eRjr3BA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_fANygiuLEemAOL1eRjr3BA" points="[-100, 180, -643984, -643984]$[-100, 280, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_fAzoYCuLEemAOL1eRjr3BA" id="(0.4,1.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_fAzoYSuLEemAOL1eRjr3BA" id="(0.3973509933774834,0.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_rqbbUCuLEemAOL1eRjr3BA" type="Association_Edge" source="_-9kEcCuBEemAOL1eRjr3BA" target="_PVhxYSuCEemAOL1eRjr3BA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_rqlMUCuLEemAOL1eRjr3BA" type="Association_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_rqlMUSuLEemAOL1eRjr3BA" y="60"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_rqlMUiuLEemAOL1eRjr3BA" type="Association_NameLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_rqlMUyuLEemAOL1eRjr3BA" y="20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_rqlMVCuLEemAOL1eRjr3BA" type="Association_TargetRoleLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_rqlMVSuLEemAOL1eRjr3BA" x="-1" y="48"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_rqlMViuLEemAOL1eRjr3BA" visible="false" type="Association_SourceRoleLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_rqlMVyuLEemAOL1eRjr3BA" y="-20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_rqlMWCuLEemAOL1eRjr3BA" type="Association_SourceMultiplicityLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_rqlMWSuLEemAOL1eRjr3BA" y="20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_rqlMWiuLEemAOL1eRjr3BA" type="Association_TargetMultiplicityLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_rqlMWyuLEemAOL1eRjr3BA" y="-20"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_rqbbUSuLEemAOL1eRjr3BA"/>
+ <element xmi:type="uml:Association" href="IoT-ML.profile.uml#_rp_WcCuLEemAOL1eRjr3BA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_rqbbUiuLEemAOL1eRjr3BA" points="[-100, 0, -643984, -643984]$[-100, 80, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_rrUzMCuLEemAOL1eRjr3BA" id="(0.4,1.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_rrUzMSuLEemAOL1eRjr3BA" id="(0.4,0.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_-b7LcCuLEemAOL1eRjr3BA" type="Generalization_Edge" source="_HqRV4SuCEemAOL1eRjr3BA" target="_GxJVgSuCEemAOL1eRjr3BA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_-b7LcyuLEemAOL1eRjr3BA" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_-b7LdCuLEemAOL1eRjr3BA" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_-b7LcSuLEemAOL1eRjr3BA"/>
+ <element xmi:type="uml:Generalization" href="IoT-ML.profile.uml#_-bCaoCuLEemAOL1eRjr3BA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_-b7LciuLEemAOL1eRjr3BA" points="[160, 480, -643984, -643984]$[400, 380, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_-cX3YCuLEemAOL1eRjr3BA" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_-cX3YSuLEemAOL1eRjr3BA" id="(0.5298013245033113,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_-_yGcCuLEemAOL1eRjr3BA" type="Generalization_Edge" source="_JFBcoSuCEemAOL1eRjr3BA" target="_GxJVgSuCEemAOL1eRjr3BA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_-_yGcyuLEemAOL1eRjr3BA" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_-_yGdCuLEemAOL1eRjr3BA" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_-_yGcSuLEemAOL1eRjr3BA"/>
+ <element xmi:type="uml:Generalization" href="IoT-ML.profile.uml#_-_MQkCuLEemAOL1eRjr3BA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_-_yGciuLEemAOL1eRjr3BA" points="[320, 480, -643984, -643984]$[400, 380, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__AOyYCuLEemAOL1eRjr3BA" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__AOyYSuLEemAOL1eRjr3BA" id="(0.5298013245033113,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="__mwm4CuLEemAOL1eRjr3BA" type="Generalization_Edge" source="_K7TBwSuCEemAOL1eRjr3BA" target="_GxJVgSuCEemAOL1eRjr3BA">
+ <children xmi:type="notation:DecorationNode" xmi:id="__mwm4yuLEemAOL1eRjr3BA" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="__mwm5CuLEemAOL1eRjr3BA" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="__mwm4SuLEemAOL1eRjr3BA"/>
+ <element xmi:type="uml:Generalization" href="IoT-ML.profile.uml#__mKxACuLEemAOL1eRjr3BA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__mwm4iuLEemAOL1eRjr3BA" points="[440, 480, -643984, -643984]$[400, 380, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__nNS0CuLEemAOL1eRjr3BA" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__nNS0SuLEemAOL1eRjr3BA" id="(0.5298013245033113,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_ARdJsCuMEemAOL1eRjr3BA" type="Generalization_Edge" source="_LyDDkSuCEemAOL1eRjr3BA" target="_GxJVgSuCEemAOL1eRjr3BA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_ARdJsyuMEemAOL1eRjr3BA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_K8bpMCuNEemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_ARdJtCuMEemAOL1eRjr3BA" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_ARdJsSuMEemAOL1eRjr3BA"/>
+ <element xmi:type="uml:Generalization" href="IoT-ML.profile.uml#_ARBE0CuMEemAOL1eRjr3BA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_ARdJsiuMEemAOL1eRjr3BA" points="[580, 480, -643984, -643984]$[580, 440, -643984, -643984]$[400, 440, -643984, -643984]$[400, 380, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AR51oCuMEemAOL1eRjr3BA" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AR51oSuMEemAOL1eRjr3BA" id="(0.5298013245033113,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_vl9nUCuMEemAOL1eRjr3BA" type="Generalization_Edge" source="_OlnXYSuCEemAOL1eRjr3BA" target="_S5SAcCuMEemAOL1eRjr3BA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_vl9nUyuMEemAOL1eRjr3BA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_MwMwECuREemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_vl9nVCuMEemAOL1eRjr3BA" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_vl9nUSuMEemAOL1eRjr3BA"/>
+ <element xmi:type="uml:Generalization" href="IoT-ML.profile.uml#_vlhicCuMEemAOL1eRjr3BA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_vl9nUiuMEemAOL1eRjr3BA" points="[660, 80, -643984, -643984]$[660, 0, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_vmtOMCuMEemAOL1eRjr3BA" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_vmtOMSuMEemAOL1eRjr3BA" id="(0.42735042735042733,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_wJOscCuMEemAOL1eRjr3BA" type="Generalization_Edge" source="_NTyjISuCEemAOL1eRjr3BA" target="_S5SAcCuMEemAOL1eRjr3BA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_wJOscyuMEemAOL1eRjr3BA" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_wJOsdCuMEemAOL1eRjr3BA" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_wJOscSuMEemAOL1eRjr3BA"/>
+ <element xmi:type="uml:Generalization" href="IoT-ML.profile.uml#_wIoPgCuMEemAOL1eRjr3BA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_wJOsciuMEemAOL1eRjr3BA" points="[440, -60, -643984, -643984]$[560, -60, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_wJ0iUCuMEemAOL1eRjr3BA" id="(1.0,0.4)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_wJ0iUSuMEemAOL1eRjr3BA" id="(0.0,0.4)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_y1zncCuMEemAOL1eRjr3BA" type="Generalization_Edge" source="_Mrel8CuCEemAOL1eRjr3BA" target="_S5SAcCuMEemAOL1eRjr3BA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_y1zncyuMEemAOL1eRjr3BA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_zo1m4CuMEemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_y1zndCuMEemAOL1eRjr3BA" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_y1zncSuMEemAOL1eRjr3BA"/>
+ <element xmi:type="uml:Generalization" href="IoT-ML.profile.uml#_y1gsgCuMEemAOL1eRjr3BA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_y1znciuMEemAOL1eRjr3BA" points="[440, 120, -643984, -643984]$[580, 120, -643984, -643984]$[580, 0, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_y2ZdUCuMEemAOL1eRjr3BA" id="(1.0,0.4)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_y2ZdUSuMEemAOL1eRjr3BA" id="(0.11428571428571428,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_KSoeQCuNEemAOL1eRjr3BA" type="Association_Edge" source="_K7TBwSuCEemAOL1eRjr3BA" target="_LyDDkSuCEemAOL1eRjr3BA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_KSoeQyuNEemAOL1eRjr3BA" type="Association_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_K84VICuNEemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_KSoeRCuNEemAOL1eRjr3BA" y="60"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_KSoeRSuNEemAOL1eRjr3BA" type="Association_NameLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_K9LQECuNEemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_KSoeRiuNEemAOL1eRjr3BA" y="20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_KSoeRyuNEemAOL1eRjr3BA" type="Association_TargetRoleLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_K9eyECuNEemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_KSoeSCuNEemAOL1eRjr3BA" x="-31" y="7"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_KSoeSSuNEemAOL1eRjr3BA" type="Association_SourceRoleLabel">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_b0Fi0CuNEemAOL1eRjr3BA" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_b0Fi0SuNEemAOL1eRjr3BA" key="visible" value="true"/>
+ </eAnnotations>
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_K9n8ACuNEemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_KSoeSiuNEemAOL1eRjr3BA" x="20" y="-13"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_KSoeSyuNEemAOL1eRjr3BA" type="Association_SourceMultiplicityLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_K9628CuNEemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_KSoeTCuNEemAOL1eRjr3BA" x="6" y="20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_KSoeTSuNEemAOL1eRjr3BA" type="Association_TargetMultiplicityLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_K-OY8CuNEemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_KSoeTiuNEemAOL1eRjr3BA" x="-10" y="-13"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_KSoeQSuNEemAOL1eRjr3BA"/>
+ <element xmi:type="uml:Association" href="IoT-ML.profile.uml#_KSCBUCuNEemAOL1eRjr3BA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_KSoeQiuNEemAOL1eRjr3BA" points="[500, 540, -643984, -643984]$[540, 540, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_KTYFICuNEemAOL1eRjr3BA" id="(1.0,0.6)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_KTYFISuNEemAOL1eRjr3BA" id="(0.0,0.6)"/>
+ </edges>
+ </notation:Diagram>
+ <notation:Diagram xmi:id="_01fKwCuNEemAOL1eRjr3BA" type="PapyrusUMLProfileDiagram" name="SensiNactExtensions" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_4lTrcCuNEemAOL1eRjr3BA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_4lc1YCuNEemAOL1eRjr3BA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_4lc1YSuNEemAOL1eRjr3BA" visible="false" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_4lc1YiuNEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_4lc1YyuNEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_4lc1ZCuNEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_4lc1ZSuNEemAOL1eRjr3BA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_4lc1ZiuNEemAOL1eRjr3BA" visible="false" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_4lc1ZyuNEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_4lc1aCuNEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_4lc1aSuNEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_4lc1aiuNEemAOL1eRjr3BA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="IoT-ML.profile.uml#_S5I2gCuMEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_4lTrcSuNEemAOL1eRjr3BA" x="840" y="160"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_JKD3MCuOEemAOL1eRjr3BA" type="Class_MetaclassShape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_JKD3MiuOEemAOL1eRjr3BA" type="Class_MetaclassNameLabel"/>
+ <element xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#TypedElement"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_JKD3MSuOEemAOL1eRjr3BA" x="840" y="60"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_JKWyKiuOEemAOL1eRjr3BA" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_JKWyKyuOEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_JKWyLSuOEemAOL1eRjr3BA" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#TypedElement"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_JKWyLCuOEemAOL1eRjr3BA" x="200"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_GcxVECuPEemAOL1eRjr3BA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_GcxVEiuPEemAOL1eRjr3BA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_GcxVEyuPEemAOL1eRjr3BA" visible="false" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_GcxVFCuPEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_GcxVFSuPEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_GcxVFiuPEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GcxVFyuPEemAOL1eRjr3BA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_GcxVGCuPEemAOL1eRjr3BA" visible="false" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_GcxVGSuPEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_GcxVGiuPEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_GcxVGyuPEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GcxVHCuPEemAOL1eRjr3BA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="IoT-ML.profile.uml#_-9aTcCuBEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GcxVESuPEemAOL1eRjr3BA" x="100" y="160"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_GdEQACuPEemAOL1eRjr3BA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_GdEQAiuPEemAOL1eRjr3BA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_GdEQAyuPEemAOL1eRjr3BA" visible="false" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_GdEQBCuPEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_GdEQBSuPEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_GdEQBiuPEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GdEQByuPEemAOL1eRjr3BA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_GdEQCCuPEemAOL1eRjr3BA" visible="false" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_GdEQCSuPEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_GdEQCiuPEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_GdEQCyuPEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GdEQDCuPEemAOL1eRjr3BA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="IoT-ML.profile.uml#__pc6ECuBEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GdEQASuPEemAOL1eRjr3BA" x="220" y="160"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_GdOBACuPEemAOL1eRjr3BA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_GdOBAiuPEemAOL1eRjr3BA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_GdOBAyuPEemAOL1eRjr3BA" visible="false" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_GdOBBCuPEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_GdOBBSuPEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_GdOBBiuPEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GdOBByuPEemAOL1eRjr3BA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_GdOBCCuPEemAOL1eRjr3BA" visible="false" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_GdOBCSuPEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_GdOBCiuPEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_GdOBCyuPEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GdOBDCuPEemAOL1eRjr3BA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="IoT-ML.profile.uml#_Aa_rwCuCEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GdOBASuPEemAOL1eRjr3BA" x="340" y="160"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Gdg78CuPEemAOL1eRjr3BA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Gdg78iuPEemAOL1eRjr3BA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_Gdg78yuPEemAOL1eRjr3BA" visible="false" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Gdg79CuPEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Gdg79SuPEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Gdg79iuPEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Gdg79yuPEemAOL1eRjr3BA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_Gdg7-CuPEemAOL1eRjr3BA" visible="false" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Gdg7-SuPEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Gdg7-iuPEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Gdg7-yuPEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Gdg7_CuPEemAOL1eRjr3BA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="IoT-ML.profile.uml#_GxJVgCuCEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Gdg78SuPEemAOL1eRjr3BA" x="460" y="160"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_OmX5cCuPEemAOL1eRjr3BA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_OmX5ciuPEemAOL1eRjr3BA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_OmX5cyuPEemAOL1eRjr3BA" visible="false" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_OmX5dCuPEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_OmX5dSuPEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_OmX5diuPEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OmX5dyuPEemAOL1eRjr3BA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_OmX5eCuPEemAOL1eRjr3BA" visible="false" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_OmX5eSuPEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_OmX5eiuPEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_OmX5eyuPEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OmX5fCuPEemAOL1eRjr3BA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="IoT-ML.profile.uml#_N7NvgCuCEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OmX5cSuPEemAOL1eRjr3BA" x="720" y="160"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_RueS0CuPEemAOL1eRjr3BA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_RueS0iuPEemAOL1eRjr3BA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_RueS0yuPEemAOL1eRjr3BA" visible="false" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_RueS1CuPEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_RueS1SuPEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_RueS1iuPEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_RueS1yuPEemAOL1eRjr3BA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_RueS2CuPEemAOL1eRjr3BA" visible="false" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_RueS2SuPEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_RueS2iuPEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_RueS2yuPEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_RueS3CuPEemAOL1eRjr3BA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="IoT-ML.profile.uml#_PVhxYCuCEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_RueS0SuPEemAOL1eRjr3BA" x="600" y="160"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Dcb7ICuQEemAOL1eRjr3BA" type="Stereotype_Shape" fillColor="12632256">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Dcb7IiuQEemAOL1eRjr3BA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_Dcb7IyuQEemAOL1eRjr3BA" visible="false" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Dcb7JCuQEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Dcb7JSuQEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Dcb7JiuQEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Dcb7JyuQEemAOL1eRjr3BA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_Dcb7KCuQEemAOL1eRjr3BA" visible="false" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Dcb7KSuQEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Dcb7KiuQEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Dcb7KyuQEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Dcb7LCuQEemAOL1eRjr3BA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="IoT-ML.profile.uml#_9sK2ICtgEeepEtCwqDnj2w"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Dcb7ISuQEemAOL1eRjr3BA" x="100" y="20"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_KrHvYCuQEemAOL1eRjr3BA" type="Stereotype_Shape" fillColor="12632256">
+ <children xmi:type="notation:DecorationNode" xmi:id="_KrHvYiuQEemAOL1eRjr3BA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_KrHvYyuQEemAOL1eRjr3BA" visible="false" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_KrHvZCuQEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_KrHvZSuQEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_KrHvZiuQEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_KrHvZyuQEemAOL1eRjr3BA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_KrHvaCuQEemAOL1eRjr3BA" visible="false" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_KrHvaSuQEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_KrHvaiuQEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_KrHvayuQEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_KrHvbCuQEemAOL1eRjr3BA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="IoT-ML.profile.uml#_O9fv0CtoEeeLDNWa-Yk0bg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_KrHvYSuQEemAOL1eRjr3BA" x="600" y="20"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_N3ryACuQEemAOL1eRjr3BA" type="Stereotype_Shape" fillColor="12632256">
+ <children xmi:type="notation:DecorationNode" xmi:id="_N3ryAiuQEemAOL1eRjr3BA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_N3ryAyuQEemAOL1eRjr3BA" visible="false" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_N3ryBCuQEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_N3ryBSuQEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_N3ryBiuQEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_N3ryByuQEemAOL1eRjr3BA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_N3ryCCuQEemAOL1eRjr3BA" visible="false" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_N3ryCSuQEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_N3ryCiuQEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_N3ryCyuQEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_N3ryDCuQEemAOL1eRjr3BA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="IoT-ML.profile.uml#_OpOwACtoEeeLDNWa-Yk0bg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_N3ryASuQEemAOL1eRjr3BA" x="220" y="20"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_buX1ACuQEemAOL1eRjr3BA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_buX1AiuQEemAOL1eRjr3BA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_buX1AyuQEemAOL1eRjr3BA" visible="false" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_buX1BCuQEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_buX1BSuQEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_buX1BiuQEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_buX1ByuQEemAOL1eRjr3BA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_buX1CCuQEemAOL1eRjr3BA" visible="false" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_buX1CSuQEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_buX1CiuQEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_buX1CyuQEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_buX1DCuQEemAOL1eRjr3BA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="IoT-ML.profile.uml#_HqRV4CuCEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_buX1ASuQEemAOL1eRjr3BA" x="140" y="440"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_bu0g8CuQEemAOL1eRjr3BA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_bu0g8iuQEemAOL1eRjr3BA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_bu0g8yuQEemAOL1eRjr3BA" visible="false" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_bu0g9CuQEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_bu0g9SuQEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_bu0g9iuQEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_bu0g9yuQEemAOL1eRjr3BA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_bu0g-CuQEemAOL1eRjr3BA" visible="false" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_bu0g-SuQEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_bu0g-iuQEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_bu0g-yuQEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_bu0g_CuQEemAOL1eRjr3BA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="IoT-ML.profile.uml#_JFBcoCuCEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_bu0g8SuQEemAOL1eRjr3BA" x="260" y="440"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_bvRM4CuQEemAOL1eRjr3BA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_bvRM4iuQEemAOL1eRjr3BA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_bvRM4yuQEemAOL1eRjr3BA" visible="false" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_bvRM5CuQEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_bvRM5SuQEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_bvRM5iuQEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_bvRM5yuQEemAOL1eRjr3BA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_bvRM6CuQEemAOL1eRjr3BA" visible="false" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_bvRM6SuQEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_bvRM6iuQEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_bvRM6yuQEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_bvRM7CuQEemAOL1eRjr3BA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="IoT-ML.profile.uml#_K7TBwCuCEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_bvRM4SuQEemAOL1eRjr3BA" x="380" y="440"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_bvkH0CuQEemAOL1eRjr3BA" type="Stereotype_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_bvkH0iuQEemAOL1eRjr3BA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_bvkH0yuQEemAOL1eRjr3BA" visible="false" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_bvkH1CuQEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_bvkH1SuQEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_bvkH1iuQEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_bvkH1yuQEemAOL1eRjr3BA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_bvkH2CuQEemAOL1eRjr3BA" visible="false" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_bvkH2SuQEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_bvkH2iuQEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_bvkH2yuQEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_bvkH3CuQEemAOL1eRjr3BA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="IoT-ML.profile.uml#_LyDDkCuCEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_bvkH0SuQEemAOL1eRjr3BA" x="600" y="440"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_gFLdMCuQEemAOL1eRjr3BA" type="Stereotype_Shape" fillColor="12632256">
+ <children xmi:type="notation:DecorationNode" xmi:id="_gFLdMiuQEemAOL1eRjr3BA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_gFLdMyuQEemAOL1eRjr3BA" visible="false" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_gFLdNCuQEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_gFLdNSuQEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_gFLdNiuQEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gFLdNyuQEemAOL1eRjr3BA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_gFLdOCuQEemAOL1eRjr3BA" visible="false" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_gFLdOSuQEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_gFLdOiuQEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_gFLdOyuQEemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gFLdPCuQEemAOL1eRjr3BA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="IoT-ML.profile.uml#_ENBgwCtxEeeZI6rMTYV60w"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gFLdMSuQEemAOL1eRjr3BA" x="340" y="20"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_aMIwwCuREemAOL1eRjr3BA" type="Stereotype_Shape" fillColor="12632256">
+ <children xmi:type="notation:DecorationNode" xmi:id="_aMIwwiuREemAOL1eRjr3BA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_aMIwwyuREemAOL1eRjr3BA" visible="false" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_aMIwxCuREemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_aMIwxSuREemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_aMIwxiuREemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_aMIwxyuREemAOL1eRjr3BA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_aMIwyCuREemAOL1eRjr3BA" visible="false" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_aMIwySuREemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_aMIwyiuREemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_aMIwyyuREemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_aMIwzCuREemAOL1eRjr3BA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="IoT-ML.profile.uml#_veD3ACtzEeeZI6rMTYV60w"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_aMIwwSuREemAOL1eRjr3BA" x="460" y="20"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_vPDw8CuREemAOL1eRjr3BA" type="Stereotype_Shape" fillColor="12632256">
+ <children xmi:type="notation:DecorationNode" xmi:id="_vPDw8iuREemAOL1eRjr3BA" type="Stereotype_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_vPDw8yuREemAOL1eRjr3BA" visible="false" type="Stereotype_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_vPDw9CuREemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_vPDw9SuREemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_vPDw9iuREemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_vPDw9yuREemAOL1eRjr3BA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_vPDw-CuREemAOL1eRjr3BA" visible="false" type="Stereotype_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_vPDw-SuREemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_vPDw-iuREemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_vPDw-yuREemAOL1eRjr3BA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_vPDw_CuREemAOL1eRjr3BA"/>
+ </children>
+ <element xmi:type="uml:Stereotype" href="IoT-ML.profile.uml#_mZu-gCttEeeZI6rMTYV60w"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_vPDw8SuREemAOL1eRjr3BA" x="600" y="300"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_-_De8CuREemAOL1eRjr3BA" type="Class_MetaclassShape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_-_De8iuREemAOL1eRjr3BA" type="Class_MetaclassNameLabel"/>
+ <element xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Operation"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-_De8SuREemAOL1eRjr3BA" x="720" y="60"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_-_WZ4yuREemAOL1eRjr3BA" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_-_WZ5CuREemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_-_WZ5iuREemAOL1eRjr3BA" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Operation"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-_WZ5SuREemAOL1eRjr3BA" x="200"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_yHzQ8CuXEemAOL1eRjr3BA" type="Class_MetaclassShape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_yHzQ8iuXEemAOL1eRjr3BA" type="Class_MetaclassNameLabel"/>
+ <element xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Property"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_yHzQ8SuXEemAOL1eRjr3BA" x="260" y="320"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_yIGL6iuXEemAOL1eRjr3BA" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_yIGL6yuXEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_yIGL7SuXEemAOL1eRjr3BA" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Property"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_yIGL7CuXEemAOL1eRjr3BA" x="200"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_01fKwSuNEemAOL1eRjr3BA" name="diagram_compatibility_version" stringValue="1.4.0"/>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_01fKwiuNEemAOL1eRjr3BA"/>
+ <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_01fKwyuNEemAOL1eRjr3BA" diagramKindId="org.eclipse.papyrus.uml.diagram.profile">
+ <owner xmi:type="uml:Package" href="IoT-ML.profile.uml#_lz21ECuBEemAOL1eRjr3BA"/>
+ </styles>
+ <element xmi:type="uml:Package" href="IoT-ML.profile.uml#_lz21ECuBEemAOL1eRjr3BA"/>
+ <edges xmi:type="notation:Connector" xmi:id="_JKWyLiuOEemAOL1eRjr3BA" type="StereotypeCommentLink" source="_JKD3MCuOEemAOL1eRjr3BA" target="_JKWyKiuOEemAOL1eRjr3BA">
+ <styles xmi:type="notation:FontStyle" xmi:id="_JKWyLyuOEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_JKWyMyuOEemAOL1eRjr3BA" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#TypedElement"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_JKWyMCuOEemAOL1eRjr3BA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JKWyMSuOEemAOL1eRjr3BA"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JKWyMiuOEemAOL1eRjr3BA"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_KBQk8CuOEemAOL1eRjr3BA" type="Extension_Edge" source="_4lTrcCuNEemAOL1eRjr3BA" target="_JKD3MCuOEemAOL1eRjr3BA">
+ <styles xmi:type="notation:FontStyle" xmi:id="_KBQk8SuOEemAOL1eRjr3BA"/>
+ <element xmi:type="uml:Extension" href="IoT-ML.profile.uml#_KAXNECuOEemAOL1eRjr3BA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_KBQk8iuOEemAOL1eRjr3BA" points="[880, 160, -643984, -643984]$[880, 120, -643984, -643984]$[1100, 120, -643984, -643984]$[1100, 90, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_KBQk8yuOEemAOL1eRjr3BA" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_KBQk9CuOEemAOL1eRjr3BA" id="(0.4,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_FIJPACuQEemAOL1eRjr3BA" type="Generalization_Edge" source="_GcxVECuPEemAOL1eRjr3BA" target="_Dcb7ICuQEemAOL1eRjr3BA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_FIJPAyuQEemAOL1eRjr3BA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_FwUCQCuQEemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_FIJPBCuQEemAOL1eRjr3BA" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_FIJPASuQEemAOL1eRjr3BA"/>
+ <element xmi:type="uml:Generalization" href="IoT-ML.profile.uml#_FHjZICuQEemAOL1eRjr3BA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_FIJPAiuQEemAOL1eRjr3BA" points="[140, 160, -643984, -643984]$[140, 120, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_FITAACuQEemAOL1eRjr3BA" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_FITAASuQEemAOL1eRjr3BA" id="(0.4,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_MMuFACuQEemAOL1eRjr3BA" type="Generalization_Edge" source="_RueS0CuPEemAOL1eRjr3BA" target="_KrHvYCuQEemAOL1eRjr3BA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_MMuFAyuQEemAOL1eRjr3BA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_b5Py0CuREemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_MMuFBCuQEemAOL1eRjr3BA" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_MMuFASuQEemAOL1eRjr3BA"/>
+ <element xmi:type="uml:Generalization" href="IoT-ML.profile.uml#_MMRZECuQEemAOL1eRjr3BA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_MMuFAiuQEemAOL1eRjr3BA" points="[640, 160, -643984, -643984]$[640, 120, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_MNA_8CuQEemAOL1eRjr3BA" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_MNA_8SuQEemAOL1eRjr3BA" id="(0.4,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_OsDOMCuQEemAOL1eRjr3BA" type="Generalization_Edge" source="_GdEQACuPEemAOL1eRjr3BA" target="_N3ryACuQEemAOL1eRjr3BA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_OsDOMyuQEemAOL1eRjr3BA" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_OsDONCuQEemAOL1eRjr3BA" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_OsDOMSuQEemAOL1eRjr3BA"/>
+ <element xmi:type="uml:Generalization" href="IoT-ML.profile.uml#_OrTnUCuQEemAOL1eRjr3BA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_OsDOMiuQEemAOL1eRjr3BA" points="[260, 160, -643984, -643984]$[260, 120, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_OsWwMCuQEemAOL1eRjr3BA" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_OsWwMSuQEemAOL1eRjr3BA" id="(0.3669724770642202,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_gyZvkCuQEemAOL1eRjr3BA" type="Generalization_Edge" source="_GdOBACuPEemAOL1eRjr3BA" target="_gFLdMCuQEemAOL1eRjr3BA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_gyZvkyuQEemAOL1eRjr3BA" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_gyZvlCuQEemAOL1eRjr3BA" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_gyZvkSuQEemAOL1eRjr3BA"/>
+ <element xmi:type="uml:Generalization" href="IoT-ML.profile.uml#_gxz5sCuQEemAOL1eRjr3BA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_gyZvkiuQEemAOL1eRjr3BA" points="[380, 160, -643984, -643984]$[380, 120, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_gyjgkCuQEemAOL1eRjr3BA" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_gyjgkSuQEemAOL1eRjr3BA" id="(0.4,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_dYEhQCuREemAOL1eRjr3BA" type="Generalization_Edge" source="_Gdg78CuPEemAOL1eRjr3BA" target="_aMIwwCuREemAOL1eRjr3BA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_dYNrMCuREemAOL1eRjr3BA" type="Generalization_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_dYNrMSuREemAOL1eRjr3BA" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_dYEhQSuREemAOL1eRjr3BA"/>
+ <element xmi:type="uml:Generalization" href="IoT-ML.profile.uml#_dXxmUCuREemAOL1eRjr3BA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_dYEhQiuREemAOL1eRjr3BA" points="[500, 160, -643984, -643984]$[500, 120, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dYXcMCuREemAOL1eRjr3BA" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dYXcMSuREemAOL1eRjr3BA" id="(0.33613445378151263,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_-_WZ5yuREemAOL1eRjr3BA" type="StereotypeCommentLink" source="_-_De8CuREemAOL1eRjr3BA" target="_-_WZ4yuREemAOL1eRjr3BA">
+ <styles xmi:type="notation:FontStyle" xmi:id="_-_WZ6CuREemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_-_WZ7CuREemAOL1eRjr3BA" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Operation"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_-_WZ6SuREemAOL1eRjr3BA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_-_WZ6iuREemAOL1eRjr3BA"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_-_WZ6yuREemAOL1eRjr3BA"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_AaapsCuSEemAOL1eRjr3BA" type="Extension_Edge" source="_OmX5cCuPEemAOL1eRjr3BA" target="_-_De8CuREemAOL1eRjr3BA">
+ <styles xmi:type="notation:FontStyle" xmi:id="_AaapsSuSEemAOL1eRjr3BA"/>
+ <element xmi:type="uml:Extension" href="IoT-ML.profile.uml#_AZ0z0CuSEemAOL1eRjr3BA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_AaapsiuSEemAOL1eRjr3BA" points="[780, 160, -643984, -643984]$[780, 110, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AatkoCuSEemAOL1eRjr3BA" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AatkoSuSEemAOL1eRjr3BA" id="(0.6,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_Out1wCuSEemAOL1eRjr3BA" type="Generalization_Edge" source="_bvkH0CuQEemAOL1eRjr3BA" target="_vPDw8CuREemAOL1eRjr3BA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Out1wyuSEemAOL1eRjr3BA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_PMn5wCuSEemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Out1xCuSEemAOL1eRjr3BA" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_Out1wSuSEemAOL1eRjr3BA"/>
+ <element xmi:type="uml:Generalization" href="IoT-ML.profile.uml#_OuH_4CuSEemAOL1eRjr3BA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Out1wiuSEemAOL1eRjr3BA" points="[660, 480, -643984, -643984]$[660, 440, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_OvAwsCuSEemAOL1eRjr3BA" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_OvAwsSuSEemAOL1eRjr3BA" id="(0.6,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_QzlQgCuSEemAOL1eRjr3BA" type="Generalization_Edge" source="_bvkH0CuQEemAOL1eRjr3BA" target="_Gdg78CuPEemAOL1eRjr3BA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_QzlQgyuSEemAOL1eRjr3BA" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_Rwb6UCuSEemAOL1eRjr3BA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_QzlQhCuSEemAOL1eRjr3BA" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_QzlQgSuSEemAOL1eRjr3BA"/>
+ <element xmi:type="uml:Generalization" href="IoT-ML.profile.uml#_ARBE0CuMEemAOL1eRjr3BA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_QzlQgiuSEemAOL1eRjr3BA" points="[600, 480, -643984, -643984]$[520, 480, -643984, -643984]$[520, 260, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_RwIYUCuSEemAOL1eRjr3BA" id="(0.0,0.4)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_RwIYUSuSEemAOL1eRjr3BA" id="(0.6,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_yIGL7iuXEemAOL1eRjr3BA" type="StereotypeCommentLink" source="_yHzQ8CuXEemAOL1eRjr3BA" target="_yIGL6iuXEemAOL1eRjr3BA">
+ <styles xmi:type="notation:FontStyle" xmi:id="_yIGL7yuXEemAOL1eRjr3BA"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_yIGL8yuXEemAOL1eRjr3BA" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Property"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_yIGL8CuXEemAOL1eRjr3BA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_yIGL8SuXEemAOL1eRjr3BA"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_yIGL8iuXEemAOL1eRjr3BA"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_zRvUgCuXEemAOL1eRjr3BA" type="Extension_Edge" source="_bvRM4CuQEemAOL1eRjr3BA" target="_yHzQ8CuXEemAOL1eRjr3BA">
+ <styles xmi:type="notation:FontStyle" xmi:id="_zRvUgSuXEemAOL1eRjr3BA"/>
+ <element xmi:type="uml:Extension" href="IoT-ML.profile.uml#_zQ_toCuXEemAOL1eRjr3BA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_zRvUgiuXEemAOL1eRjr3BA" points="[420, 440, -643984, -643984]$[420, 370, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_zSCPcCuXEemAOL1eRjr3BA" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_zSCPcSuXEemAOL1eRjr3BA" id="(0.4,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_0xP_cCuXEemAOL1eRjr3BA" type="Extension_Edge" source="_bu0g8CuQEemAOL1eRjr3BA" target="_yHzQ8CuXEemAOL1eRjr3BA">
+ <styles xmi:type="notation:FontStyle" xmi:id="_0xP_cSuXEemAOL1eRjr3BA"/>
+ <element xmi:type="uml:Extension" href="IoT-ML.profile.uml#_0wNdoCuXEemAOL1eRjr3BA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_0xP_ciuXEemAOL1eRjr3BA" points="[300, 440, -643984, -643984]$[300, 370, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_0xsrYCuXEemAOL1eRjr3BA" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_0xsrYSuXEemAOL1eRjr3BA" id="(0.4,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_3d-rcCuXEemAOL1eRjr3BA" type="Extension_Edge" source="_buX1ACuQEemAOL1eRjr3BA" target="_yHzQ8CuXEemAOL1eRjr3BA">
+ <styles xmi:type="notation:FontStyle" xmi:id="_3d-rcSuXEemAOL1eRjr3BA"/>
+ <element xmi:type="uml:Extension" href="IoT-ML.profile.uml#_3dY1kCuXEemAOL1eRjr3BA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_3d-rciuXEemAOL1eRjr3BA" points="[200, 440, -643984, -643984]$[300, 370, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_3eIccCuXEemAOL1eRjr3BA" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_3eIccSuXEemAOL1eRjr3BA" id="(0.4,1.0)"/>
+ </edges>
+ </notation:Diagram>
</xmi:XMI>
diff --git a/org.eclipse.papyrus.iotml.profile/model/IoT-ML.profile.uml b/org.eclipse.papyrus.iotml.profile/model/IoT-ML.profile.uml
index 37ecfda..42067a5 100644
--- a/org.eclipse.papyrus.iotml.profile/model/IoT-ML.profile.uml
+++ b/org.eclipse.papyrus.iotml.profile/model/IoT-ML.profile.uml
@@ -1,7 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<xmi:XMI xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:Ecore="http://www.eclipse.org/uml2/schemas/Ecore/5" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xsi:schemaLocation="http://www.eclipse.org/uml2/schemas/Ecore/5 pathmap://UML_PROFILES/Ecore.profile.uml#_z1OFcHjqEdy8S4Cr8Rc_NA">
<uml:Profile xmi:id="IoT-ML" name="IoT-ML" URI="http://www.eclipse.org/papyrus/iotml/0.7/IoTML">
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_D4Rb8Ct1EeeZI6rMTYV60w" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
<packageImport xmi:type="uml:PackageImport" xmi:id="_gRWW4CtgEeepEtCwqDnj2w">
<importedPackage xmi:type="uml:Model" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#_0"/>
</packageImport>
@@ -67,7 +66,7 @@
</packagedElement>
</packagedElement>
<packagedElement xmi:type="uml:Package" xmi:id="_INCz4CthEeepEtCwqDnj2w" name="Sensor" URI="http://www.eclipse.org/papyrus/iotml/0.7/IoTML/Hardware/Sensor">
- <elementImport xmi:type="uml:ElementImport" xmi:id="_2-IXMCtoEeeLDNWa-Yk0bg">
+ <elementImport xmi:type="uml:ElementImport" xmi:id="_2-IXMCtoEeeLDNWa-Yk0bg" alias="">
<importedElement xmi:type="uml:Stereotype" href="pathmap://Papyrus_PROFILES/MARTE.profile.uml#_SuQccDL2Ed2HYNz2hI9A2g"/>
</elementImport>
<elementImport xmi:type="uml:ElementImport" xmi:id="_6o1uYCtoEeeLDNWa-Yk0bg">
@@ -636,6 +635,202 @@
</packagedElement>
</packagedElement>
</packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_lz21ECuBEemAOL1eRjr3BA" name="SensiNact" URI="http://www.eclipse.org/papyrus/iotml/0.7/IoTML/SensiNact">
+ <elementImport xmi:type="uml:ElementImport" xmi:id="_oF2jsEG4EemVxLbqCCTRuA" importedElement="_9sK2ICtgEeepEtCwqDnj2w"/>
+ <elementImport xmi:type="uml:ElementImport" xmi:id="_smCxYEG4EemVxLbqCCTRuA" importedElement="_OpOwACtoEeeLDNWa-Yk0bg"/>
+ <elementImport xmi:type="uml:ElementImport" xmi:id="_xBm9wEG4EemVxLbqCCTRuA" importedElement="_ENBgwCtxEeeZI6rMTYV60w"/>
+ <elementImport xmi:type="uml:ElementImport" xmi:id="_4w3IcEG4EemVxLbqCCTRuA" importedElement="_veD3ACtzEeeZI6rMTYV60w"/>
+ <elementImport xmi:type="uml:ElementImport" xmi:id="_7BKXIEG4EemVxLbqCCTRuA" importedElement="_O9fv0CtoEeeLDNWa-Yk0bg"/>
+ <elementImport xmi:type="uml:ElementImport" xmi:id="_BV0MEEG5EemVxLbqCCTRuA" importedElement="_mZu-gCttEeeZI6rMTYV60w"/>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_S5I2gCuMEemAOL1eRjr3BA" name="TypedElement" isAbstract="true">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZcrcACuMEemAOL1eRjr3BA" name="value" type="_Fw88MCtyEeeZI6rMTYV60w">
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Q4b4ICuOEemAOL1eRjr3BA"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Q4uzECuOEemAOL1eRjr3BA" value="1"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_KAg-ESuOEemAOL1eRjr3BA" name="base_TypedElement" association="_KAXNECuOEemAOL1eRjr3BA">
+ <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#TypedElement"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_-9aTcCuBEemAOL1eRjr3BA" name="Studio">
+ <generalization xmi:type="uml:Generalization" xmi:id="_FHjZICuQEemAOL1eRjr3BA" general="_9sK2ICtgEeepEtCwqDnj2w"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_rqIgYSuLEemAOL1eRjr3BA" name="gateways" type="_PVhxYCuCEemAOL1eRjr3BA" association="_rp_WcCuLEemAOL1eRjr3BA">
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_vKoysCuLEemAOL1eRjr3BA" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_vK7toCuLEemAOL1eRjr3BA" value="*"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="__pc6ECuBEemAOL1eRjr3BA" name="Device">
+ <generalization xmi:type="uml:Generalization" xmi:id="_OrTnUCuQEemAOL1eRjr3BA" general="_OpOwACtoEeeLDNWa-Yk0bg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_I_xaICuLEemAOL1eRjr3BA" name="friendlyName">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_U9qIcyuLEemAOL1eRjr3BA" name="services" type="_Aa_rwCuCEemAOL1eRjr3BA" association="_U9qIcCuLEemAOL1eRjr3BA">
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_WBWaECuLEemAOL1eRjr3BA" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_WBpVACuLEemAOL1eRjr3BA" value="*"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_Aa_rwCuCEemAOL1eRjr3BA" name="Service">
+ <generalization xmi:type="uml:Generalization" xmi:id="_gxz5sCuQEemAOL1eRjr3BA" general="_ENBgwCtxEeeZI6rMTYV60w"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MMCh0CuLEemAOL1eRjr3BA" name="friendlyName">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_tLZ7UiuKEemAOL1eRjr3BA" name="resources" type="_GxJVgCuCEemAOL1eRjr3BA" association="_tLQKUCuKEemAOL1eRjr3BA">
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_utvQwCuKEemAOL1eRjr3BA" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_uuCywCuKEemAOL1eRjr3BA" value="*"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_GxJVgCuCEemAOL1eRjr3BA" name="Resource">
+ <generalization xmi:type="uml:Generalization" xmi:id="_dXxmUCuREemAOL1eRjr3BA" general="_veD3ACtzEeeZI6rMTYV60w"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_IBykYCuKEemAOL1eRjr3BA" name="friendlyName">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_RJV-wyuKEemAOL1eRjr3BA" name="accessMethods" type="_N7NvgCuCEemAOL1eRjr3BA" association="_RJV-wCuKEemAOL1eRjr3BA">
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_c51xUCuKEemAOL1eRjr3BA" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_c6SdQCuKEemAOL1eRjr3BA" value="*"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_VepyIyuKEemAOL1eRjr3BA" name="attributes" type="_MrU08CuCEemAOL1eRjr3BA" association="_VepyICuKEemAOL1eRjr3BA">
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_aABrkCuKEemAOL1eRjr3BA" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_aAdwcCuKEemAOL1eRjr3BA" value="*"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_HqRV4CuCEemAOL1eRjr3BA" name="Property">
+ <generalization xmi:type="uml:Generalization" xmi:id="_-bCaoCuLEemAOL1eRjr3BA" general="_GxJVgCuCEemAOL1eRjr3BA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_3dY1kiuXEemAOL1eRjr3BA" name="base_Property" association="_3dY1kCuXEemAOL1eRjr3BA">
+ <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Property"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_JFBcoCuCEemAOL1eRjr3BA" name="SensorData">
+ <generalization xmi:type="uml:Generalization" xmi:id="_-_MQkCuLEemAOL1eRjr3BA" general="_GxJVgCuCEemAOL1eRjr3BA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_0wNdoiuXEemAOL1eRjr3BA" name="base_Property" association="_0wNdoCuXEemAOL1eRjr3BA">
+ <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Property"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_K7TBwCuCEemAOL1eRjr3BA" name="StateVariable">
+ <generalization xmi:type="uml:Generalization" xmi:id="__mKxACuLEemAOL1eRjr3BA" general="_GxJVgCuCEemAOL1eRjr3BA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_KSCBUyuNEemAOL1eRjr3BA" name="modifier" type="_LyDDkCuCEemAOL1eRjr3BA" association="_KSCBUCuNEemAOL1eRjr3BA">
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Ptar8CuNEemAOL1eRjr3BA" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_PuBI4CuNEemAOL1eRjr3BA" value="1"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_zQ_toiuXEemAOL1eRjr3BA" name="base_Property" association="_zQ_toCuXEemAOL1eRjr3BA">
+ <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Property"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_LyDDkCuCEemAOL1eRjr3BA" name="Action">
+ <generalization xmi:type="uml:Generalization" xmi:id="_ARBE0CuMEemAOL1eRjr3BA" general="_GxJVgCuCEemAOL1eRjr3BA"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_OuH_4CuSEemAOL1eRjr3BA" general="_mZu-gCttEeeZI6rMTYV60w"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_KSCBVCuNEemAOL1eRjr3BA" name="state" type="_K7TBwCuCEemAOL1eRjr3BA" isDerived="true" association="_KSCBUCuNEemAOL1eRjr3BA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_MrU08CuCEemAOL1eRjr3BA" name="Attribute">
+ <generalization xmi:type="uml:Generalization" xmi:id="_y1gsgCuMEemAOL1eRjr3BA" general="_S5I2gCuMEemAOL1eRjr3BA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_jSOPsyuKEemAOL1eRjr3BA" name="metadata" type="_NTyjICuCEemAOL1eRjr3BA" association="_jSOPsCuKEemAOL1eRjr3BA">
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_meVmYCuKEemAOL1eRjr3BA"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_me8DUCuKEemAOL1eRjr3BA" value="*"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_NTyjICuCEemAOL1eRjr3BA" name="Metadata">
+ <generalization xmi:type="uml:Generalization" xmi:id="_wIoPgCuMEemAOL1eRjr3BA" general="_S5I2gCuMEemAOL1eRjr3BA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_N7NvgCuCEemAOL1eRjr3BA" name="AccessMethod">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_jRrSkCuJEemAOL1eRjr3BA" name="type" type="_7MIkwCuCEemAOL1eRjr3BA" association="_jRYXoCuJEemAOL1eRjr3BA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_2lGEAiuJEemAOL1eRjr3BA" name="parameters" type="_OlnXYCuCEemAOL1eRjr3BA" association="_2k86ECuJEemAOL1eRjr3BA">
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_epRHkCuKEemAOL1eRjr3BA"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_epkpkCuKEemAOL1eRjr3BA" value="*"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_AZ0z0iuSEemAOL1eRjr3BA" name="base_Operation" association="_AZ0z0CuSEemAOL1eRjr3BA">
+ <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Operation"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_OlnXYCuCEemAOL1eRjr3BA" name="Parameter">
+ <generalization xmi:type="uml:Generalization" xmi:id="_vlhicCuMEemAOL1eRjr3BA" general="_S5I2gCuMEemAOL1eRjr3BA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_PVhxYCuCEemAOL1eRjr3BA" name="Gateway">
+ <generalization xmi:type="uml:Generalization" xmi:id="_MMRZECuQEemAOL1eRjr3BA" general="_O9fv0CtoEeeLDNWa-Yk0bg"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_e_xGkyuLEemAOL1eRjr3BA" name="devices" type="__pc6ECuBEemAOL1eRjr3BA" association="_e_xGkCuLEemAOL1eRjr3BA">
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_iH3f8CuLEemAOL1eRjr3BA" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_iIKa4CuLEemAOL1eRjr3BA" value="*"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_7MIkwCuCEemAOL1eRjr3BA" name="AccessMethodType">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_pGBsQCuIEemAOL1eRjr3BA" name="GET"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_pn8tkCuIEemAOL1eRjr3BA" name="SET"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_qIFmMCuIEemAOL1eRjr3BA" name="ACT"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_q_uY0CuIEemAOL1eRjr3BA" name="SUBSCRIBE"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_sxF2gCuNEemAOL1eRjr3BA" name="UNSUBSCRIBE"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Association" xmi:id="_jRYXoCuJEemAOL1eRjr3BA" memberEnd="_jRrSkCuJEemAOL1eRjr3BA _jRrSkSuJEemAOL1eRjr3BA">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_jRiIoCuJEemAOL1eRjr3BA" source="org.eclipse.papyrus">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_jRiIoSuJEemAOL1eRjr3BA" key="nature" value="UML_Nature"/>
+ </eAnnotations>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_jRrSkSuJEemAOL1eRjr3BA" name="accessmethod" type="_N7NvgCuCEemAOL1eRjr3BA" association="_jRYXoCuJEemAOL1eRjr3BA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Association" xmi:id="_2k86ECuJEemAOL1eRjr3BA" memberEnd="_2lGEAiuJEemAOL1eRjr3BA _2lGEAyuJEemAOL1eRjr3BA">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_2lGEACuJEemAOL1eRjr3BA" source="org.eclipse.papyrus">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_2lGEASuJEemAOL1eRjr3BA" key="nature" value="UML_Nature"/>
+ </eAnnotations>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_2lGEAyuJEemAOL1eRjr3BA" name="accessmethod" type="_N7NvgCuCEemAOL1eRjr3BA" association="_2k86ECuJEemAOL1eRjr3BA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Association" xmi:id="_RJV-wCuKEemAOL1eRjr3BA" memberEnd="_RJV-wyuKEemAOL1eRjr3BA _RJV-xCuKEemAOL1eRjr3BA">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_RJV-wSuKEemAOL1eRjr3BA" source="org.eclipse.papyrus">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_RJV-wiuKEemAOL1eRjr3BA" key="nature" value="UML_Nature"/>
+ </eAnnotations>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_RJV-xCuKEemAOL1eRjr3BA" name="resource" type="_GxJVgCuCEemAOL1eRjr3BA" association="_RJV-wCuKEemAOL1eRjr3BA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Association" xmi:id="_VepyICuKEemAOL1eRjr3BA" memberEnd="_VepyIyuKEemAOL1eRjr3BA _VepyJCuKEemAOL1eRjr3BA">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_VepyISuKEemAOL1eRjr3BA" source="org.eclipse.papyrus">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_VepyIiuKEemAOL1eRjr3BA" key="nature" value="UML_Nature"/>
+ </eAnnotations>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_VepyJCuKEemAOL1eRjr3BA" name="resource" type="_GxJVgCuCEemAOL1eRjr3BA" association="_VepyICuKEemAOL1eRjr3BA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Association" xmi:id="_jSOPsCuKEemAOL1eRjr3BA" memberEnd="_jSOPsyuKEemAOL1eRjr3BA _jSOPtCuKEemAOL1eRjr3BA">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_jSOPsSuKEemAOL1eRjr3BA" source="org.eclipse.papyrus">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_jSOPsiuKEemAOL1eRjr3BA" key="nature" value="UML_Nature"/>
+ </eAnnotations>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_jSOPtCuKEemAOL1eRjr3BA" name="attribute" type="_MrU08CuCEemAOL1eRjr3BA" association="_jSOPsCuKEemAOL1eRjr3BA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Association" xmi:id="_tLQKUCuKEemAOL1eRjr3BA" memberEnd="_tLZ7UiuKEemAOL1eRjr3BA _tLZ7UyuKEemAOL1eRjr3BA">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_tLZ7UCuKEemAOL1eRjr3BA" source="org.eclipse.papyrus">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_tLZ7USuKEemAOL1eRjr3BA" key="nature" value="UML_Nature"/>
+ </eAnnotations>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_tLZ7UyuKEemAOL1eRjr3BA" name="service" type="_Aa_rwCuCEemAOL1eRjr3BA" association="_tLQKUCuKEemAOL1eRjr3BA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Association" xmi:id="_U9qIcCuLEemAOL1eRjr3BA" memberEnd="_U9qIcyuLEemAOL1eRjr3BA _U9qIdCuLEemAOL1eRjr3BA">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_U9qIcSuLEemAOL1eRjr3BA" source="org.eclipse.papyrus">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_U9qIciuLEemAOL1eRjr3BA" key="nature" value="UML_Nature"/>
+ </eAnnotations>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_U9qIdCuLEemAOL1eRjr3BA" name="device" type="__pc6ECuBEemAOL1eRjr3BA" association="_U9qIcCuLEemAOL1eRjr3BA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Association" xmi:id="_e_xGkCuLEemAOL1eRjr3BA" memberEnd="_e_xGkyuLEemAOL1eRjr3BA _e_xGlCuLEemAOL1eRjr3BA">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_e_xGkSuLEemAOL1eRjr3BA" source="org.eclipse.papyrus">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_e_xGkiuLEemAOL1eRjr3BA" key="nature" value="UML_Nature"/>
+ </eAnnotations>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_e_xGlCuLEemAOL1eRjr3BA" name="gateway" type="_PVhxYCuCEemAOL1eRjr3BA" association="_e_xGkCuLEemAOL1eRjr3BA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Association" xmi:id="_rp_WcCuLEemAOL1eRjr3BA" memberEnd="_rqIgYSuLEemAOL1eRjr3BA _rqIgYiuLEemAOL1eRjr3BA">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_rp_WcSuLEemAOL1eRjr3BA" source="org.eclipse.papyrus">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_rqIgYCuLEemAOL1eRjr3BA" key="nature" value="UML_Nature"/>
+ </eAnnotations>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_rqIgYiuLEemAOL1eRjr3BA" name="studio" type="_-9aTcCuBEemAOL1eRjr3BA" association="_rp_WcCuLEemAOL1eRjr3BA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Association" xmi:id="_KSCBUCuNEemAOL1eRjr3BA" memberEnd="_KSCBUyuNEemAOL1eRjr3BA _KSCBVCuNEemAOL1eRjr3BA">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_KSCBUSuNEemAOL1eRjr3BA" source="org.eclipse.papyrus">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_KSCBUiuNEemAOL1eRjr3BA" key="nature" value="UML_Nature"/>
+ </eAnnotations>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Extension" xmi:id="_KAXNECuOEemAOL1eRjr3BA" name="E_TypedElement_TypedElement27" memberEnd="_KAg-ECuOEemAOL1eRjr3BA _KAg-ESuOEemAOL1eRjr3BA">
+ <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_KAg-ECuOEemAOL1eRjr3BA" name="extension_TypedElement" type="_S5I2gCuMEemAOL1eRjr3BA" aggregation="composite" association="_KAXNECuOEemAOL1eRjr3BA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Extension" xmi:id="_AZ0z0CuSEemAOL1eRjr3BA" name="E_AccessMethod_Operation29" memberEnd="_AZ0z0SuSEemAOL1eRjr3BA _AZ0z0iuSEemAOL1eRjr3BA">
+ <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_AZ0z0SuSEemAOL1eRjr3BA" name="extension_AccessMethod" type="_N7NvgCuCEemAOL1eRjr3BA" aggregation="composite" association="_AZ0z0CuSEemAOL1eRjr3BA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Extension" xmi:id="_zQ_toCuXEemAOL1eRjr3BA" name="E_StateVariable_Property31" memberEnd="_zQ_toSuXEemAOL1eRjr3BA _zQ_toiuXEemAOL1eRjr3BA">
+ <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_zQ_toSuXEemAOL1eRjr3BA" name="extension_StateVariable" type="_K7TBwCuCEemAOL1eRjr3BA" aggregation="composite" association="_zQ_toCuXEemAOL1eRjr3BA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Extension" xmi:id="_0wNdoCuXEemAOL1eRjr3BA" name="E_SensorData_Property32" memberEnd="_0wNdoSuXEemAOL1eRjr3BA _0wNdoiuXEemAOL1eRjr3BA">
+ <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_0wNdoSuXEemAOL1eRjr3BA" name="extension_SensorData" type="_JFBcoCuCEemAOL1eRjr3BA" aggregation="composite" association="_0wNdoCuXEemAOL1eRjr3BA"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Extension" xmi:id="_3dY1kCuXEemAOL1eRjr3BA" name="E_Property_Property33" memberEnd="_3dY1kSuXEemAOL1eRjr3BA _3dY1kiuXEemAOL1eRjr3BA">
+ <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_3dY1kSuXEemAOL1eRjr3BA" name="extension_Property" type="_HqRV4CuCEemAOL1eRjr3BA" aggregation="composite" association="_3dY1kCuXEemAOL1eRjr3BA"/>
+ </packagedElement>
+ </packagedElement>
<profileApplication xmi:type="uml:ProfileApplication" xmi:id="_pVg3QApVEei53_EZrjjGeA">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_pVj6kApVEei53_EZrjjGeA" source="http://www.eclipse.org/uml2/2.0.0/UML">
<references xmi:type="ecore:EPackage" href="pathmap://UML_PROFILES/Ecore.profile.uml#_z1OFcHjqEdy8S4Cr8Rc_NA"/>
@@ -651,14 +846,15 @@
<Ecore:EPackage xmi:id="_xMVlgAtFEeiGKKNRaLJTMQ" base_Package="_INCz4CthEeepEtCwqDnj2w" packageName="sensor" nsPrefix="Sensor" nsURI="http://www.eclipse.org/papyrus/iotml/0.7/IoTML/Hardware/Sensor" basePackage="org.eclipse.papyrus.iotml.hardware" prefix="Sensor"/>
<Ecore:EPackage xmi:id="_xukv4AtFEeiGKKNRaLJTMQ" base_Package="_JQEXICthEeepEtCwqDnj2w" packageName="network" nsPrefix="Network" nsURI="http://www.eclipse.org/papyrus/iotml/0.7/IoTML/Hardware/Network" basePackage="org.eclipse.papyrus.iotml.hardware" prefix="Network"/>
<Ecore:EPackage xmi:id="_yQ8dIAtFEeiGKKNRaLJTMQ" base_Package="_Ko050CthEeepEtCwqDnj2w" packageName="core" nsPrefix="Core" nsURI="http://www.eclipse.org/papyrus/iotml/0.7/IoTML/Hardware/Core" basePackage="org.eclipse.papyrus.iotml.hardware" prefix="Core"/>
- <Ecore:EPackage xmi:id="_LS3pgAtGEeiGKKNRaLJTMQ" base_Package="_WWmukCtsEeeZI6rMTYV60w" packageName="software" nsPrefix="Software" nsURI="http://www.eclipse.org/papyrus/iotml/0.7/IoTML/Software" basePackage="org.eclipse.papyrus.iotml"/>
+ <Ecore:EPackage xmi:id="_LS3pgAtGEeiGKKNRaLJTMQ" base_Package="_WWmukCtsEeeZI6rMTYV60w" packageName="software" nsPrefix="Software" nsURI="http://www.eclipse.org/papyrus/iotml/0.7/IoTML/Software" basePackage="org.eclipse.papyrus.iotml" prefix="Software"/>
<Ecore:EPackage xmi:id="_MLTGUAtGEeiGKKNRaLJTMQ" base_Package="_VGlbsCttEeeZI6rMTYV60w" packageName="artefact" nsPrefix="Artefact" nsURI="http://www.eclipse.org/papyrus/iotml/0.7/IoTML/Software/Artefact" basePackage="org.eclipse.papyrus.iotml.software" prefix="Artefact"/>
<Ecore:EPackage xmi:id="_OSv7AAtGEeiGKKNRaLJTMQ" base_Package="_aILwgCtxEeeZI6rMTYV60w" packageName="core" nsPrefix="Core" nsURI="http://www.eclipse.org/papyrus/iotml/0.7/IoTML/Software/Core" basePackage="org.eclipse.papyrus.iotml.software" prefix="Core"/>
<Ecore:EPackage xmi:id="_O0yREAtGEeiGKKNRaLJTMQ" base_Package="_hrtzYCtxEeeZI6rMTYV60w" packageName="structure" nsPrefix="Structure" nsURI="http://www.eclipse.org/papyrus/iotml/0.7/IoTML/Software/Core/Structure" basePackage="org.eclipse.papyrus.iotml.software.core" prefix="Structure"/>
<Ecore:EPackage xmi:id="_PsHhsAtGEeiGKKNRaLJTMQ" base_Package="_skdpICtyEeeZI6rMTYV60w" packageName="resource" nsPrefix="Resource" nsURI="http://www.eclipse.org/papyrus/iotml/0.7/IoTML/Software/Resource" basePackage="org.eclipse.papyrus.iotml.software" prefix="Resource"/>
- <Ecore:EPackage xmi:id="_S8uTsDP_EeiPBNQ6rB83Ew" base_Package="_RFXwgDP_EeiPBNQ6rB83Ew" packageName="s3pml" nsPrefix="S3PML" nsURI="http://www.eclipse.org/papyrus/iotml/0.7/IoTML/S3PML"/>
+ <Ecore:EPackage xmi:id="_S8uTsDP_EeiPBNQ6rB83Ew" base_Package="_RFXwgDP_EeiPBNQ6rB83Ew" packageName="s3pml" nsPrefix="S3PML" nsURI="http://www.eclipse.org/papyrus/iotml/0.7/IoTML/S3PML" basePackage="org.eclipse.papyrus.iotml" prefix="S3PML"/>
<Ecore:EPackage xmi:id="_VPjR8DP_EeiPBNQ6rB83Ew" base_Package="_UMmnMDP_EeiPBNQ6rB83Ew" packageName="software" nsPrefix="Software" nsURI="http://www.eclipse.org/papyrus/iotml/0.7/IoTML/S3PML/Software"/>
<Ecore:EPackage xmi:id="_YlDYsDQAEeiPBNQ6rB83Ew" base_Package="_XO1MoDQAEeiPBNQ6rB83Ew" packageName="protocol" nsPrefix="Protocol" nsURI="http://www.eclipse.org/papyrus/iotml/0.7/IoTML/S3PML/Protocol"/>
<Ecore:EPackage xmi:id="_dsQRIDQCEeiPBNQ6rB83Ew" base_Package="_bRxywDQCEeiPBNQ6rB83Ew" packageName="hardware" nsPrefix="Hardware" nsURI="http://www.eclipse.org/papyrus/iotml/0.7/IoTML/S3PML/Hardware"/>
<Ecore:EPackage xmi:id="_HcjNYDQFEeiPBNQ6rB83Ew" base_Package="_GMX-8DQFEeiPBNQ6rB83Ew" packageName="store" nsPrefix="Store" nsURI="http://www.eclipse.org/papyrus/iotml/0.7/IoTML/S3PML/Hardware/Store"/>
+ <Ecore:EPackage xmi:id="_p2Uk8CuBEemAOL1eRjr3BA" base_Package="_lz21ECuBEemAOL1eRjr3BA" packageName="sensinact" nsPrefix="SensiNact" nsURI="http://www.eclipse.org/papyrus/iotml/0.7/IoTML/SensiNact" basePackage="org.eclipse.papyrus.iotml" prefix="SensiNact"/>
</xmi:XMI>
diff --git a/org.eclipse.papyrus.iotml.profile/model/iotml.ecore b/org.eclipse.papyrus.iotml.profile/model/iotml.ecore
index 0ee895d..6acd212 100644
--- a/org.eclipse.papyrus.iotml.profile/model/iotml.ecore
+++ b/org.eclipse.papyrus.iotml.profile/model/iotml.ecore
@@ -5,7 +5,6 @@
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="IoTML"/>
</eAnnotations>
- <eClassifiers xsi:type="ecore:EEnum" name="Dummy"/>
<eSubpackages name="animate" nsURI="http://www.eclipse.org/papyrus/iotml/0.7/IoTML/Animate"
nsPrefix="Animate">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
@@ -21,7 +20,6 @@
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="Hardware"/>
</eAnnotations>
- <eClassifiers xsi:type="ecore:EEnum" name="Dummy"/>
<eSubpackages name="actuator" nsURI="http://www.eclipse.org/papyrus/iotml/0.7/IoTML/Hardware/Actuator"
nsPrefix="Actuator">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
@@ -155,7 +153,6 @@
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="S3PML"/>
</eAnnotations>
- <eClassifiers xsi:type="ecore:EEnum" name="Dummy"/>
<eSubpackages name="software" nsURI="http://www.eclipse.org/papyrus/iotml/0.7/IoTML/S3PML/Software"
nsPrefix="Software">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
@@ -248,13 +245,11 @@
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="Software"/>
</eAnnotations>
- <eClassifiers xsi:type="ecore:EEnum" name="Dummy"/>
<eSubpackages name="core" nsURI="http://www.eclipse.org/papyrus/iotml/0.7/IoTML/Software/Core"
nsPrefix="Core">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="Core"/>
</eAnnotations>
- <eClassifiers xsi:type="ecore:EEnum" name="Dummy"/>
<eSubpackages name="structure" nsURI="http://www.eclipse.org/papyrus/iotml/0.7/IoTML/Software/Core/Structure"
nsPrefix="Structure">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
@@ -494,4 +489,85 @@
</eAnnotations>
<eClassifiers xsi:type="ecore:EClass" name="PhysicalEntity" eSuperTypes="platform:/plugin/org.eclipse.papyrus.marte.static.profile/resources/MARTE.ecore#//MARTE_DesignModel/HRM/HwGeneral/HwResource"/>
</eSubpackages>
+ <eSubpackages name="sensinact" nsURI="http://www.eclipse.org/papyrus/iotml/0.7/IoTML/SensiNact"
+ nsPrefix="SensiNact">
+ <eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <details key="originalName" value="SensiNact"/>
+ </eAnnotations>
+ <eClassifiers xsi:type="ecore:EClass" name="TypedElement" abstract="true">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="value" ordered="false"
+ eType="#//software/core/structure/DetailedValueSpecification"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="base_TypedElement" ordered="false"
+ lowerBound="1" eType="ecore:EClass platform:/plugin/org.eclipse.uml2.uml/model/UML.ecore#//TypedElement"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Studio" eSuperTypes="#//animate/HumanUser">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="gateways" ordered="false"
+ lowerBound="1" upperBound="-1" eType="#//sensinact/Gateway"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Gateway" eSuperTypes="#//hardware/network/Gateway">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="devices" ordered="false"
+ lowerBound="1" upperBound="-1" eType="#//sensinact/Device"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Device" eSuperTypes="#//hardware/network/ConnectedDevice">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="friendlyName" ordered="false"
+ lowerBound="1" eType="ecore:EDataType platform:/plugin/org.eclipse.uml2.types/model/Types.ecore#//String"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="services" ordered="false"
+ lowerBound="1" upperBound="-1" eType="#//sensinact/Service"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Service" eSuperTypes="#//software/artefact/Service">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="friendlyName" ordered="false"
+ lowerBound="1" eType="ecore:EDataType platform:/plugin/org.eclipse.uml2.types/model/Types.ecore#//String"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="resources" ordered="false"
+ lowerBound="1" upperBound="-1" eType="#//sensinact/Resource"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Resource" eSuperTypes="#//software/resource/OnDeviceResource">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="friendlyName" ordered="false"
+ lowerBound="1" eType="ecore:EDataType platform:/plugin/org.eclipse.uml2.types/model/Types.ecore#//String"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="accessMethods" ordered="false"
+ lowerBound="1" upperBound="-1" eType="#//sensinact/AccessMethod"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="attributes" ordered="false"
+ lowerBound="1" upperBound="-1" eType="#//sensinact/Attribute"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="AccessMethod">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="type" ordered="false"
+ lowerBound="1" eType="#//sensinact/AccessMethodType"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="parameters" ordered="false"
+ upperBound="-1" eType="#//sensinact/Parameter"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="base_Operation" ordered="false"
+ lowerBound="1" eType="ecore:EClass platform:/plugin/org.eclipse.uml2.uml/model/UML.ecore#//Operation"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EEnum" name="AccessMethodType">
+ <eLiterals name="GET"/>
+ <eLiterals name="SET" value="1"/>
+ <eLiterals name="ACT" value="2"/>
+ <eLiterals name="SUBSCRIBE" value="3"/>
+ <eLiterals name="UNSUBSCRIBE" value="4"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Parameter" eSuperTypes="#//sensinact/TypedElement"/>
+ <eClassifiers xsi:type="ecore:EClass" name="Attribute" eSuperTypes="#//sensinact/TypedElement">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="metadata" ordered="false"
+ upperBound="-1" eType="#//sensinact/Metadata"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Metadata" eSuperTypes="#//sensinact/TypedElement"/>
+ <eClassifiers xsi:type="ecore:EClass" name="Property" eSuperTypes="#//sensinact/Resource">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="base_Property" ordered="false"
+ lowerBound="1" eType="ecore:EClass platform:/plugin/org.eclipse.uml2.uml/model/UML.ecore#//Property"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="SensorData" eSuperTypes="#//sensinact/Resource">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="base_Property" ordered="false"
+ lowerBound="1" eType="ecore:EClass platform:/plugin/org.eclipse.uml2.uml/model/UML.ecore#//Property"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="StateVariable" eSuperTypes="#//sensinact/Resource">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="modifier" ordered="false"
+ lowerBound="1" eType="#//sensinact/Action" volatile="true" transient="true"
+ derived="true" eOpposite="#//sensinact/Action/state"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="base_Property" ordered="false"
+ lowerBound="1" eType="ecore:EClass platform:/plugin/org.eclipse.uml2.uml/model/UML.ecore#//Property"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Action" eSuperTypes="#//sensinact/Resource #//software/artefact/PropertyAccess">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="state" ordered="false"
+ lowerBound="1" eType="#//sensinact/StateVariable" volatile="true" transient="true"
+ derived="true" eOpposite="#//sensinact/StateVariable/modifier"/>
+ </eClassifiers>
+ </eSubpackages>
</ecore:EPackage>
diff --git a/org.eclipse.papyrus.iotml.profile/plugin.xml b/org.eclipse.papyrus.iotml.profile/plugin.xml
index 69c5fe3..188a1af 100644
--- a/org.eclipse.papyrus.iotml.profile/plugin.xml
+++ b/org.eclipse.papyrus.iotml.profile/plugin.xml
@@ -52,14 +52,6 @@
<extension point="org.eclipse.emf.ecore.generated_package">
<!-- @generated IoT-ML.profile -->
<package
- uri="http://www.eclipse.org/papyrus/iotml/0.7/IoTML/Hardware"
- class="org.eclipse.papyrus.iotml.hardware.HardwarePackage"
- genModel="model/IoT-ML.profile.genmodel"/>
- </extension>
-
- <extension point="org.eclipse.emf.ecore.generated_package">
- <!-- @generated IoT-ML.profile -->
- <package
uri="http://www.eclipse.org/papyrus/iotml/0.7/IoTML/Hardware/Actuator"
class="org.eclipse.papyrus.iotml.hardware.actuator.ActuatorPackage"
genModel="model/IoT-ML.profile.genmodel"/>
@@ -92,14 +84,6 @@
<extension point="org.eclipse.emf.ecore.generated_package">
<!-- @generated IoT-ML.profile -->
<package
- uri="http://www.eclipse.org/papyrus/iotml/0.7/IoTML/S3PML"
- class="org.eclipse.papyrus.iotml.s3pml.S3pmlPackage"
- genModel="model/IoT-ML.profile.genmodel"/>
- </extension>
-
- <extension point="org.eclipse.emf.ecore.generated_package">
- <!-- @generated IoT-ML.profile -->
- <package
uri="http://www.eclipse.org/papyrus/iotml/0.7/IoTML/S3PML/Software"
class="org.eclipse.papyrus.iotml.s3pml.software.SoftwarePackage"
genModel="model/IoT-ML.profile.genmodel"/>
@@ -132,22 +116,6 @@
<extension point="org.eclipse.emf.ecore.generated_package">
<!-- @generated IoT-ML.profile -->
<package
- uri="http://www.eclipse.org/papyrus/iotml/0.7/IoTML/Software"
- class="org.eclipse.papyrus.iotml.software.SoftwarePackage"
- genModel="model/IoT-ML.profile.genmodel"/>
- </extension>
-
- <extension point="org.eclipse.emf.ecore.generated_package">
- <!-- @generated IoT-ML.profile -->
- <package
- uri="http://www.eclipse.org/papyrus/iotml/0.7/IoTML/Software/Core"
- class="org.eclipse.papyrus.iotml.software.core.CorePackage"
- genModel="model/IoT-ML.profile.genmodel"/>
- </extension>
-
- <extension point="org.eclipse.emf.ecore.generated_package">
- <!-- @generated IoT-ML.profile -->
- <package
uri="http://www.eclipse.org/papyrus/iotml/0.7/IoTML/Software/Core/Structure"
class="org.eclipse.papyrus.iotml.software.core.structure.StructurePackage"
genModel="model/IoT-ML.profile.genmodel"/>
@@ -176,4 +144,13 @@
class="org.eclipse.papyrus.iotml.hybrid.HybridPackage"
genModel="model/IoT-ML.profile.genmodel"/>
</extension>
+
+ <extension point="org.eclipse.emf.ecore.generated_package">
+ <!-- @generated IoT-ML.profile -->
+ <package
+ uri="http://www.eclipse.org/papyrus/iotml/0.7/IoTML/SensiNact"
+ class="org.eclipse.papyrus.iotml.sensinact.SensinactPackage"
+ genModel="model/IoT-ML.profile.genmodel"/>
+ </extension>
+
</plugin>
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/animate/impl/AnimatePackageImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/animate/impl/AnimatePackageImpl.java
index 3330c16..0e6d96b 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/animate/impl/AnimatePackageImpl.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/animate/impl/AnimatePackageImpl.java
@@ -37,9 +37,6 @@
import org.eclipse.papyrus.MARTE_Library.TimeLibrary.TimeLibraryPackage;
import org.eclipse.papyrus.MARTE_Library.TimeTypesLibrary.TimeTypesLibraryPackage;
-
-import org.eclipse.papyrus.iotml.IoTMLPackage;
-
import org.eclipse.papyrus.iotml.animate.AnimateFactory;
import org.eclipse.papyrus.iotml.animate.AnimatePackage;
import org.eclipse.papyrus.iotml.animate.HumanUser;
@@ -63,10 +60,6 @@
import org.eclipse.papyrus.iotml.hybrid.HybridPackage;
import org.eclipse.papyrus.iotml.hybrid.impl.HybridPackageImpl;
-
-import org.eclipse.papyrus.iotml.impl.IoTMLPackageImpl;
-
-import org.eclipse.papyrus.iotml.s3pml.S3pmlPackage;
import org.eclipse.papyrus.iotml.s3pml.hardware.HardwarePackage;
import org.eclipse.papyrus.iotml.s3pml.hardware.impl.HardwarePackageImpl;
@@ -74,8 +67,6 @@
import org.eclipse.papyrus.iotml.s3pml.hardware.store.StorePackage;
import org.eclipse.papyrus.iotml.s3pml.hardware.store.impl.StorePackageImpl;
-
-import org.eclipse.papyrus.iotml.s3pml.impl.S3pmlPackageImpl;
import org.eclipse.papyrus.iotml.s3pml.protocol.ProtocolPackage;
import org.eclipse.papyrus.iotml.s3pml.protocol.impl.ProtocolPackageImpl;
@@ -84,6 +75,8 @@
import org.eclipse.papyrus.iotml.s3pml.software.impl.SoftwarePackageImpl;
+import org.eclipse.papyrus.iotml.sensinact.SensinactPackage;
+import org.eclipse.papyrus.iotml.sensinact.impl.SensinactPackageImpl;
import org.eclipse.papyrus.iotml.software.artefact.ArtefactPackage;
import org.eclipse.papyrus.iotml.software.artefact.impl.ArtefactPackageImpl;
@@ -101,6 +94,7 @@
import org.eclipse.uml2.types.TypesPackage;
import org.eclipse.uml2.uml.UMLPackage;
+import org.eclipse.uml2.uml.profile.standard.StandardPackage;
/**
* <!-- begin-user-doc -->
@@ -144,7 +138,7 @@
/**
* 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 AnimatePackage#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 -->
@@ -158,7 +152,8 @@
if (isInited) return (AnimatePackage)EPackage.Registry.INSTANCE.getEPackage(AnimatePackage.eNS_URI);
// Obtain or create and register package
- AnimatePackageImpl theAnimatePackage = (AnimatePackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof AnimatePackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new AnimatePackageImpl());
+ Object registeredAnimatePackage = EPackage.Registry.INSTANCE.get(eNS_URI);
+ AnimatePackageImpl theAnimatePackage = registeredAnimatePackage instanceof AnimatePackageImpl ? (AnimatePackageImpl)registeredAnimatePackage : new AnimatePackageImpl();
isInited = true;
@@ -176,70 +171,71 @@
sysmlPackage.eINSTANCE.eClass();
TypesPackage.eINSTANCE.eClass();
UMLPackage.eINSTANCE.eClass();
+ StandardPackage.eINSTANCE.eClass();
// Obtain or create and register interdependencies
- IoTMLPackageImpl theIoTMLPackage = (IoTMLPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(IoTMLPackage.eNS_URI) instanceof IoTMLPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(IoTMLPackage.eNS_URI) : IoTMLPackage.eINSTANCE);
- org.eclipse.papyrus.iotml.hardware.impl.HardwarePackageImpl theHardwarePackage = (org.eclipse.papyrus.iotml.hardware.impl.HardwarePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.hardware.HardwarePackage.eNS_URI) instanceof org.eclipse.papyrus.iotml.hardware.impl.HardwarePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.hardware.HardwarePackage.eNS_URI) : org.eclipse.papyrus.iotml.hardware.HardwarePackage.eINSTANCE);
- ActuatorPackageImpl theActuatorPackage = (ActuatorPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ActuatorPackage.eNS_URI) instanceof ActuatorPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ActuatorPackage.eNS_URI) : ActuatorPackage.eINSTANCE);
- SensorPackageImpl theSensorPackage = (SensorPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(SensorPackage.eNS_URI) instanceof SensorPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(SensorPackage.eNS_URI) : SensorPackage.eINSTANCE);
- NetworkPackageImpl theNetworkPackage = (NetworkPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(NetworkPackage.eNS_URI) instanceof NetworkPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(NetworkPackage.eNS_URI) : NetworkPackage.eINSTANCE);
- CorePackageImpl theCorePackage = (CorePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(CorePackage.eNS_URI) instanceof CorePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(CorePackage.eNS_URI) : CorePackage.eINSTANCE);
- S3pmlPackageImpl theS3pmlPackage = (S3pmlPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(S3pmlPackage.eNS_URI) instanceof S3pmlPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(S3pmlPackage.eNS_URI) : S3pmlPackage.eINSTANCE);
- SoftwarePackageImpl theSoftwarePackage = (SoftwarePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(SoftwarePackage.eNS_URI) instanceof SoftwarePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(SoftwarePackage.eNS_URI) : SoftwarePackage.eINSTANCE);
- ProtocolPackageImpl theProtocolPackage = (ProtocolPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ProtocolPackage.eNS_URI) instanceof ProtocolPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ProtocolPackage.eNS_URI) : ProtocolPackage.eINSTANCE);
- HardwarePackageImpl theHardwarePackage_1 = (HardwarePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(HardwarePackage.eNS_URI) instanceof HardwarePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(HardwarePackage.eNS_URI) : HardwarePackage.eINSTANCE);
- StorePackageImpl theStorePackage = (StorePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(StorePackage.eNS_URI) instanceof StorePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(StorePackage.eNS_URI) : StorePackage.eINSTANCE);
- org.eclipse.papyrus.iotml.software.impl.SoftwarePackageImpl theSoftwarePackage_1 = (org.eclipse.papyrus.iotml.software.impl.SoftwarePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.software.SoftwarePackage.eNS_URI) instanceof org.eclipse.papyrus.iotml.software.impl.SoftwarePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.software.SoftwarePackage.eNS_URI) : org.eclipse.papyrus.iotml.software.SoftwarePackage.eINSTANCE);
- org.eclipse.papyrus.iotml.software.core.impl.CorePackageImpl theCorePackage_1 = (org.eclipse.papyrus.iotml.software.core.impl.CorePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.software.core.CorePackage.eNS_URI) instanceof org.eclipse.papyrus.iotml.software.core.impl.CorePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.software.core.CorePackage.eNS_URI) : org.eclipse.papyrus.iotml.software.core.CorePackage.eINSTANCE);
- StructurePackageImpl theStructurePackage = (StructurePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(StructurePackage.eNS_URI) instanceof StructurePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(StructurePackage.eNS_URI) : StructurePackage.eINSTANCE);
- ResourcePackageImpl theResourcePackage = (ResourcePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ResourcePackage.eNS_URI) instanceof ResourcePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ResourcePackage.eNS_URI) : ResourcePackage.eINSTANCE);
- ArtefactPackageImpl theArtefactPackage = (ArtefactPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ArtefactPackage.eNS_URI) instanceof ArtefactPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ArtefactPackage.eNS_URI) : ArtefactPackage.eINSTANCE);
- HybridPackageImpl theHybridPackage = (HybridPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(HybridPackage.eNS_URI) instanceof HybridPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(HybridPackage.eNS_URI) : HybridPackage.eINSTANCE);
+ Object registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ActuatorPackage.eNS_URI);
+ ActuatorPackageImpl theActuatorPackage = (ActuatorPackageImpl)(registeredPackage instanceof ActuatorPackageImpl ? registeredPackage : ActuatorPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(SensorPackage.eNS_URI);
+ SensorPackageImpl theSensorPackage = (SensorPackageImpl)(registeredPackage instanceof SensorPackageImpl ? registeredPackage : SensorPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(NetworkPackage.eNS_URI);
+ NetworkPackageImpl theNetworkPackage = (NetworkPackageImpl)(registeredPackage instanceof NetworkPackageImpl ? registeredPackage : NetworkPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(CorePackage.eNS_URI);
+ CorePackageImpl theCorePackage = (CorePackageImpl)(registeredPackage instanceof CorePackageImpl ? registeredPackage : CorePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(SoftwarePackage.eNS_URI);
+ SoftwarePackageImpl theSoftwarePackage = (SoftwarePackageImpl)(registeredPackage instanceof SoftwarePackageImpl ? registeredPackage : SoftwarePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ProtocolPackage.eNS_URI);
+ ProtocolPackageImpl theProtocolPackage = (ProtocolPackageImpl)(registeredPackage instanceof ProtocolPackageImpl ? registeredPackage : ProtocolPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(HardwarePackage.eNS_URI);
+ HardwarePackageImpl theHardwarePackage = (HardwarePackageImpl)(registeredPackage instanceof HardwarePackageImpl ? registeredPackage : HardwarePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(StorePackage.eNS_URI);
+ StorePackageImpl theStorePackage = (StorePackageImpl)(registeredPackage instanceof StorePackageImpl ? registeredPackage : StorePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(StructurePackage.eNS_URI);
+ StructurePackageImpl theStructurePackage = (StructurePackageImpl)(registeredPackage instanceof StructurePackageImpl ? registeredPackage : StructurePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ResourcePackage.eNS_URI);
+ ResourcePackageImpl theResourcePackage = (ResourcePackageImpl)(registeredPackage instanceof ResourcePackageImpl ? registeredPackage : ResourcePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ArtefactPackage.eNS_URI);
+ ArtefactPackageImpl theArtefactPackage = (ArtefactPackageImpl)(registeredPackage instanceof ArtefactPackageImpl ? registeredPackage : ArtefactPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(HybridPackage.eNS_URI);
+ HybridPackageImpl theHybridPackage = (HybridPackageImpl)(registeredPackage instanceof HybridPackageImpl ? registeredPackage : HybridPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(SensinactPackage.eNS_URI);
+ SensinactPackageImpl theSensinactPackage = (SensinactPackageImpl)(registeredPackage instanceof SensinactPackageImpl ? registeredPackage : SensinactPackage.eINSTANCE);
// Create package meta-data objects
theAnimatePackage.createPackageContents();
- theIoTMLPackage.createPackageContents();
- theHardwarePackage.createPackageContents();
theActuatorPackage.createPackageContents();
theSensorPackage.createPackageContents();
theNetworkPackage.createPackageContents();
theCorePackage.createPackageContents();
- theS3pmlPackage.createPackageContents();
theSoftwarePackage.createPackageContents();
theProtocolPackage.createPackageContents();
- theHardwarePackage_1.createPackageContents();
+ theHardwarePackage.createPackageContents();
theStorePackage.createPackageContents();
- theSoftwarePackage_1.createPackageContents();
- theCorePackage_1.createPackageContents();
theStructurePackage.createPackageContents();
theResourcePackage.createPackageContents();
theArtefactPackage.createPackageContents();
theHybridPackage.createPackageContents();
+ theSensinactPackage.createPackageContents();
// Initialize created meta-data
theAnimatePackage.initializePackageContents();
- theIoTMLPackage.initializePackageContents();
- theHardwarePackage.initializePackageContents();
theActuatorPackage.initializePackageContents();
theSensorPackage.initializePackageContents();
theNetworkPackage.initializePackageContents();
theCorePackage.initializePackageContents();
- theS3pmlPackage.initializePackageContents();
theSoftwarePackage.initializePackageContents();
theProtocolPackage.initializePackageContents();
- theHardwarePackage_1.initializePackageContents();
+ theHardwarePackage.initializePackageContents();
theStorePackage.initializePackageContents();
- theSoftwarePackage_1.initializePackageContents();
- theCorePackage_1.initializePackageContents();
theStructurePackage.initializePackageContents();
theResourcePackage.initializePackageContents();
theArtefactPackage.initializePackageContents();
theHybridPackage.initializePackageContents();
+ theSensinactPackage.initializePackageContents();
// Mark meta-data to indicate it can't be changed
theAnimatePackage.freeze();
-
// Update the registry and return the package
EPackage.Registry.INSTANCE.put(AnimatePackage.eNS_URI, theAnimatePackage);
return theAnimatePackage;
@@ -331,6 +327,9 @@
initEClass(humanUserEClass, HumanUser.class, "HumanUser", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEReference(getHumanUser_Base_Actor(), theUMLPackage.getActor(), null, "base_Actor", null, 1, 1, HumanUser.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ // Create resource
+ createResource(eNS_URI);
+
// Create annotations
// http://www.eclipse.org/uml2/2.0.0/UML
createUMLAnnotations();
@@ -343,12 +342,12 @@
* @generated
*/
protected void createUMLAnnotations() {
- String source = "http://www.eclipse.org/uml2/2.0.0/UML";
+ String source = "http://www.eclipse.org/uml2/2.0.0/UML";
addAnnotation
- (this,
- source,
+ (this,
+ source,
new String[] {
- "originalName", "Animate"
+ "originalName", "Animate"
});
}
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/hardware/actuator/impl/ActuatorPackageImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/hardware/actuator/impl/ActuatorPackageImpl.java
index e307e35..225c054 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/hardware/actuator/impl/ActuatorPackageImpl.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/hardware/actuator/impl/ActuatorPackageImpl.java
@@ -40,9 +40,6 @@
import org.eclipse.papyrus.MARTE_Library.TimeLibrary.TimeLibraryPackage;
import org.eclipse.papyrus.MARTE_Library.TimeTypesLibrary.TimeTypesLibraryPackage;
-
-import org.eclipse.papyrus.iotml.IoTMLPackage;
-
import org.eclipse.papyrus.iotml.animate.AnimatePackage;
import org.eclipse.papyrus.iotml.animate.impl.AnimatePackageImpl;
@@ -68,10 +65,6 @@
import org.eclipse.papyrus.iotml.hybrid.HybridPackage;
import org.eclipse.papyrus.iotml.hybrid.impl.HybridPackageImpl;
-
-import org.eclipse.papyrus.iotml.impl.IoTMLPackageImpl;
-
-import org.eclipse.papyrus.iotml.s3pml.S3pmlPackage;
import org.eclipse.papyrus.iotml.s3pml.hardware.HardwarePackage;
import org.eclipse.papyrus.iotml.s3pml.hardware.impl.HardwarePackageImpl;
@@ -79,8 +72,6 @@
import org.eclipse.papyrus.iotml.s3pml.hardware.store.StorePackage;
import org.eclipse.papyrus.iotml.s3pml.hardware.store.impl.StorePackageImpl;
-
-import org.eclipse.papyrus.iotml.s3pml.impl.S3pmlPackageImpl;
import org.eclipse.papyrus.iotml.s3pml.protocol.ProtocolPackage;
import org.eclipse.papyrus.iotml.s3pml.protocol.impl.ProtocolPackageImpl;
@@ -89,6 +80,8 @@
import org.eclipse.papyrus.iotml.s3pml.software.impl.SoftwarePackageImpl;
+import org.eclipse.papyrus.iotml.sensinact.SensinactPackage;
+import org.eclipse.papyrus.iotml.sensinact.impl.SensinactPackageImpl;
import org.eclipse.papyrus.iotml.software.artefact.ArtefactPackage;
import org.eclipse.papyrus.iotml.software.artefact.impl.ArtefactPackageImpl;
@@ -106,6 +99,7 @@
import org.eclipse.uml2.types.TypesPackage;
import org.eclipse.uml2.uml.UMLPackage;
+import org.eclipse.uml2.uml.profile.standard.StandardPackage;
/**
* <!-- begin-user-doc -->
@@ -163,7 +157,7 @@
/**
* 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 ActuatorPackage#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 -->
@@ -177,7 +171,8 @@
if (isInited) return (ActuatorPackage)EPackage.Registry.INSTANCE.getEPackage(ActuatorPackage.eNS_URI);
// Obtain or create and register package
- ActuatorPackageImpl theActuatorPackage = (ActuatorPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof ActuatorPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new ActuatorPackageImpl());
+ Object registeredActuatorPackage = EPackage.Registry.INSTANCE.get(eNS_URI);
+ ActuatorPackageImpl theActuatorPackage = registeredActuatorPackage instanceof ActuatorPackageImpl ? (ActuatorPackageImpl)registeredActuatorPackage : new ActuatorPackageImpl();
isInited = true;
@@ -195,70 +190,71 @@
sysmlPackage.eINSTANCE.eClass();
TypesPackage.eINSTANCE.eClass();
UMLPackage.eINSTANCE.eClass();
+ StandardPackage.eINSTANCE.eClass();
// Obtain or create and register interdependencies
- IoTMLPackageImpl theIoTMLPackage = (IoTMLPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(IoTMLPackage.eNS_URI) instanceof IoTMLPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(IoTMLPackage.eNS_URI) : IoTMLPackage.eINSTANCE);
- AnimatePackageImpl theAnimatePackage = (AnimatePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(AnimatePackage.eNS_URI) instanceof AnimatePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(AnimatePackage.eNS_URI) : AnimatePackage.eINSTANCE);
- org.eclipse.papyrus.iotml.hardware.impl.HardwarePackageImpl theHardwarePackage = (org.eclipse.papyrus.iotml.hardware.impl.HardwarePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.hardware.HardwarePackage.eNS_URI) instanceof org.eclipse.papyrus.iotml.hardware.impl.HardwarePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.hardware.HardwarePackage.eNS_URI) : org.eclipse.papyrus.iotml.hardware.HardwarePackage.eINSTANCE);
- SensorPackageImpl theSensorPackage = (SensorPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(SensorPackage.eNS_URI) instanceof SensorPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(SensorPackage.eNS_URI) : SensorPackage.eINSTANCE);
- NetworkPackageImpl theNetworkPackage = (NetworkPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(NetworkPackage.eNS_URI) instanceof NetworkPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(NetworkPackage.eNS_URI) : NetworkPackage.eINSTANCE);
- CorePackageImpl theCorePackage = (CorePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(CorePackage.eNS_URI) instanceof CorePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(CorePackage.eNS_URI) : CorePackage.eINSTANCE);
- S3pmlPackageImpl theS3pmlPackage = (S3pmlPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(S3pmlPackage.eNS_URI) instanceof S3pmlPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(S3pmlPackage.eNS_URI) : S3pmlPackage.eINSTANCE);
- SoftwarePackageImpl theSoftwarePackage = (SoftwarePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(SoftwarePackage.eNS_URI) instanceof SoftwarePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(SoftwarePackage.eNS_URI) : SoftwarePackage.eINSTANCE);
- ProtocolPackageImpl theProtocolPackage = (ProtocolPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ProtocolPackage.eNS_URI) instanceof ProtocolPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ProtocolPackage.eNS_URI) : ProtocolPackage.eINSTANCE);
- HardwarePackageImpl theHardwarePackage_1 = (HardwarePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(HardwarePackage.eNS_URI) instanceof HardwarePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(HardwarePackage.eNS_URI) : HardwarePackage.eINSTANCE);
- StorePackageImpl theStorePackage = (StorePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(StorePackage.eNS_URI) instanceof StorePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(StorePackage.eNS_URI) : StorePackage.eINSTANCE);
- org.eclipse.papyrus.iotml.software.impl.SoftwarePackageImpl theSoftwarePackage_1 = (org.eclipse.papyrus.iotml.software.impl.SoftwarePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.software.SoftwarePackage.eNS_URI) instanceof org.eclipse.papyrus.iotml.software.impl.SoftwarePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.software.SoftwarePackage.eNS_URI) : org.eclipse.papyrus.iotml.software.SoftwarePackage.eINSTANCE);
- org.eclipse.papyrus.iotml.software.core.impl.CorePackageImpl theCorePackage_1 = (org.eclipse.papyrus.iotml.software.core.impl.CorePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.software.core.CorePackage.eNS_URI) instanceof org.eclipse.papyrus.iotml.software.core.impl.CorePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.software.core.CorePackage.eNS_URI) : org.eclipse.papyrus.iotml.software.core.CorePackage.eINSTANCE);
- StructurePackageImpl theStructurePackage = (StructurePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(StructurePackage.eNS_URI) instanceof StructurePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(StructurePackage.eNS_URI) : StructurePackage.eINSTANCE);
- ResourcePackageImpl theResourcePackage = (ResourcePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ResourcePackage.eNS_URI) instanceof ResourcePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ResourcePackage.eNS_URI) : ResourcePackage.eINSTANCE);
- ArtefactPackageImpl theArtefactPackage = (ArtefactPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ArtefactPackage.eNS_URI) instanceof ArtefactPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ArtefactPackage.eNS_URI) : ArtefactPackage.eINSTANCE);
- HybridPackageImpl theHybridPackage = (HybridPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(HybridPackage.eNS_URI) instanceof HybridPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(HybridPackage.eNS_URI) : HybridPackage.eINSTANCE);
+ Object registeredPackage = EPackage.Registry.INSTANCE.getEPackage(AnimatePackage.eNS_URI);
+ AnimatePackageImpl theAnimatePackage = (AnimatePackageImpl)(registeredPackage instanceof AnimatePackageImpl ? registeredPackage : AnimatePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(SensorPackage.eNS_URI);
+ SensorPackageImpl theSensorPackage = (SensorPackageImpl)(registeredPackage instanceof SensorPackageImpl ? registeredPackage : SensorPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(NetworkPackage.eNS_URI);
+ NetworkPackageImpl theNetworkPackage = (NetworkPackageImpl)(registeredPackage instanceof NetworkPackageImpl ? registeredPackage : NetworkPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(CorePackage.eNS_URI);
+ CorePackageImpl theCorePackage = (CorePackageImpl)(registeredPackage instanceof CorePackageImpl ? registeredPackage : CorePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(SoftwarePackage.eNS_URI);
+ SoftwarePackageImpl theSoftwarePackage = (SoftwarePackageImpl)(registeredPackage instanceof SoftwarePackageImpl ? registeredPackage : SoftwarePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ProtocolPackage.eNS_URI);
+ ProtocolPackageImpl theProtocolPackage = (ProtocolPackageImpl)(registeredPackage instanceof ProtocolPackageImpl ? registeredPackage : ProtocolPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(HardwarePackage.eNS_URI);
+ HardwarePackageImpl theHardwarePackage = (HardwarePackageImpl)(registeredPackage instanceof HardwarePackageImpl ? registeredPackage : HardwarePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(StorePackage.eNS_URI);
+ StorePackageImpl theStorePackage = (StorePackageImpl)(registeredPackage instanceof StorePackageImpl ? registeredPackage : StorePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(StructurePackage.eNS_URI);
+ StructurePackageImpl theStructurePackage = (StructurePackageImpl)(registeredPackage instanceof StructurePackageImpl ? registeredPackage : StructurePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ResourcePackage.eNS_URI);
+ ResourcePackageImpl theResourcePackage = (ResourcePackageImpl)(registeredPackage instanceof ResourcePackageImpl ? registeredPackage : ResourcePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ArtefactPackage.eNS_URI);
+ ArtefactPackageImpl theArtefactPackage = (ArtefactPackageImpl)(registeredPackage instanceof ArtefactPackageImpl ? registeredPackage : ArtefactPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(HybridPackage.eNS_URI);
+ HybridPackageImpl theHybridPackage = (HybridPackageImpl)(registeredPackage instanceof HybridPackageImpl ? registeredPackage : HybridPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(SensinactPackage.eNS_URI);
+ SensinactPackageImpl theSensinactPackage = (SensinactPackageImpl)(registeredPackage instanceof SensinactPackageImpl ? registeredPackage : SensinactPackage.eINSTANCE);
// Create package meta-data objects
theActuatorPackage.createPackageContents();
- theIoTMLPackage.createPackageContents();
theAnimatePackage.createPackageContents();
- theHardwarePackage.createPackageContents();
theSensorPackage.createPackageContents();
theNetworkPackage.createPackageContents();
theCorePackage.createPackageContents();
- theS3pmlPackage.createPackageContents();
theSoftwarePackage.createPackageContents();
theProtocolPackage.createPackageContents();
- theHardwarePackage_1.createPackageContents();
+ theHardwarePackage.createPackageContents();
theStorePackage.createPackageContents();
- theSoftwarePackage_1.createPackageContents();
- theCorePackage_1.createPackageContents();
theStructurePackage.createPackageContents();
theResourcePackage.createPackageContents();
theArtefactPackage.createPackageContents();
theHybridPackage.createPackageContents();
+ theSensinactPackage.createPackageContents();
// Initialize created meta-data
theActuatorPackage.initializePackageContents();
- theIoTMLPackage.initializePackageContents();
theAnimatePackage.initializePackageContents();
- theHardwarePackage.initializePackageContents();
theSensorPackage.initializePackageContents();
theNetworkPackage.initializePackageContents();
theCorePackage.initializePackageContents();
- theS3pmlPackage.initializePackageContents();
theSoftwarePackage.initializePackageContents();
theProtocolPackage.initializePackageContents();
- theHardwarePackage_1.initializePackageContents();
+ theHardwarePackage.initializePackageContents();
theStorePackage.initializePackageContents();
- theSoftwarePackage_1.initializePackageContents();
- theCorePackage_1.initializePackageContents();
theStructurePackage.initializePackageContents();
theResourcePackage.initializePackageContents();
theArtefactPackage.initializePackageContents();
theHybridPackage.initializePackageContents();
+ theSensinactPackage.initializePackageContents();
// Mark meta-data to indicate it can't be changed
theActuatorPackage.freeze();
-
// Update the registry and return the package
EPackage.Registry.INSTANCE.put(ActuatorPackage.eNS_URI, theActuatorPackage);
return theActuatorPackage;
@@ -408,6 +404,9 @@
addEEnumLiteral(movementKindEEnum, MovementKind.LINEAR);
addEEnumLiteral(movementKindEEnum, MovementKind.ROTATIONAL);
+ // Create resource
+ createResource(eNS_URI);
+
// Create annotations
// http://www.eclipse.org/uml2/2.0.0/UML
createUMLAnnotations();
@@ -420,12 +419,12 @@
* @generated
*/
protected void createUMLAnnotations() {
- String source = "http://www.eclipse.org/uml2/2.0.0/UML";
+ String source = "http://www.eclipse.org/uml2/2.0.0/UML";
addAnnotation
- (this,
- source,
+ (this,
+ source,
new String[] {
- "originalName", "Actuator"
+ "originalName", "Actuator"
});
}
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/hardware/actuator/impl/HwCommonActuatorImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/hardware/actuator/impl/HwCommonActuatorImpl.java
index 74ae99f..439c2e7 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/hardware/actuator/impl/HwCommonActuatorImpl.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/hardware/actuator/impl/HwCommonActuatorImpl.java
@@ -271,7 +271,7 @@
public String toString() {
if (eIsProxy()) return super.toString();
- StringBuffer result = new StringBuffer(super.toString());
+ StringBuilder result = new StringBuilder(super.toString());
result.append(" (energyKind: ");
result.append(energyKind);
result.append(", movementKind: ");
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/hardware/core/impl/CorePackageImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/hardware/core/impl/CorePackageImpl.java
index 9778c81..46eb918 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/hardware/core/impl/CorePackageImpl.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/hardware/core/impl/CorePackageImpl.java
@@ -42,9 +42,6 @@
import org.eclipse.papyrus.MARTE_Library.TimeLibrary.TimeLibraryPackage;
import org.eclipse.papyrus.MARTE_Library.TimeTypesLibrary.TimeTypesLibraryPackage;
-
-import org.eclipse.papyrus.iotml.IoTMLPackage;
-
import org.eclipse.papyrus.iotml.animate.AnimatePackage;
import org.eclipse.papyrus.iotml.animate.impl.AnimatePackageImpl;
@@ -71,10 +68,6 @@
import org.eclipse.papyrus.iotml.hybrid.HybridPackage;
import org.eclipse.papyrus.iotml.hybrid.impl.HybridPackageImpl;
-
-import org.eclipse.papyrus.iotml.impl.IoTMLPackageImpl;
-
-import org.eclipse.papyrus.iotml.s3pml.S3pmlPackage;
import org.eclipse.papyrus.iotml.s3pml.hardware.HardwarePackage;
import org.eclipse.papyrus.iotml.s3pml.hardware.impl.HardwarePackageImpl;
@@ -82,8 +75,6 @@
import org.eclipse.papyrus.iotml.s3pml.hardware.store.StorePackage;
import org.eclipse.papyrus.iotml.s3pml.hardware.store.impl.StorePackageImpl;
-
-import org.eclipse.papyrus.iotml.s3pml.impl.S3pmlPackageImpl;
import org.eclipse.papyrus.iotml.s3pml.protocol.ProtocolPackage;
import org.eclipse.papyrus.iotml.s3pml.protocol.impl.ProtocolPackageImpl;
@@ -92,6 +83,8 @@
import org.eclipse.papyrus.iotml.s3pml.software.impl.SoftwarePackageImpl;
+import org.eclipse.papyrus.iotml.sensinact.SensinactPackage;
+import org.eclipse.papyrus.iotml.sensinact.impl.SensinactPackageImpl;
import org.eclipse.papyrus.iotml.software.artefact.ArtefactPackage;
import org.eclipse.papyrus.iotml.software.artefact.impl.ArtefactPackageImpl;
@@ -109,6 +102,7 @@
import org.eclipse.uml2.types.TypesPackage;
import org.eclipse.uml2.uml.UMLPackage;
+import org.eclipse.uml2.uml.profile.standard.StandardPackage;
/**
* <!-- begin-user-doc -->
@@ -159,7 +153,7 @@
/**
* 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 CorePackage#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 -->
@@ -173,7 +167,8 @@
if (isInited) return (CorePackage)EPackage.Registry.INSTANCE.getEPackage(CorePackage.eNS_URI);
// Obtain or create and register package
- CorePackageImpl theCorePackage = (CorePackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof CorePackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new CorePackageImpl());
+ Object registeredCorePackage = EPackage.Registry.INSTANCE.get(eNS_URI);
+ CorePackageImpl theCorePackage = registeredCorePackage instanceof CorePackageImpl ? (CorePackageImpl)registeredCorePackage : new CorePackageImpl();
isInited = true;
@@ -191,69 +186,71 @@
sysmlPackage.eINSTANCE.eClass();
TypesPackage.eINSTANCE.eClass();
UMLPackage.eINSTANCE.eClass();
+ StandardPackage.eINSTANCE.eClass();
// Obtain or create and register interdependencies
- IoTMLPackageImpl theIoTMLPackage = (IoTMLPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(IoTMLPackage.eNS_URI) instanceof IoTMLPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(IoTMLPackage.eNS_URI) : IoTMLPackage.eINSTANCE);
- AnimatePackageImpl theAnimatePackage = (AnimatePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(AnimatePackage.eNS_URI) instanceof AnimatePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(AnimatePackage.eNS_URI) : AnimatePackage.eINSTANCE);
- org.eclipse.papyrus.iotml.hardware.impl.HardwarePackageImpl theHardwarePackage = (org.eclipse.papyrus.iotml.hardware.impl.HardwarePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.hardware.HardwarePackage.eNS_URI) instanceof org.eclipse.papyrus.iotml.hardware.impl.HardwarePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.hardware.HardwarePackage.eNS_URI) : org.eclipse.papyrus.iotml.hardware.HardwarePackage.eINSTANCE);
- ActuatorPackageImpl theActuatorPackage = (ActuatorPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ActuatorPackage.eNS_URI) instanceof ActuatorPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ActuatorPackage.eNS_URI) : ActuatorPackage.eINSTANCE);
- SensorPackageImpl theSensorPackage = (SensorPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(SensorPackage.eNS_URI) instanceof SensorPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(SensorPackage.eNS_URI) : SensorPackage.eINSTANCE);
- NetworkPackageImpl theNetworkPackage = (NetworkPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(NetworkPackage.eNS_URI) instanceof NetworkPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(NetworkPackage.eNS_URI) : NetworkPackage.eINSTANCE);
- S3pmlPackageImpl theS3pmlPackage = (S3pmlPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(S3pmlPackage.eNS_URI) instanceof S3pmlPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(S3pmlPackage.eNS_URI) : S3pmlPackage.eINSTANCE);
- SoftwarePackageImpl theSoftwarePackage = (SoftwarePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(SoftwarePackage.eNS_URI) instanceof SoftwarePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(SoftwarePackage.eNS_URI) : SoftwarePackage.eINSTANCE);
- ProtocolPackageImpl theProtocolPackage = (ProtocolPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ProtocolPackage.eNS_URI) instanceof ProtocolPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ProtocolPackage.eNS_URI) : ProtocolPackage.eINSTANCE);
- HardwarePackageImpl theHardwarePackage_1 = (HardwarePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(HardwarePackage.eNS_URI) instanceof HardwarePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(HardwarePackage.eNS_URI) : HardwarePackage.eINSTANCE);
- StorePackageImpl theStorePackage = (StorePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(StorePackage.eNS_URI) instanceof StorePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(StorePackage.eNS_URI) : StorePackage.eINSTANCE);
- org.eclipse.papyrus.iotml.software.impl.SoftwarePackageImpl theSoftwarePackage_1 = (org.eclipse.papyrus.iotml.software.impl.SoftwarePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.software.SoftwarePackage.eNS_URI) instanceof org.eclipse.papyrus.iotml.software.impl.SoftwarePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.software.SoftwarePackage.eNS_URI) : org.eclipse.papyrus.iotml.software.SoftwarePackage.eINSTANCE);
- org.eclipse.papyrus.iotml.software.core.impl.CorePackageImpl theCorePackage_1 = (org.eclipse.papyrus.iotml.software.core.impl.CorePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.software.core.CorePackage.eNS_URI) instanceof org.eclipse.papyrus.iotml.software.core.impl.CorePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.software.core.CorePackage.eNS_URI) : org.eclipse.papyrus.iotml.software.core.CorePackage.eINSTANCE);
- StructurePackageImpl theStructurePackage = (StructurePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(StructurePackage.eNS_URI) instanceof StructurePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(StructurePackage.eNS_URI) : StructurePackage.eINSTANCE);
- ResourcePackageImpl theResourcePackage = (ResourcePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ResourcePackage.eNS_URI) instanceof ResourcePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ResourcePackage.eNS_URI) : ResourcePackage.eINSTANCE);
- ArtefactPackageImpl theArtefactPackage = (ArtefactPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ArtefactPackage.eNS_URI) instanceof ArtefactPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ArtefactPackage.eNS_URI) : ArtefactPackage.eINSTANCE);
- HybridPackageImpl theHybridPackage = (HybridPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(HybridPackage.eNS_URI) instanceof HybridPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(HybridPackage.eNS_URI) : HybridPackage.eINSTANCE);
+ Object registeredPackage = EPackage.Registry.INSTANCE.getEPackage(AnimatePackage.eNS_URI);
+ AnimatePackageImpl theAnimatePackage = (AnimatePackageImpl)(registeredPackage instanceof AnimatePackageImpl ? registeredPackage : AnimatePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ActuatorPackage.eNS_URI);
+ ActuatorPackageImpl theActuatorPackage = (ActuatorPackageImpl)(registeredPackage instanceof ActuatorPackageImpl ? registeredPackage : ActuatorPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(SensorPackage.eNS_URI);
+ SensorPackageImpl theSensorPackage = (SensorPackageImpl)(registeredPackage instanceof SensorPackageImpl ? registeredPackage : SensorPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(NetworkPackage.eNS_URI);
+ NetworkPackageImpl theNetworkPackage = (NetworkPackageImpl)(registeredPackage instanceof NetworkPackageImpl ? registeredPackage : NetworkPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(SoftwarePackage.eNS_URI);
+ SoftwarePackageImpl theSoftwarePackage = (SoftwarePackageImpl)(registeredPackage instanceof SoftwarePackageImpl ? registeredPackage : SoftwarePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ProtocolPackage.eNS_URI);
+ ProtocolPackageImpl theProtocolPackage = (ProtocolPackageImpl)(registeredPackage instanceof ProtocolPackageImpl ? registeredPackage : ProtocolPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(HardwarePackage.eNS_URI);
+ HardwarePackageImpl theHardwarePackage = (HardwarePackageImpl)(registeredPackage instanceof HardwarePackageImpl ? registeredPackage : HardwarePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(StorePackage.eNS_URI);
+ StorePackageImpl theStorePackage = (StorePackageImpl)(registeredPackage instanceof StorePackageImpl ? registeredPackage : StorePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(StructurePackage.eNS_URI);
+ StructurePackageImpl theStructurePackage = (StructurePackageImpl)(registeredPackage instanceof StructurePackageImpl ? registeredPackage : StructurePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ResourcePackage.eNS_URI);
+ ResourcePackageImpl theResourcePackage = (ResourcePackageImpl)(registeredPackage instanceof ResourcePackageImpl ? registeredPackage : ResourcePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ArtefactPackage.eNS_URI);
+ ArtefactPackageImpl theArtefactPackage = (ArtefactPackageImpl)(registeredPackage instanceof ArtefactPackageImpl ? registeredPackage : ArtefactPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(HybridPackage.eNS_URI);
+ HybridPackageImpl theHybridPackage = (HybridPackageImpl)(registeredPackage instanceof HybridPackageImpl ? registeredPackage : HybridPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(SensinactPackage.eNS_URI);
+ SensinactPackageImpl theSensinactPackage = (SensinactPackageImpl)(registeredPackage instanceof SensinactPackageImpl ? registeredPackage : SensinactPackage.eINSTANCE);
// Create package meta-data objects
theCorePackage.createPackageContents();
- theIoTMLPackage.createPackageContents();
theAnimatePackage.createPackageContents();
- theHardwarePackage.createPackageContents();
theActuatorPackage.createPackageContents();
theSensorPackage.createPackageContents();
theNetworkPackage.createPackageContents();
- theS3pmlPackage.createPackageContents();
theSoftwarePackage.createPackageContents();
theProtocolPackage.createPackageContents();
- theHardwarePackage_1.createPackageContents();
+ theHardwarePackage.createPackageContents();
theStorePackage.createPackageContents();
- theSoftwarePackage_1.createPackageContents();
- theCorePackage_1.createPackageContents();
theStructurePackage.createPackageContents();
theResourcePackage.createPackageContents();
theArtefactPackage.createPackageContents();
theHybridPackage.createPackageContents();
+ theSensinactPackage.createPackageContents();
// Initialize created meta-data
theCorePackage.initializePackageContents();
- theIoTMLPackage.initializePackageContents();
theAnimatePackage.initializePackageContents();
- theHardwarePackage.initializePackageContents();
theActuatorPackage.initializePackageContents();
theSensorPackage.initializePackageContents();
theNetworkPackage.initializePackageContents();
- theS3pmlPackage.initializePackageContents();
theSoftwarePackage.initializePackageContents();
theProtocolPackage.initializePackageContents();
- theHardwarePackage_1.initializePackageContents();
+ theHardwarePackage.initializePackageContents();
theStorePackage.initializePackageContents();
- theSoftwarePackage_1.initializePackageContents();
- theCorePackage_1.initializePackageContents();
theStructurePackage.initializePackageContents();
theResourcePackage.initializePackageContents();
theArtefactPackage.initializePackageContents();
theHybridPackage.initializePackageContents();
+ theSensinactPackage.initializePackageContents();
// Register package validator
EValidator.Registry.INSTANCE.put
- (theCorePackage,
+ (theCorePackage,
new EValidator.Descriptor() {
public EValidator getEValidator() {
return CoreValidator.INSTANCE;
@@ -263,7 +260,6 @@
// Mark meta-data to indicate it can't be changed
theCorePackage.freeze();
-
// Update the registry and return the package
EPackage.Registry.INSTANCE.put(CorePackage.eNS_URI, theCorePackage);
return theCorePackage;
@@ -397,6 +393,9 @@
g1.getETypeArguments().add(g2);
addEParameter(op, g1, "context", 0, 1, IS_UNIQUE, IS_ORDERED);
+ // Create resource
+ createResource(eNS_URI);
+
// Create annotations
// http://www.eclipse.org/uml2/2.0.0/UML
createUMLAnnotations();
@@ -409,12 +408,12 @@
* @generated
*/
protected void createUMLAnnotations() {
- String source = "http://www.eclipse.org/uml2/2.0.0/UML";
+ String source = "http://www.eclipse.org/uml2/2.0.0/UML";
addAnnotation
- (this,
- source,
+ (this,
+ source,
new String[] {
- "originalName", "Core"
+ "originalName", "Core"
});
}
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/hardware/network/impl/NetworkPackageImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/hardware/network/impl/NetworkPackageImpl.java
index 5b98882..0739339 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/hardware/network/impl/NetworkPackageImpl.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/hardware/network/impl/NetworkPackageImpl.java
@@ -40,9 +40,6 @@
import org.eclipse.papyrus.MARTE_Library.TimeLibrary.TimeLibraryPackage;
import org.eclipse.papyrus.MARTE_Library.TimeTypesLibrary.TimeTypesLibraryPackage;
-
-import org.eclipse.papyrus.iotml.IoTMLPackage;
-
import org.eclipse.papyrus.iotml.animate.AnimatePackage;
import org.eclipse.papyrus.iotml.animate.impl.AnimatePackageImpl;
@@ -68,10 +65,6 @@
import org.eclipse.papyrus.iotml.hybrid.HybridPackage;
import org.eclipse.papyrus.iotml.hybrid.impl.HybridPackageImpl;
-
-import org.eclipse.papyrus.iotml.impl.IoTMLPackageImpl;
-
-import org.eclipse.papyrus.iotml.s3pml.S3pmlPackage;
import org.eclipse.papyrus.iotml.s3pml.hardware.HardwarePackage;
import org.eclipse.papyrus.iotml.s3pml.hardware.impl.HardwarePackageImpl;
@@ -79,8 +72,6 @@
import org.eclipse.papyrus.iotml.s3pml.hardware.store.StorePackage;
import org.eclipse.papyrus.iotml.s3pml.hardware.store.impl.StorePackageImpl;
-
-import org.eclipse.papyrus.iotml.s3pml.impl.S3pmlPackageImpl;
import org.eclipse.papyrus.iotml.s3pml.protocol.ProtocolPackage;
import org.eclipse.papyrus.iotml.s3pml.protocol.impl.ProtocolPackageImpl;
@@ -89,6 +80,8 @@
import org.eclipse.papyrus.iotml.s3pml.software.impl.SoftwarePackageImpl;
+import org.eclipse.papyrus.iotml.sensinact.SensinactPackage;
+import org.eclipse.papyrus.iotml.sensinact.impl.SensinactPackageImpl;
import org.eclipse.papyrus.iotml.software.artefact.ArtefactPackage;
import org.eclipse.papyrus.iotml.software.artefact.impl.ArtefactPackageImpl;
@@ -106,6 +99,7 @@
import org.eclipse.uml2.types.TypesPackage;
import org.eclipse.uml2.uml.UMLPackage;
+import org.eclipse.uml2.uml.profile.standard.StandardPackage;
/**
* <!-- begin-user-doc -->
@@ -163,7 +157,7 @@
/**
* 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 NetworkPackage#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 -->
@@ -177,7 +171,8 @@
if (isInited) return (NetworkPackage)EPackage.Registry.INSTANCE.getEPackage(NetworkPackage.eNS_URI);
// Obtain or create and register package
- NetworkPackageImpl theNetworkPackage = (NetworkPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof NetworkPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new NetworkPackageImpl());
+ Object registeredNetworkPackage = EPackage.Registry.INSTANCE.get(eNS_URI);
+ NetworkPackageImpl theNetworkPackage = registeredNetworkPackage instanceof NetworkPackageImpl ? (NetworkPackageImpl)registeredNetworkPackage : new NetworkPackageImpl();
isInited = true;
@@ -195,70 +190,71 @@
sysmlPackage.eINSTANCE.eClass();
TypesPackage.eINSTANCE.eClass();
UMLPackage.eINSTANCE.eClass();
+ StandardPackage.eINSTANCE.eClass();
// Obtain or create and register interdependencies
- IoTMLPackageImpl theIoTMLPackage = (IoTMLPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(IoTMLPackage.eNS_URI) instanceof IoTMLPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(IoTMLPackage.eNS_URI) : IoTMLPackage.eINSTANCE);
- AnimatePackageImpl theAnimatePackage = (AnimatePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(AnimatePackage.eNS_URI) instanceof AnimatePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(AnimatePackage.eNS_URI) : AnimatePackage.eINSTANCE);
- org.eclipse.papyrus.iotml.hardware.impl.HardwarePackageImpl theHardwarePackage = (org.eclipse.papyrus.iotml.hardware.impl.HardwarePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.hardware.HardwarePackage.eNS_URI) instanceof org.eclipse.papyrus.iotml.hardware.impl.HardwarePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.hardware.HardwarePackage.eNS_URI) : org.eclipse.papyrus.iotml.hardware.HardwarePackage.eINSTANCE);
- ActuatorPackageImpl theActuatorPackage = (ActuatorPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ActuatorPackage.eNS_URI) instanceof ActuatorPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ActuatorPackage.eNS_URI) : ActuatorPackage.eINSTANCE);
- SensorPackageImpl theSensorPackage = (SensorPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(SensorPackage.eNS_URI) instanceof SensorPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(SensorPackage.eNS_URI) : SensorPackage.eINSTANCE);
- CorePackageImpl theCorePackage = (CorePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(CorePackage.eNS_URI) instanceof CorePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(CorePackage.eNS_URI) : CorePackage.eINSTANCE);
- S3pmlPackageImpl theS3pmlPackage = (S3pmlPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(S3pmlPackage.eNS_URI) instanceof S3pmlPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(S3pmlPackage.eNS_URI) : S3pmlPackage.eINSTANCE);
- SoftwarePackageImpl theSoftwarePackage = (SoftwarePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(SoftwarePackage.eNS_URI) instanceof SoftwarePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(SoftwarePackage.eNS_URI) : SoftwarePackage.eINSTANCE);
- ProtocolPackageImpl theProtocolPackage = (ProtocolPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ProtocolPackage.eNS_URI) instanceof ProtocolPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ProtocolPackage.eNS_URI) : ProtocolPackage.eINSTANCE);
- HardwarePackageImpl theHardwarePackage_1 = (HardwarePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(HardwarePackage.eNS_URI) instanceof HardwarePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(HardwarePackage.eNS_URI) : HardwarePackage.eINSTANCE);
- StorePackageImpl theStorePackage = (StorePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(StorePackage.eNS_URI) instanceof StorePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(StorePackage.eNS_URI) : StorePackage.eINSTANCE);
- org.eclipse.papyrus.iotml.software.impl.SoftwarePackageImpl theSoftwarePackage_1 = (org.eclipse.papyrus.iotml.software.impl.SoftwarePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.software.SoftwarePackage.eNS_URI) instanceof org.eclipse.papyrus.iotml.software.impl.SoftwarePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.software.SoftwarePackage.eNS_URI) : org.eclipse.papyrus.iotml.software.SoftwarePackage.eINSTANCE);
- org.eclipse.papyrus.iotml.software.core.impl.CorePackageImpl theCorePackage_1 = (org.eclipse.papyrus.iotml.software.core.impl.CorePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.software.core.CorePackage.eNS_URI) instanceof org.eclipse.papyrus.iotml.software.core.impl.CorePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.software.core.CorePackage.eNS_URI) : org.eclipse.papyrus.iotml.software.core.CorePackage.eINSTANCE);
- StructurePackageImpl theStructurePackage = (StructurePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(StructurePackage.eNS_URI) instanceof StructurePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(StructurePackage.eNS_URI) : StructurePackage.eINSTANCE);
- ResourcePackageImpl theResourcePackage = (ResourcePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ResourcePackage.eNS_URI) instanceof ResourcePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ResourcePackage.eNS_URI) : ResourcePackage.eINSTANCE);
- ArtefactPackageImpl theArtefactPackage = (ArtefactPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ArtefactPackage.eNS_URI) instanceof ArtefactPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ArtefactPackage.eNS_URI) : ArtefactPackage.eINSTANCE);
- HybridPackageImpl theHybridPackage = (HybridPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(HybridPackage.eNS_URI) instanceof HybridPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(HybridPackage.eNS_URI) : HybridPackage.eINSTANCE);
+ Object registeredPackage = EPackage.Registry.INSTANCE.getEPackage(AnimatePackage.eNS_URI);
+ AnimatePackageImpl theAnimatePackage = (AnimatePackageImpl)(registeredPackage instanceof AnimatePackageImpl ? registeredPackage : AnimatePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ActuatorPackage.eNS_URI);
+ ActuatorPackageImpl theActuatorPackage = (ActuatorPackageImpl)(registeredPackage instanceof ActuatorPackageImpl ? registeredPackage : ActuatorPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(SensorPackage.eNS_URI);
+ SensorPackageImpl theSensorPackage = (SensorPackageImpl)(registeredPackage instanceof SensorPackageImpl ? registeredPackage : SensorPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(CorePackage.eNS_URI);
+ CorePackageImpl theCorePackage = (CorePackageImpl)(registeredPackage instanceof CorePackageImpl ? registeredPackage : CorePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(SoftwarePackage.eNS_URI);
+ SoftwarePackageImpl theSoftwarePackage = (SoftwarePackageImpl)(registeredPackage instanceof SoftwarePackageImpl ? registeredPackage : SoftwarePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ProtocolPackage.eNS_URI);
+ ProtocolPackageImpl theProtocolPackage = (ProtocolPackageImpl)(registeredPackage instanceof ProtocolPackageImpl ? registeredPackage : ProtocolPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(HardwarePackage.eNS_URI);
+ HardwarePackageImpl theHardwarePackage = (HardwarePackageImpl)(registeredPackage instanceof HardwarePackageImpl ? registeredPackage : HardwarePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(StorePackage.eNS_URI);
+ StorePackageImpl theStorePackage = (StorePackageImpl)(registeredPackage instanceof StorePackageImpl ? registeredPackage : StorePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(StructurePackage.eNS_URI);
+ StructurePackageImpl theStructurePackage = (StructurePackageImpl)(registeredPackage instanceof StructurePackageImpl ? registeredPackage : StructurePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ResourcePackage.eNS_URI);
+ ResourcePackageImpl theResourcePackage = (ResourcePackageImpl)(registeredPackage instanceof ResourcePackageImpl ? registeredPackage : ResourcePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ArtefactPackage.eNS_URI);
+ ArtefactPackageImpl theArtefactPackage = (ArtefactPackageImpl)(registeredPackage instanceof ArtefactPackageImpl ? registeredPackage : ArtefactPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(HybridPackage.eNS_URI);
+ HybridPackageImpl theHybridPackage = (HybridPackageImpl)(registeredPackage instanceof HybridPackageImpl ? registeredPackage : HybridPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(SensinactPackage.eNS_URI);
+ SensinactPackageImpl theSensinactPackage = (SensinactPackageImpl)(registeredPackage instanceof SensinactPackageImpl ? registeredPackage : SensinactPackage.eINSTANCE);
// Create package meta-data objects
theNetworkPackage.createPackageContents();
- theIoTMLPackage.createPackageContents();
theAnimatePackage.createPackageContents();
- theHardwarePackage.createPackageContents();
theActuatorPackage.createPackageContents();
theSensorPackage.createPackageContents();
theCorePackage.createPackageContents();
- theS3pmlPackage.createPackageContents();
theSoftwarePackage.createPackageContents();
theProtocolPackage.createPackageContents();
- theHardwarePackage_1.createPackageContents();
+ theHardwarePackage.createPackageContents();
theStorePackage.createPackageContents();
- theSoftwarePackage_1.createPackageContents();
- theCorePackage_1.createPackageContents();
theStructurePackage.createPackageContents();
theResourcePackage.createPackageContents();
theArtefactPackage.createPackageContents();
theHybridPackage.createPackageContents();
+ theSensinactPackage.createPackageContents();
// Initialize created meta-data
theNetworkPackage.initializePackageContents();
- theIoTMLPackage.initializePackageContents();
theAnimatePackage.initializePackageContents();
- theHardwarePackage.initializePackageContents();
theActuatorPackage.initializePackageContents();
theSensorPackage.initializePackageContents();
theCorePackage.initializePackageContents();
- theS3pmlPackage.initializePackageContents();
theSoftwarePackage.initializePackageContents();
theProtocolPackage.initializePackageContents();
- theHardwarePackage_1.initializePackageContents();
+ theHardwarePackage.initializePackageContents();
theStorePackage.initializePackageContents();
- theSoftwarePackage_1.initializePackageContents();
- theCorePackage_1.initializePackageContents();
theStructurePackage.initializePackageContents();
theResourcePackage.initializePackageContents();
theArtefactPackage.initializePackageContents();
theHybridPackage.initializePackageContents();
+ theSensinactPackage.initializePackageContents();
// Mark meta-data to indicate it can't be changed
theNetworkPackage.freeze();
-
// Update the registry and return the package
EPackage.Registry.INSTANCE.put(NetworkPackage.eNS_URI, theNetworkPackage);
return theNetworkPackage;
@@ -352,7 +348,7 @@
// Obtain other dependent packages
HwCommunicationPackage theHwCommunicationPackage = (HwCommunicationPackage)EPackage.Registry.INSTANCE.getEPackage(HwCommunicationPackage.eNS_URI);
HwComputingPackage theHwComputingPackage = (HwComputingPackage)EPackage.Registry.INSTANCE.getEPackage(HwComputingPackage.eNS_URI);
- HardwarePackage theHardwarePackage_1 = (HardwarePackage)EPackage.Registry.INSTANCE.getEPackage(HardwarePackage.eNS_URI);
+ HardwarePackage theHardwarePackage = (HardwarePackage)EPackage.Registry.INSTANCE.getEPackage(HardwarePackage.eNS_URI);
// Create type parameters
@@ -361,7 +357,7 @@
// Add supertypes to classes
connectedDeviceEClass.getESuperTypes().add(theHwCommunicationPackage.getHwCommunicationResource());
gatewayEClass.getESuperTypes().add(theHwComputingPackage.getHwComputingResource());
- gatewayEClass.getESuperTypes().add(theHardwarePackage_1.getIoTDevice());
+ gatewayEClass.getESuperTypes().add(theHardwarePackage.getIoTDevice());
serverEClass.getESuperTypes().add(theHwComputingPackage.getHwComputingResource());
serverEClass.getESuperTypes().add(this.getConnectedDevice());
@@ -372,6 +368,9 @@
initEClass(serverEClass, Server.class, "Server", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ // Create resource
+ createResource(eNS_URI);
+
// Create annotations
// http://www.eclipse.org/uml2/2.0.0/UML
createUMLAnnotations();
@@ -384,12 +383,12 @@
* @generated
*/
protected void createUMLAnnotations() {
- String source = "http://www.eclipse.org/uml2/2.0.0/UML";
+ String source = "http://www.eclipse.org/uml2/2.0.0/UML";
addAnnotation
- (this,
- source,
+ (this,
+ source,
new String[] {
- "originalName", "Network"
+ "originalName", "Network"
});
}
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/hardware/sensor/impl/HwTagImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/hardware/sensor/impl/HwTagImpl.java
index b86e7d2..2b6d034 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/hardware/sensor/impl/HwTagImpl.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/hardware/sensor/impl/HwTagImpl.java
@@ -165,7 +165,7 @@
public String toString() {
if (eIsProxy()) return super.toString();
- StringBuffer result = new StringBuffer(super.toString());
+ StringBuilder result = new StringBuilder(super.toString());
result.append(" (tageFrequency: ");
result.append(tageFrequency);
result.append(')');
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/hardware/sensor/impl/SensorPackageImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/hardware/sensor/impl/SensorPackageImpl.java
index 20761a3..8e4995e 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/hardware/sensor/impl/SensorPackageImpl.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/hardware/sensor/impl/SensorPackageImpl.java
@@ -40,9 +40,6 @@
import org.eclipse.papyrus.MARTE_Library.TimeLibrary.TimeLibraryPackage;
import org.eclipse.papyrus.MARTE_Library.TimeTypesLibrary.TimeTypesLibraryPackage;
-
-import org.eclipse.papyrus.iotml.IoTMLPackage;
-
import org.eclipse.papyrus.iotml.animate.AnimatePackage;
import org.eclipse.papyrus.iotml.animate.impl.AnimatePackageImpl;
@@ -68,10 +65,6 @@
import org.eclipse.papyrus.iotml.hybrid.HybridPackage;
import org.eclipse.papyrus.iotml.hybrid.impl.HybridPackageImpl;
-
-import org.eclipse.papyrus.iotml.impl.IoTMLPackageImpl;
-
-import org.eclipse.papyrus.iotml.s3pml.S3pmlPackage;
import org.eclipse.papyrus.iotml.s3pml.hardware.HardwarePackage;
import org.eclipse.papyrus.iotml.s3pml.hardware.impl.HardwarePackageImpl;
@@ -79,8 +72,6 @@
import org.eclipse.papyrus.iotml.s3pml.hardware.store.StorePackage;
import org.eclipse.papyrus.iotml.s3pml.hardware.store.impl.StorePackageImpl;
-
-import org.eclipse.papyrus.iotml.s3pml.impl.S3pmlPackageImpl;
import org.eclipse.papyrus.iotml.s3pml.protocol.ProtocolPackage;
import org.eclipse.papyrus.iotml.s3pml.protocol.impl.ProtocolPackageImpl;
@@ -89,6 +80,8 @@
import org.eclipse.papyrus.iotml.s3pml.software.impl.SoftwarePackageImpl;
+import org.eclipse.papyrus.iotml.sensinact.SensinactPackage;
+import org.eclipse.papyrus.iotml.sensinact.impl.SensinactPackageImpl;
import org.eclipse.papyrus.iotml.software.artefact.ArtefactPackage;
import org.eclipse.papyrus.iotml.software.artefact.impl.ArtefactPackageImpl;
@@ -108,6 +101,7 @@
import org.eclipse.uml2.types.TypesPackage;
import org.eclipse.uml2.uml.UMLPackage;
+import org.eclipse.uml2.uml.profile.standard.StandardPackage;
/**
* <!-- begin-user-doc -->
@@ -165,7 +159,7 @@
/**
* 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 SensorPackage#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 -->
@@ -179,7 +173,8 @@
if (isInited) return (SensorPackage)EPackage.Registry.INSTANCE.getEPackage(SensorPackage.eNS_URI);
// Obtain or create and register package
- SensorPackageImpl theSensorPackage = (SensorPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof SensorPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new SensorPackageImpl());
+ Object registeredSensorPackage = EPackage.Registry.INSTANCE.get(eNS_URI);
+ SensorPackageImpl theSensorPackage = registeredSensorPackage instanceof SensorPackageImpl ? (SensorPackageImpl)registeredSensorPackage : new SensorPackageImpl();
isInited = true;
@@ -197,70 +192,71 @@
sysmlPackage.eINSTANCE.eClass();
TypesPackage.eINSTANCE.eClass();
UMLPackage.eINSTANCE.eClass();
+ StandardPackage.eINSTANCE.eClass();
// Obtain or create and register interdependencies
- IoTMLPackageImpl theIoTMLPackage = (IoTMLPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(IoTMLPackage.eNS_URI) instanceof IoTMLPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(IoTMLPackage.eNS_URI) : IoTMLPackage.eINSTANCE);
- AnimatePackageImpl theAnimatePackage = (AnimatePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(AnimatePackage.eNS_URI) instanceof AnimatePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(AnimatePackage.eNS_URI) : AnimatePackage.eINSTANCE);
- org.eclipse.papyrus.iotml.hardware.impl.HardwarePackageImpl theHardwarePackage = (org.eclipse.papyrus.iotml.hardware.impl.HardwarePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.hardware.HardwarePackage.eNS_URI) instanceof org.eclipse.papyrus.iotml.hardware.impl.HardwarePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.hardware.HardwarePackage.eNS_URI) : org.eclipse.papyrus.iotml.hardware.HardwarePackage.eINSTANCE);
- ActuatorPackageImpl theActuatorPackage = (ActuatorPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ActuatorPackage.eNS_URI) instanceof ActuatorPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ActuatorPackage.eNS_URI) : ActuatorPackage.eINSTANCE);
- NetworkPackageImpl theNetworkPackage = (NetworkPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(NetworkPackage.eNS_URI) instanceof NetworkPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(NetworkPackage.eNS_URI) : NetworkPackage.eINSTANCE);
- CorePackageImpl theCorePackage = (CorePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(CorePackage.eNS_URI) instanceof CorePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(CorePackage.eNS_URI) : CorePackage.eINSTANCE);
- S3pmlPackageImpl theS3pmlPackage = (S3pmlPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(S3pmlPackage.eNS_URI) instanceof S3pmlPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(S3pmlPackage.eNS_URI) : S3pmlPackage.eINSTANCE);
- SoftwarePackageImpl theSoftwarePackage = (SoftwarePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(SoftwarePackage.eNS_URI) instanceof SoftwarePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(SoftwarePackage.eNS_URI) : SoftwarePackage.eINSTANCE);
- ProtocolPackageImpl theProtocolPackage = (ProtocolPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ProtocolPackage.eNS_URI) instanceof ProtocolPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ProtocolPackage.eNS_URI) : ProtocolPackage.eINSTANCE);
- HardwarePackageImpl theHardwarePackage_1 = (HardwarePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(HardwarePackage.eNS_URI) instanceof HardwarePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(HardwarePackage.eNS_URI) : HardwarePackage.eINSTANCE);
- StorePackageImpl theStorePackage = (StorePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(StorePackage.eNS_URI) instanceof StorePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(StorePackage.eNS_URI) : StorePackage.eINSTANCE);
- org.eclipse.papyrus.iotml.software.impl.SoftwarePackageImpl theSoftwarePackage_1 = (org.eclipse.papyrus.iotml.software.impl.SoftwarePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.software.SoftwarePackage.eNS_URI) instanceof org.eclipse.papyrus.iotml.software.impl.SoftwarePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.software.SoftwarePackage.eNS_URI) : org.eclipse.papyrus.iotml.software.SoftwarePackage.eINSTANCE);
- org.eclipse.papyrus.iotml.software.core.impl.CorePackageImpl theCorePackage_1 = (org.eclipse.papyrus.iotml.software.core.impl.CorePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.software.core.CorePackage.eNS_URI) instanceof org.eclipse.papyrus.iotml.software.core.impl.CorePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.software.core.CorePackage.eNS_URI) : org.eclipse.papyrus.iotml.software.core.CorePackage.eINSTANCE);
- StructurePackageImpl theStructurePackage = (StructurePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(StructurePackage.eNS_URI) instanceof StructurePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(StructurePackage.eNS_URI) : StructurePackage.eINSTANCE);
- ResourcePackageImpl theResourcePackage = (ResourcePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ResourcePackage.eNS_URI) instanceof ResourcePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ResourcePackage.eNS_URI) : ResourcePackage.eINSTANCE);
- ArtefactPackageImpl theArtefactPackage = (ArtefactPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ArtefactPackage.eNS_URI) instanceof ArtefactPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ArtefactPackage.eNS_URI) : ArtefactPackage.eINSTANCE);
- HybridPackageImpl theHybridPackage = (HybridPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(HybridPackage.eNS_URI) instanceof HybridPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(HybridPackage.eNS_URI) : HybridPackage.eINSTANCE);
+ Object registeredPackage = EPackage.Registry.INSTANCE.getEPackage(AnimatePackage.eNS_URI);
+ AnimatePackageImpl theAnimatePackage = (AnimatePackageImpl)(registeredPackage instanceof AnimatePackageImpl ? registeredPackage : AnimatePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ActuatorPackage.eNS_URI);
+ ActuatorPackageImpl theActuatorPackage = (ActuatorPackageImpl)(registeredPackage instanceof ActuatorPackageImpl ? registeredPackage : ActuatorPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(NetworkPackage.eNS_URI);
+ NetworkPackageImpl theNetworkPackage = (NetworkPackageImpl)(registeredPackage instanceof NetworkPackageImpl ? registeredPackage : NetworkPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(CorePackage.eNS_URI);
+ CorePackageImpl theCorePackage = (CorePackageImpl)(registeredPackage instanceof CorePackageImpl ? registeredPackage : CorePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(SoftwarePackage.eNS_URI);
+ SoftwarePackageImpl theSoftwarePackage = (SoftwarePackageImpl)(registeredPackage instanceof SoftwarePackageImpl ? registeredPackage : SoftwarePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ProtocolPackage.eNS_URI);
+ ProtocolPackageImpl theProtocolPackage = (ProtocolPackageImpl)(registeredPackage instanceof ProtocolPackageImpl ? registeredPackage : ProtocolPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(HardwarePackage.eNS_URI);
+ HardwarePackageImpl theHardwarePackage = (HardwarePackageImpl)(registeredPackage instanceof HardwarePackageImpl ? registeredPackage : HardwarePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(StorePackage.eNS_URI);
+ StorePackageImpl theStorePackage = (StorePackageImpl)(registeredPackage instanceof StorePackageImpl ? registeredPackage : StorePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(StructurePackage.eNS_URI);
+ StructurePackageImpl theStructurePackage = (StructurePackageImpl)(registeredPackage instanceof StructurePackageImpl ? registeredPackage : StructurePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ResourcePackage.eNS_URI);
+ ResourcePackageImpl theResourcePackage = (ResourcePackageImpl)(registeredPackage instanceof ResourcePackageImpl ? registeredPackage : ResourcePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ArtefactPackage.eNS_URI);
+ ArtefactPackageImpl theArtefactPackage = (ArtefactPackageImpl)(registeredPackage instanceof ArtefactPackageImpl ? registeredPackage : ArtefactPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(HybridPackage.eNS_URI);
+ HybridPackageImpl theHybridPackage = (HybridPackageImpl)(registeredPackage instanceof HybridPackageImpl ? registeredPackage : HybridPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(SensinactPackage.eNS_URI);
+ SensinactPackageImpl theSensinactPackage = (SensinactPackageImpl)(registeredPackage instanceof SensinactPackageImpl ? registeredPackage : SensinactPackage.eINSTANCE);
// Create package meta-data objects
theSensorPackage.createPackageContents();
- theIoTMLPackage.createPackageContents();
theAnimatePackage.createPackageContents();
- theHardwarePackage.createPackageContents();
theActuatorPackage.createPackageContents();
theNetworkPackage.createPackageContents();
theCorePackage.createPackageContents();
- theS3pmlPackage.createPackageContents();
theSoftwarePackage.createPackageContents();
theProtocolPackage.createPackageContents();
- theHardwarePackage_1.createPackageContents();
+ theHardwarePackage.createPackageContents();
theStorePackage.createPackageContents();
- theSoftwarePackage_1.createPackageContents();
- theCorePackage_1.createPackageContents();
theStructurePackage.createPackageContents();
theResourcePackage.createPackageContents();
theArtefactPackage.createPackageContents();
theHybridPackage.createPackageContents();
+ theSensinactPackage.createPackageContents();
// Initialize created meta-data
theSensorPackage.initializePackageContents();
- theIoTMLPackage.initializePackageContents();
theAnimatePackage.initializePackageContents();
- theHardwarePackage.initializePackageContents();
theActuatorPackage.initializePackageContents();
theNetworkPackage.initializePackageContents();
theCorePackage.initializePackageContents();
- theS3pmlPackage.initializePackageContents();
theSoftwarePackage.initializePackageContents();
theProtocolPackage.initializePackageContents();
- theHardwarePackage_1.initializePackageContents();
+ theHardwarePackage.initializePackageContents();
theStorePackage.initializePackageContents();
- theSoftwarePackage_1.initializePackageContents();
- theCorePackage_1.initializePackageContents();
theStructurePackage.initializePackageContents();
theResourcePackage.initializePackageContents();
theArtefactPackage.initializePackageContents();
theHybridPackage.initializePackageContents();
+ theSensinactPackage.initializePackageContents();
// Mark meta-data to indicate it can't be changed
theSensorPackage.freeze();
-
// Update the registry and return the package
EPackage.Registry.INSTANCE.put(SensorPackage.eNS_URI, theSensorPackage);
return theSensorPackage;
@@ -439,6 +435,9 @@
initEClass(hwTagEClass, HwTag.class, "HwTag", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getHwTag_TageFrequency(), theTypesPackage.getReal(), "tageFrequency", null, 0, 1, HwTag.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ // Create resource
+ createResource(eNS_URI);
+
// Create annotations
// http://www.eclipse.org/uml2/2.0.0/UML
createUMLAnnotations();
@@ -451,12 +450,12 @@
* @generated
*/
protected void createUMLAnnotations() {
- String source = "http://www.eclipse.org/uml2/2.0.0/UML";
+ String source = "http://www.eclipse.org/uml2/2.0.0/UML";
addAnnotation
- (this,
- source,
+ (this,
+ source,
new String[] {
- "originalName", "Sensor"
+ "originalName", "Sensor"
});
}
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/hybrid/impl/HybridPackageImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/hybrid/impl/HybridPackageImpl.java
index 87bd36f..ad87d8f 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/hybrid/impl/HybridPackageImpl.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/hybrid/impl/HybridPackageImpl.java
@@ -38,9 +38,6 @@
import org.eclipse.papyrus.MARTE_Library.TimeLibrary.TimeLibraryPackage;
import org.eclipse.papyrus.MARTE_Library.TimeTypesLibrary.TimeTypesLibraryPackage;
-
-import org.eclipse.papyrus.iotml.IoTMLPackage;
-
import org.eclipse.papyrus.iotml.animate.AnimatePackage;
import org.eclipse.papyrus.iotml.animate.impl.AnimatePackageImpl;
@@ -64,10 +61,6 @@
import org.eclipse.papyrus.iotml.hybrid.HybridFactory;
import org.eclipse.papyrus.iotml.hybrid.HybridPackage;
import org.eclipse.papyrus.iotml.hybrid.PhysicalEntity;
-
-import org.eclipse.papyrus.iotml.impl.IoTMLPackageImpl;
-
-import org.eclipse.papyrus.iotml.s3pml.S3pmlPackage;
import org.eclipse.papyrus.iotml.s3pml.hardware.HardwarePackage;
import org.eclipse.papyrus.iotml.s3pml.hardware.impl.HardwarePackageImpl;
@@ -75,8 +68,6 @@
import org.eclipse.papyrus.iotml.s3pml.hardware.store.StorePackage;
import org.eclipse.papyrus.iotml.s3pml.hardware.store.impl.StorePackageImpl;
-
-import org.eclipse.papyrus.iotml.s3pml.impl.S3pmlPackageImpl;
import org.eclipse.papyrus.iotml.s3pml.protocol.ProtocolPackage;
import org.eclipse.papyrus.iotml.s3pml.protocol.impl.ProtocolPackageImpl;
@@ -85,6 +76,8 @@
import org.eclipse.papyrus.iotml.s3pml.software.impl.SoftwarePackageImpl;
+import org.eclipse.papyrus.iotml.sensinact.SensinactPackage;
+import org.eclipse.papyrus.iotml.sensinact.impl.SensinactPackageImpl;
import org.eclipse.papyrus.iotml.software.artefact.ArtefactPackage;
import org.eclipse.papyrus.iotml.software.artefact.impl.ArtefactPackageImpl;
@@ -102,6 +95,7 @@
import org.eclipse.uml2.types.TypesPackage;
import org.eclipse.uml2.uml.UMLPackage;
+import org.eclipse.uml2.uml.profile.standard.StandardPackage;
/**
* <!-- begin-user-doc -->
@@ -145,7 +139,7 @@
/**
* 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 HybridPackage#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 -->
@@ -159,7 +153,8 @@
if (isInited) return (HybridPackage)EPackage.Registry.INSTANCE.getEPackage(HybridPackage.eNS_URI);
// Obtain or create and register package
- HybridPackageImpl theHybridPackage = (HybridPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof HybridPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new HybridPackageImpl());
+ Object registeredHybridPackage = EPackage.Registry.INSTANCE.get(eNS_URI);
+ HybridPackageImpl theHybridPackage = registeredHybridPackage instanceof HybridPackageImpl ? (HybridPackageImpl)registeredHybridPackage : new HybridPackageImpl();
isInited = true;
@@ -177,70 +172,71 @@
sysmlPackage.eINSTANCE.eClass();
TypesPackage.eINSTANCE.eClass();
UMLPackage.eINSTANCE.eClass();
+ StandardPackage.eINSTANCE.eClass();
// Obtain or create and register interdependencies
- IoTMLPackageImpl theIoTMLPackage = (IoTMLPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(IoTMLPackage.eNS_URI) instanceof IoTMLPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(IoTMLPackage.eNS_URI) : IoTMLPackage.eINSTANCE);
- AnimatePackageImpl theAnimatePackage = (AnimatePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(AnimatePackage.eNS_URI) instanceof AnimatePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(AnimatePackage.eNS_URI) : AnimatePackage.eINSTANCE);
- org.eclipse.papyrus.iotml.hardware.impl.HardwarePackageImpl theHardwarePackage = (org.eclipse.papyrus.iotml.hardware.impl.HardwarePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.hardware.HardwarePackage.eNS_URI) instanceof org.eclipse.papyrus.iotml.hardware.impl.HardwarePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.hardware.HardwarePackage.eNS_URI) : org.eclipse.papyrus.iotml.hardware.HardwarePackage.eINSTANCE);
- ActuatorPackageImpl theActuatorPackage = (ActuatorPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ActuatorPackage.eNS_URI) instanceof ActuatorPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ActuatorPackage.eNS_URI) : ActuatorPackage.eINSTANCE);
- SensorPackageImpl theSensorPackage = (SensorPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(SensorPackage.eNS_URI) instanceof SensorPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(SensorPackage.eNS_URI) : SensorPackage.eINSTANCE);
- NetworkPackageImpl theNetworkPackage = (NetworkPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(NetworkPackage.eNS_URI) instanceof NetworkPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(NetworkPackage.eNS_URI) : NetworkPackage.eINSTANCE);
- CorePackageImpl theCorePackage = (CorePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(CorePackage.eNS_URI) instanceof CorePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(CorePackage.eNS_URI) : CorePackage.eINSTANCE);
- S3pmlPackageImpl theS3pmlPackage = (S3pmlPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(S3pmlPackage.eNS_URI) instanceof S3pmlPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(S3pmlPackage.eNS_URI) : S3pmlPackage.eINSTANCE);
- SoftwarePackageImpl theSoftwarePackage = (SoftwarePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(SoftwarePackage.eNS_URI) instanceof SoftwarePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(SoftwarePackage.eNS_URI) : SoftwarePackage.eINSTANCE);
- ProtocolPackageImpl theProtocolPackage = (ProtocolPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ProtocolPackage.eNS_URI) instanceof ProtocolPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ProtocolPackage.eNS_URI) : ProtocolPackage.eINSTANCE);
- HardwarePackageImpl theHardwarePackage_1 = (HardwarePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(HardwarePackage.eNS_URI) instanceof HardwarePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(HardwarePackage.eNS_URI) : HardwarePackage.eINSTANCE);
- StorePackageImpl theStorePackage = (StorePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(StorePackage.eNS_URI) instanceof StorePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(StorePackage.eNS_URI) : StorePackage.eINSTANCE);
- org.eclipse.papyrus.iotml.software.impl.SoftwarePackageImpl theSoftwarePackage_1 = (org.eclipse.papyrus.iotml.software.impl.SoftwarePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.software.SoftwarePackage.eNS_URI) instanceof org.eclipse.papyrus.iotml.software.impl.SoftwarePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.software.SoftwarePackage.eNS_URI) : org.eclipse.papyrus.iotml.software.SoftwarePackage.eINSTANCE);
- org.eclipse.papyrus.iotml.software.core.impl.CorePackageImpl theCorePackage_1 = (org.eclipse.papyrus.iotml.software.core.impl.CorePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.software.core.CorePackage.eNS_URI) instanceof org.eclipse.papyrus.iotml.software.core.impl.CorePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.software.core.CorePackage.eNS_URI) : org.eclipse.papyrus.iotml.software.core.CorePackage.eINSTANCE);
- StructurePackageImpl theStructurePackage = (StructurePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(StructurePackage.eNS_URI) instanceof StructurePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(StructurePackage.eNS_URI) : StructurePackage.eINSTANCE);
- ResourcePackageImpl theResourcePackage = (ResourcePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ResourcePackage.eNS_URI) instanceof ResourcePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ResourcePackage.eNS_URI) : ResourcePackage.eINSTANCE);
- ArtefactPackageImpl theArtefactPackage = (ArtefactPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ArtefactPackage.eNS_URI) instanceof ArtefactPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ArtefactPackage.eNS_URI) : ArtefactPackage.eINSTANCE);
+ Object registeredPackage = EPackage.Registry.INSTANCE.getEPackage(AnimatePackage.eNS_URI);
+ AnimatePackageImpl theAnimatePackage = (AnimatePackageImpl)(registeredPackage instanceof AnimatePackageImpl ? registeredPackage : AnimatePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ActuatorPackage.eNS_URI);
+ ActuatorPackageImpl theActuatorPackage = (ActuatorPackageImpl)(registeredPackage instanceof ActuatorPackageImpl ? registeredPackage : ActuatorPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(SensorPackage.eNS_URI);
+ SensorPackageImpl theSensorPackage = (SensorPackageImpl)(registeredPackage instanceof SensorPackageImpl ? registeredPackage : SensorPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(NetworkPackage.eNS_URI);
+ NetworkPackageImpl theNetworkPackage = (NetworkPackageImpl)(registeredPackage instanceof NetworkPackageImpl ? registeredPackage : NetworkPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(CorePackage.eNS_URI);
+ CorePackageImpl theCorePackage = (CorePackageImpl)(registeredPackage instanceof CorePackageImpl ? registeredPackage : CorePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(SoftwarePackage.eNS_URI);
+ SoftwarePackageImpl theSoftwarePackage = (SoftwarePackageImpl)(registeredPackage instanceof SoftwarePackageImpl ? registeredPackage : SoftwarePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ProtocolPackage.eNS_URI);
+ ProtocolPackageImpl theProtocolPackage = (ProtocolPackageImpl)(registeredPackage instanceof ProtocolPackageImpl ? registeredPackage : ProtocolPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(HardwarePackage.eNS_URI);
+ HardwarePackageImpl theHardwarePackage = (HardwarePackageImpl)(registeredPackage instanceof HardwarePackageImpl ? registeredPackage : HardwarePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(StorePackage.eNS_URI);
+ StorePackageImpl theStorePackage = (StorePackageImpl)(registeredPackage instanceof StorePackageImpl ? registeredPackage : StorePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(StructurePackage.eNS_URI);
+ StructurePackageImpl theStructurePackage = (StructurePackageImpl)(registeredPackage instanceof StructurePackageImpl ? registeredPackage : StructurePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ResourcePackage.eNS_URI);
+ ResourcePackageImpl theResourcePackage = (ResourcePackageImpl)(registeredPackage instanceof ResourcePackageImpl ? registeredPackage : ResourcePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ArtefactPackage.eNS_URI);
+ ArtefactPackageImpl theArtefactPackage = (ArtefactPackageImpl)(registeredPackage instanceof ArtefactPackageImpl ? registeredPackage : ArtefactPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(SensinactPackage.eNS_URI);
+ SensinactPackageImpl theSensinactPackage = (SensinactPackageImpl)(registeredPackage instanceof SensinactPackageImpl ? registeredPackage : SensinactPackage.eINSTANCE);
// Create package meta-data objects
theHybridPackage.createPackageContents();
- theIoTMLPackage.createPackageContents();
theAnimatePackage.createPackageContents();
- theHardwarePackage.createPackageContents();
theActuatorPackage.createPackageContents();
theSensorPackage.createPackageContents();
theNetworkPackage.createPackageContents();
theCorePackage.createPackageContents();
- theS3pmlPackage.createPackageContents();
theSoftwarePackage.createPackageContents();
theProtocolPackage.createPackageContents();
- theHardwarePackage_1.createPackageContents();
+ theHardwarePackage.createPackageContents();
theStorePackage.createPackageContents();
- theSoftwarePackage_1.createPackageContents();
- theCorePackage_1.createPackageContents();
theStructurePackage.createPackageContents();
theResourcePackage.createPackageContents();
theArtefactPackage.createPackageContents();
+ theSensinactPackage.createPackageContents();
// Initialize created meta-data
theHybridPackage.initializePackageContents();
- theIoTMLPackage.initializePackageContents();
theAnimatePackage.initializePackageContents();
- theHardwarePackage.initializePackageContents();
theActuatorPackage.initializePackageContents();
theSensorPackage.initializePackageContents();
theNetworkPackage.initializePackageContents();
theCorePackage.initializePackageContents();
- theS3pmlPackage.initializePackageContents();
theSoftwarePackage.initializePackageContents();
theProtocolPackage.initializePackageContents();
- theHardwarePackage_1.initializePackageContents();
+ theHardwarePackage.initializePackageContents();
theStorePackage.initializePackageContents();
- theSoftwarePackage_1.initializePackageContents();
- theCorePackage_1.initializePackageContents();
theStructurePackage.initializePackageContents();
theResourcePackage.initializePackageContents();
theArtefactPackage.initializePackageContents();
+ theSensinactPackage.initializePackageContents();
// Mark meta-data to indicate it can't be changed
theHybridPackage.freeze();
-
// Update the registry and return the package
EPackage.Registry.INSTANCE.put(HybridPackage.eNS_URI, theHybridPackage);
return theHybridPackage;
@@ -322,6 +318,9 @@
// Initialize classes and features; add operations and parameters
initEClass(physicalEntityEClass, PhysicalEntity.class, "PhysicalEntity", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ // Create resource
+ createResource(eNS_URI);
+
// Create annotations
// http://www.eclipse.org/uml2/2.0.0/UML
createUMLAnnotations();
@@ -334,12 +333,12 @@
* @generated
*/
protected void createUMLAnnotations() {
- String source = "http://www.eclipse.org/uml2/2.0.0/UML";
+ String source = "http://www.eclipse.org/uml2/2.0.0/UML";
addAnnotation
- (this,
- source,
+ (this,
+ source,
new String[] {
- "originalName", "Hybrid"
+ "originalName", "Hybrid"
});
}
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/impl/IoTMLPackageImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/impl/IoTMLPackageImpl.java
index 97947f7..8d5f2f1 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/impl/IoTMLPackageImpl.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/impl/IoTMLPackageImpl.java
@@ -83,6 +83,10 @@
import org.eclipse.papyrus.iotml.s3pml.software.impl.SoftwarePackageImpl;
+import org.eclipse.papyrus.iotml.sensinact.SensinactPackage;
+
+import org.eclipse.papyrus.iotml.sensinact.impl.SensinactPackageImpl;
+
import org.eclipse.papyrus.iotml.software.artefact.ArtefactPackage;
import org.eclipse.papyrus.iotml.software.artefact.impl.ArtefactPackageImpl;
@@ -184,6 +188,7 @@
NetworkPackageImpl theNetworkPackage = (NetworkPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(NetworkPackage.eNS_URI) instanceof NetworkPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(NetworkPackage.eNS_URI) : NetworkPackage.eINSTANCE);
CorePackageImpl theCorePackage = (CorePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(CorePackage.eNS_URI) instanceof CorePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(CorePackage.eNS_URI) : CorePackage.eINSTANCE);
S3pmlPackageImpl theS3pmlPackage = (S3pmlPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(S3pmlPackage.eNS_URI) instanceof S3pmlPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(S3pmlPackage.eNS_URI) : S3pmlPackage.eINSTANCE);
+ SensinactPackageImpl theSensinactPackage = (SensinactPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(SensinactPackage.eNS_URI) instanceof SensinactPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(SensinactPackage.eNS_URI) : SensinactPackage.eINSTANCE);
SoftwarePackageImpl theSoftwarePackage = (SoftwarePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(SoftwarePackage.eNS_URI) instanceof SoftwarePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(SoftwarePackage.eNS_URI) : SoftwarePackage.eINSTANCE);
ProtocolPackageImpl theProtocolPackage = (ProtocolPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ProtocolPackage.eNS_URI) instanceof ProtocolPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ProtocolPackage.eNS_URI) : ProtocolPackage.eINSTANCE);
HardwarePackageImpl theHardwarePackage_1 = (HardwarePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(HardwarePackage.eNS_URI) instanceof HardwarePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(HardwarePackage.eNS_URI) : HardwarePackage.eINSTANCE);
@@ -204,6 +209,7 @@
theNetworkPackage.createPackageContents();
theCorePackage.createPackageContents();
theS3pmlPackage.createPackageContents();
+ theSensinactPackage.createPackageContents();
theSoftwarePackage.createPackageContents();
theProtocolPackage.createPackageContents();
theHardwarePackage_1.createPackageContents();
@@ -224,6 +230,7 @@
theNetworkPackage.initializePackageContents();
theCorePackage.initializePackageContents();
theS3pmlPackage.initializePackageContents();
+ theSensinactPackage.initializePackageContents();
theSoftwarePackage.initializePackageContents();
theProtocolPackage.initializePackageContents();
theHardwarePackage_1.initializePackageContents();
@@ -311,6 +318,7 @@
AnimatePackage theAnimatePackage = (AnimatePackage)EPackage.Registry.INSTANCE.getEPackage(AnimatePackage.eNS_URI);
org.eclipse.papyrus.iotml.hardware.HardwarePackage theHardwarePackage = (org.eclipse.papyrus.iotml.hardware.HardwarePackage)EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.hardware.HardwarePackage.eNS_URI);
S3pmlPackage theS3pmlPackage = (S3pmlPackage)EPackage.Registry.INSTANCE.getEPackage(S3pmlPackage.eNS_URI);
+ SensinactPackage theSensinactPackage = (SensinactPackage)EPackage.Registry.INSTANCE.getEPackage(SensinactPackage.eNS_URI);
org.eclipse.papyrus.iotml.software.SoftwarePackage theSoftwarePackage_1 = (org.eclipse.papyrus.iotml.software.SoftwarePackage)EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.software.SoftwarePackage.eNS_URI);
HybridPackage theHybridPackage = (HybridPackage)EPackage.Registry.INSTANCE.getEPackage(HybridPackage.eNS_URI);
@@ -318,6 +326,7 @@
getESubpackages().add(theAnimatePackage);
getESubpackages().add(theHardwarePackage);
getESubpackages().add(theS3pmlPackage);
+ getESubpackages().add(theSensinactPackage);
getESubpackages().add(theSoftwarePackage_1);
getESubpackages().add(theHybridPackage);
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/s3pml/hardware/impl/HardwarePackageImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/s3pml/hardware/impl/HardwarePackageImpl.java
index ea0eb54..9660403 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/s3pml/hardware/impl/HardwarePackageImpl.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/s3pml/hardware/impl/HardwarePackageImpl.java
@@ -40,9 +40,6 @@
import org.eclipse.papyrus.MARTE_Library.TimeLibrary.TimeLibraryPackage;
import org.eclipse.papyrus.MARTE_Library.TimeTypesLibrary.TimeTypesLibraryPackage;
-
-import org.eclipse.papyrus.iotml.IoTMLPackage;
-
import org.eclipse.papyrus.iotml.animate.AnimatePackage;
import org.eclipse.papyrus.iotml.animate.impl.AnimatePackageImpl;
@@ -66,10 +63,6 @@
import org.eclipse.papyrus.iotml.hybrid.HybridPackage;
import org.eclipse.papyrus.iotml.hybrid.impl.HybridPackageImpl;
-
-import org.eclipse.papyrus.iotml.impl.IoTMLPackageImpl;
-
-import org.eclipse.papyrus.iotml.s3pml.S3pmlPackage;
import org.eclipse.papyrus.iotml.s3pml.hardware.HardwareFactory;
import org.eclipse.papyrus.iotml.s3pml.hardware.HardwarePackage;
import org.eclipse.papyrus.iotml.s3pml.hardware.IoTBoard;
@@ -80,8 +73,6 @@
import org.eclipse.papyrus.iotml.s3pml.hardware.store.StorePackage;
import org.eclipse.papyrus.iotml.s3pml.hardware.store.impl.StorePackageImpl;
-
-import org.eclipse.papyrus.iotml.s3pml.impl.S3pmlPackageImpl;
import org.eclipse.papyrus.iotml.s3pml.protocol.ProtocolPackage;
import org.eclipse.papyrus.iotml.s3pml.protocol.impl.ProtocolPackageImpl;
@@ -90,6 +81,8 @@
import org.eclipse.papyrus.iotml.s3pml.software.impl.SoftwarePackageImpl;
+import org.eclipse.papyrus.iotml.sensinact.SensinactPackage;
+import org.eclipse.papyrus.iotml.sensinact.impl.SensinactPackageImpl;
import org.eclipse.papyrus.iotml.software.artefact.ArtefactPackage;
import org.eclipse.papyrus.iotml.software.artefact.impl.ArtefactPackageImpl;
@@ -107,6 +100,7 @@
import org.eclipse.uml2.types.TypesPackage;
import org.eclipse.uml2.uml.UMLPackage;
+import org.eclipse.uml2.uml.profile.standard.StandardPackage;
/**
* <!-- begin-user-doc -->
@@ -171,7 +165,7 @@
/**
* 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 HardwarePackage#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 -->
@@ -185,7 +179,8 @@
if (isInited) return (HardwarePackage)EPackage.Registry.INSTANCE.getEPackage(HardwarePackage.eNS_URI);
// Obtain or create and register package
- HardwarePackageImpl theHardwarePackage = (HardwarePackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof HardwarePackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new HardwarePackageImpl());
+ Object registeredHardwarePackage = EPackage.Registry.INSTANCE.get(eNS_URI);
+ HardwarePackageImpl theHardwarePackage = registeredHardwarePackage instanceof HardwarePackageImpl ? (HardwarePackageImpl)registeredHardwarePackage : new HardwarePackageImpl();
isInited = true;
@@ -203,70 +198,71 @@
sysmlPackage.eINSTANCE.eClass();
TypesPackage.eINSTANCE.eClass();
UMLPackage.eINSTANCE.eClass();
+ StandardPackage.eINSTANCE.eClass();
// Obtain or create and register interdependencies
- IoTMLPackageImpl theIoTMLPackage = (IoTMLPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(IoTMLPackage.eNS_URI) instanceof IoTMLPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(IoTMLPackage.eNS_URI) : IoTMLPackage.eINSTANCE);
- AnimatePackageImpl theAnimatePackage = (AnimatePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(AnimatePackage.eNS_URI) instanceof AnimatePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(AnimatePackage.eNS_URI) : AnimatePackage.eINSTANCE);
- org.eclipse.papyrus.iotml.hardware.impl.HardwarePackageImpl theHardwarePackage_1 = (org.eclipse.papyrus.iotml.hardware.impl.HardwarePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.hardware.HardwarePackage.eNS_URI) instanceof org.eclipse.papyrus.iotml.hardware.impl.HardwarePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.hardware.HardwarePackage.eNS_URI) : org.eclipse.papyrus.iotml.hardware.HardwarePackage.eINSTANCE);
- ActuatorPackageImpl theActuatorPackage = (ActuatorPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ActuatorPackage.eNS_URI) instanceof ActuatorPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ActuatorPackage.eNS_URI) : ActuatorPackage.eINSTANCE);
- SensorPackageImpl theSensorPackage = (SensorPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(SensorPackage.eNS_URI) instanceof SensorPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(SensorPackage.eNS_URI) : SensorPackage.eINSTANCE);
- NetworkPackageImpl theNetworkPackage = (NetworkPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(NetworkPackage.eNS_URI) instanceof NetworkPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(NetworkPackage.eNS_URI) : NetworkPackage.eINSTANCE);
- CorePackageImpl theCorePackage = (CorePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(CorePackage.eNS_URI) instanceof CorePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(CorePackage.eNS_URI) : CorePackage.eINSTANCE);
- S3pmlPackageImpl theS3pmlPackage = (S3pmlPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(S3pmlPackage.eNS_URI) instanceof S3pmlPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(S3pmlPackage.eNS_URI) : S3pmlPackage.eINSTANCE);
- SoftwarePackageImpl theSoftwarePackage = (SoftwarePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(SoftwarePackage.eNS_URI) instanceof SoftwarePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(SoftwarePackage.eNS_URI) : SoftwarePackage.eINSTANCE);
- ProtocolPackageImpl theProtocolPackage = (ProtocolPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ProtocolPackage.eNS_URI) instanceof ProtocolPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ProtocolPackage.eNS_URI) : ProtocolPackage.eINSTANCE);
- StorePackageImpl theStorePackage = (StorePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(StorePackage.eNS_URI) instanceof StorePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(StorePackage.eNS_URI) : StorePackage.eINSTANCE);
- org.eclipse.papyrus.iotml.software.impl.SoftwarePackageImpl theSoftwarePackage_1 = (org.eclipse.papyrus.iotml.software.impl.SoftwarePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.software.SoftwarePackage.eNS_URI) instanceof org.eclipse.papyrus.iotml.software.impl.SoftwarePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.software.SoftwarePackage.eNS_URI) : org.eclipse.papyrus.iotml.software.SoftwarePackage.eINSTANCE);
- org.eclipse.papyrus.iotml.software.core.impl.CorePackageImpl theCorePackage_1 = (org.eclipse.papyrus.iotml.software.core.impl.CorePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.software.core.CorePackage.eNS_URI) instanceof org.eclipse.papyrus.iotml.software.core.impl.CorePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.software.core.CorePackage.eNS_URI) : org.eclipse.papyrus.iotml.software.core.CorePackage.eINSTANCE);
- StructurePackageImpl theStructurePackage = (StructurePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(StructurePackage.eNS_URI) instanceof StructurePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(StructurePackage.eNS_URI) : StructurePackage.eINSTANCE);
- ResourcePackageImpl theResourcePackage = (ResourcePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ResourcePackage.eNS_URI) instanceof ResourcePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ResourcePackage.eNS_URI) : ResourcePackage.eINSTANCE);
- ArtefactPackageImpl theArtefactPackage = (ArtefactPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ArtefactPackage.eNS_URI) instanceof ArtefactPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ArtefactPackage.eNS_URI) : ArtefactPackage.eINSTANCE);
- HybridPackageImpl theHybridPackage = (HybridPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(HybridPackage.eNS_URI) instanceof HybridPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(HybridPackage.eNS_URI) : HybridPackage.eINSTANCE);
+ Object registeredPackage = EPackage.Registry.INSTANCE.getEPackage(AnimatePackage.eNS_URI);
+ AnimatePackageImpl theAnimatePackage = (AnimatePackageImpl)(registeredPackage instanceof AnimatePackageImpl ? registeredPackage : AnimatePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ActuatorPackage.eNS_URI);
+ ActuatorPackageImpl theActuatorPackage = (ActuatorPackageImpl)(registeredPackage instanceof ActuatorPackageImpl ? registeredPackage : ActuatorPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(SensorPackage.eNS_URI);
+ SensorPackageImpl theSensorPackage = (SensorPackageImpl)(registeredPackage instanceof SensorPackageImpl ? registeredPackage : SensorPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(NetworkPackage.eNS_URI);
+ NetworkPackageImpl theNetworkPackage = (NetworkPackageImpl)(registeredPackage instanceof NetworkPackageImpl ? registeredPackage : NetworkPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(CorePackage.eNS_URI);
+ CorePackageImpl theCorePackage = (CorePackageImpl)(registeredPackage instanceof CorePackageImpl ? registeredPackage : CorePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(SoftwarePackage.eNS_URI);
+ SoftwarePackageImpl theSoftwarePackage = (SoftwarePackageImpl)(registeredPackage instanceof SoftwarePackageImpl ? registeredPackage : SoftwarePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ProtocolPackage.eNS_URI);
+ ProtocolPackageImpl theProtocolPackage = (ProtocolPackageImpl)(registeredPackage instanceof ProtocolPackageImpl ? registeredPackage : ProtocolPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(StorePackage.eNS_URI);
+ StorePackageImpl theStorePackage = (StorePackageImpl)(registeredPackage instanceof StorePackageImpl ? registeredPackage : StorePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(StructurePackage.eNS_URI);
+ StructurePackageImpl theStructurePackage = (StructurePackageImpl)(registeredPackage instanceof StructurePackageImpl ? registeredPackage : StructurePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ResourcePackage.eNS_URI);
+ ResourcePackageImpl theResourcePackage = (ResourcePackageImpl)(registeredPackage instanceof ResourcePackageImpl ? registeredPackage : ResourcePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ArtefactPackage.eNS_URI);
+ ArtefactPackageImpl theArtefactPackage = (ArtefactPackageImpl)(registeredPackage instanceof ArtefactPackageImpl ? registeredPackage : ArtefactPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(HybridPackage.eNS_URI);
+ HybridPackageImpl theHybridPackage = (HybridPackageImpl)(registeredPackage instanceof HybridPackageImpl ? registeredPackage : HybridPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(SensinactPackage.eNS_URI);
+ SensinactPackageImpl theSensinactPackage = (SensinactPackageImpl)(registeredPackage instanceof SensinactPackageImpl ? registeredPackage : SensinactPackage.eINSTANCE);
// Create package meta-data objects
theHardwarePackage.createPackageContents();
- theIoTMLPackage.createPackageContents();
theAnimatePackage.createPackageContents();
- theHardwarePackage_1.createPackageContents();
theActuatorPackage.createPackageContents();
theSensorPackage.createPackageContents();
theNetworkPackage.createPackageContents();
theCorePackage.createPackageContents();
- theS3pmlPackage.createPackageContents();
theSoftwarePackage.createPackageContents();
theProtocolPackage.createPackageContents();
theStorePackage.createPackageContents();
- theSoftwarePackage_1.createPackageContents();
- theCorePackage_1.createPackageContents();
theStructurePackage.createPackageContents();
theResourcePackage.createPackageContents();
theArtefactPackage.createPackageContents();
theHybridPackage.createPackageContents();
+ theSensinactPackage.createPackageContents();
// Initialize created meta-data
theHardwarePackage.initializePackageContents();
- theIoTMLPackage.initializePackageContents();
theAnimatePackage.initializePackageContents();
- theHardwarePackage_1.initializePackageContents();
theActuatorPackage.initializePackageContents();
theSensorPackage.initializePackageContents();
theNetworkPackage.initializePackageContents();
theCorePackage.initializePackageContents();
- theS3pmlPackage.initializePackageContents();
theSoftwarePackage.initializePackageContents();
theProtocolPackage.initializePackageContents();
theStorePackage.initializePackageContents();
- theSoftwarePackage_1.initializePackageContents();
- theCorePackage_1.initializePackageContents();
theStructurePackage.initializePackageContents();
theResourcePackage.initializePackageContents();
theArtefactPackage.initializePackageContents();
theHybridPackage.initializePackageContents();
+ theSensinactPackage.initializePackageContents();
// Mark meta-data to indicate it can't be changed
theHardwarePackage.freeze();
-
// Update the registry and return the package
EPackage.Registry.INSTANCE.put(HardwarePackage.eNS_URI, theHardwarePackage);
return theHardwarePackage;
@@ -462,6 +458,9 @@
initEReference(getIoTDevice_DeviceType(), this.getIoTDeviceType(), null, "deviceType", null, 0, 1, IoTDevice.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
initEReference(getIoTDevice_Board(), this.getIoTBoard(), null, "board", null, 0, 1, IoTDevice.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ // Create resource
+ createResource(eNS_URI);
+
// Create annotations
// http://www.eclipse.org/uml2/2.0.0/UML
createUMLAnnotations();
@@ -474,12 +473,12 @@
* @generated
*/
protected void createUMLAnnotations() {
- String source = "http://www.eclipse.org/uml2/2.0.0/UML";
+ String source = "http://www.eclipse.org/uml2/2.0.0/UML";
addAnnotation
- (this,
- source,
+ (this,
+ source,
new String[] {
- "originalName", "Hardware"
+ "originalName", "Hardware"
});
}
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/s3pml/hardware/impl/IoTBoardImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/s3pml/hardware/impl/IoTBoardImpl.java
index 097d661..521c9f3 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/s3pml/hardware/impl/IoTBoardImpl.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/s3pml/hardware/impl/IoTBoardImpl.java
@@ -215,7 +215,7 @@
public String toString() {
if (eIsProxy()) return super.toString();
- StringBuffer result = new StringBuffer(super.toString());
+ StringBuilder result = new StringBuilder(super.toString());
result.append(" (uid: ");
result.append(uid);
result.append(", auto: ");
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/s3pml/hardware/store/impl/StoreImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/s3pml/hardware/store/impl/StoreImpl.java
index 8b388ff..68667a2 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/s3pml/hardware/store/impl/StoreImpl.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/s3pml/hardware/store/impl/StoreImpl.java
@@ -165,7 +165,7 @@
public String toString() {
if (eIsProxy()) return super.toString();
- StringBuffer result = new StringBuffer(super.toString());
+ StringBuilder result = new StringBuilder(super.toString());
result.append(" (url: ");
result.append(url);
result.append(')');
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/s3pml/hardware/store/impl/StorePackageImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/s3pml/hardware/store/impl/StorePackageImpl.java
index 1f7e259..ef62407 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/s3pml/hardware/store/impl/StorePackageImpl.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/s3pml/hardware/store/impl/StorePackageImpl.java
@@ -38,15 +38,9 @@
import org.eclipse.papyrus.MARTE_Library.TimeLibrary.TimeLibraryPackage;
import org.eclipse.papyrus.MARTE_Library.TimeTypesLibrary.TimeTypesLibraryPackage;
-
-import org.eclipse.papyrus.iotml.IoTMLPackage;
-
import org.eclipse.papyrus.iotml.animate.AnimatePackage;
import org.eclipse.papyrus.iotml.animate.impl.AnimatePackageImpl;
-
-import org.eclipse.papyrus.iotml.hardware.HardwarePackage;
-
import org.eclipse.papyrus.iotml.hardware.actuator.ActuatorPackage;
import org.eclipse.papyrus.iotml.hardware.actuator.impl.ActuatorPackageImpl;
@@ -54,9 +48,6 @@
import org.eclipse.papyrus.iotml.hardware.core.CorePackage;
import org.eclipse.papyrus.iotml.hardware.core.impl.CorePackageImpl;
-
-import org.eclipse.papyrus.iotml.hardware.impl.HardwarePackageImpl;
-
import org.eclipse.papyrus.iotml.hardware.network.NetworkPackage;
import org.eclipse.papyrus.iotml.hardware.network.impl.NetworkPackageImpl;
@@ -68,16 +59,12 @@
import org.eclipse.papyrus.iotml.hybrid.HybridPackage;
import org.eclipse.papyrus.iotml.hybrid.impl.HybridPackageImpl;
-
-import org.eclipse.papyrus.iotml.impl.IoTMLPackageImpl;
-
-import org.eclipse.papyrus.iotml.s3pml.S3pmlPackage;
+import org.eclipse.papyrus.iotml.s3pml.hardware.HardwarePackage;
+import org.eclipse.papyrus.iotml.s3pml.hardware.impl.HardwarePackageImpl;
import org.eclipse.papyrus.iotml.s3pml.hardware.store.CompositeStore;
import org.eclipse.papyrus.iotml.s3pml.hardware.store.Store;
import org.eclipse.papyrus.iotml.s3pml.hardware.store.StoreFactory;
import org.eclipse.papyrus.iotml.s3pml.hardware.store.StorePackage;
-
-import org.eclipse.papyrus.iotml.s3pml.impl.S3pmlPackageImpl;
import org.eclipse.papyrus.iotml.s3pml.protocol.ProtocolPackage;
import org.eclipse.papyrus.iotml.s3pml.protocol.impl.ProtocolPackageImpl;
@@ -86,6 +73,8 @@
import org.eclipse.papyrus.iotml.s3pml.software.impl.SoftwarePackageImpl;
+import org.eclipse.papyrus.iotml.sensinact.SensinactPackage;
+import org.eclipse.papyrus.iotml.sensinact.impl.SensinactPackageImpl;
import org.eclipse.papyrus.iotml.software.artefact.ArtefactPackage;
import org.eclipse.papyrus.iotml.software.artefact.impl.ArtefactPackageImpl;
@@ -103,6 +92,7 @@
import org.eclipse.uml2.types.TypesPackage;
import org.eclipse.uml2.uml.UMLPackage;
+import org.eclipse.uml2.uml.profile.standard.StandardPackage;
/**
* <!-- begin-user-doc -->
@@ -153,7 +143,7 @@
/**
* 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 StorePackage#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 -->
@@ -167,7 +157,8 @@
if (isInited) return (StorePackage)EPackage.Registry.INSTANCE.getEPackage(StorePackage.eNS_URI);
// Obtain or create and register package
- StorePackageImpl theStorePackage = (StorePackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof StorePackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new StorePackageImpl());
+ Object registeredStorePackage = EPackage.Registry.INSTANCE.get(eNS_URI);
+ StorePackageImpl theStorePackage = registeredStorePackage instanceof StorePackageImpl ? (StorePackageImpl)registeredStorePackage : new StorePackageImpl();
isInited = true;
@@ -185,70 +176,71 @@
sysmlPackage.eINSTANCE.eClass();
TypesPackage.eINSTANCE.eClass();
UMLPackage.eINSTANCE.eClass();
+ StandardPackage.eINSTANCE.eClass();
// Obtain or create and register interdependencies
- IoTMLPackageImpl theIoTMLPackage = (IoTMLPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(IoTMLPackage.eNS_URI) instanceof IoTMLPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(IoTMLPackage.eNS_URI) : IoTMLPackage.eINSTANCE);
- AnimatePackageImpl theAnimatePackage = (AnimatePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(AnimatePackage.eNS_URI) instanceof AnimatePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(AnimatePackage.eNS_URI) : AnimatePackage.eINSTANCE);
- HardwarePackageImpl theHardwarePackage = (HardwarePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(HardwarePackage.eNS_URI) instanceof HardwarePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(HardwarePackage.eNS_URI) : HardwarePackage.eINSTANCE);
- ActuatorPackageImpl theActuatorPackage = (ActuatorPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ActuatorPackage.eNS_URI) instanceof ActuatorPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ActuatorPackage.eNS_URI) : ActuatorPackage.eINSTANCE);
- SensorPackageImpl theSensorPackage = (SensorPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(SensorPackage.eNS_URI) instanceof SensorPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(SensorPackage.eNS_URI) : SensorPackage.eINSTANCE);
- NetworkPackageImpl theNetworkPackage = (NetworkPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(NetworkPackage.eNS_URI) instanceof NetworkPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(NetworkPackage.eNS_URI) : NetworkPackage.eINSTANCE);
- CorePackageImpl theCorePackage = (CorePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(CorePackage.eNS_URI) instanceof CorePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(CorePackage.eNS_URI) : CorePackage.eINSTANCE);
- S3pmlPackageImpl theS3pmlPackage = (S3pmlPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(S3pmlPackage.eNS_URI) instanceof S3pmlPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(S3pmlPackage.eNS_URI) : S3pmlPackage.eINSTANCE);
- SoftwarePackageImpl theSoftwarePackage = (SoftwarePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(SoftwarePackage.eNS_URI) instanceof SoftwarePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(SoftwarePackage.eNS_URI) : SoftwarePackage.eINSTANCE);
- ProtocolPackageImpl theProtocolPackage = (ProtocolPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ProtocolPackage.eNS_URI) instanceof ProtocolPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ProtocolPackage.eNS_URI) : ProtocolPackage.eINSTANCE);
- org.eclipse.papyrus.iotml.s3pml.hardware.impl.HardwarePackageImpl theHardwarePackage_1 = (org.eclipse.papyrus.iotml.s3pml.hardware.impl.HardwarePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.s3pml.hardware.HardwarePackage.eNS_URI) instanceof org.eclipse.papyrus.iotml.s3pml.hardware.impl.HardwarePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.s3pml.hardware.HardwarePackage.eNS_URI) : org.eclipse.papyrus.iotml.s3pml.hardware.HardwarePackage.eINSTANCE);
- org.eclipse.papyrus.iotml.software.impl.SoftwarePackageImpl theSoftwarePackage_1 = (org.eclipse.papyrus.iotml.software.impl.SoftwarePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.software.SoftwarePackage.eNS_URI) instanceof org.eclipse.papyrus.iotml.software.impl.SoftwarePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.software.SoftwarePackage.eNS_URI) : org.eclipse.papyrus.iotml.software.SoftwarePackage.eINSTANCE);
- org.eclipse.papyrus.iotml.software.core.impl.CorePackageImpl theCorePackage_1 = (org.eclipse.papyrus.iotml.software.core.impl.CorePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.software.core.CorePackage.eNS_URI) instanceof org.eclipse.papyrus.iotml.software.core.impl.CorePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.software.core.CorePackage.eNS_URI) : org.eclipse.papyrus.iotml.software.core.CorePackage.eINSTANCE);
- StructurePackageImpl theStructurePackage = (StructurePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(StructurePackage.eNS_URI) instanceof StructurePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(StructurePackage.eNS_URI) : StructurePackage.eINSTANCE);
- ResourcePackageImpl theResourcePackage = (ResourcePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ResourcePackage.eNS_URI) instanceof ResourcePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ResourcePackage.eNS_URI) : ResourcePackage.eINSTANCE);
- ArtefactPackageImpl theArtefactPackage = (ArtefactPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ArtefactPackage.eNS_URI) instanceof ArtefactPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ArtefactPackage.eNS_URI) : ArtefactPackage.eINSTANCE);
- HybridPackageImpl theHybridPackage = (HybridPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(HybridPackage.eNS_URI) instanceof HybridPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(HybridPackage.eNS_URI) : HybridPackage.eINSTANCE);
+ Object registeredPackage = EPackage.Registry.INSTANCE.getEPackage(AnimatePackage.eNS_URI);
+ AnimatePackageImpl theAnimatePackage = (AnimatePackageImpl)(registeredPackage instanceof AnimatePackageImpl ? registeredPackage : AnimatePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ActuatorPackage.eNS_URI);
+ ActuatorPackageImpl theActuatorPackage = (ActuatorPackageImpl)(registeredPackage instanceof ActuatorPackageImpl ? registeredPackage : ActuatorPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(SensorPackage.eNS_URI);
+ SensorPackageImpl theSensorPackage = (SensorPackageImpl)(registeredPackage instanceof SensorPackageImpl ? registeredPackage : SensorPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(NetworkPackage.eNS_URI);
+ NetworkPackageImpl theNetworkPackage = (NetworkPackageImpl)(registeredPackage instanceof NetworkPackageImpl ? registeredPackage : NetworkPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(CorePackage.eNS_URI);
+ CorePackageImpl theCorePackage = (CorePackageImpl)(registeredPackage instanceof CorePackageImpl ? registeredPackage : CorePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(SoftwarePackage.eNS_URI);
+ SoftwarePackageImpl theSoftwarePackage = (SoftwarePackageImpl)(registeredPackage instanceof SoftwarePackageImpl ? registeredPackage : SoftwarePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ProtocolPackage.eNS_URI);
+ ProtocolPackageImpl theProtocolPackage = (ProtocolPackageImpl)(registeredPackage instanceof ProtocolPackageImpl ? registeredPackage : ProtocolPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(HardwarePackage.eNS_URI);
+ HardwarePackageImpl theHardwarePackage = (HardwarePackageImpl)(registeredPackage instanceof HardwarePackageImpl ? registeredPackage : HardwarePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(StructurePackage.eNS_URI);
+ StructurePackageImpl theStructurePackage = (StructurePackageImpl)(registeredPackage instanceof StructurePackageImpl ? registeredPackage : StructurePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ResourcePackage.eNS_URI);
+ ResourcePackageImpl theResourcePackage = (ResourcePackageImpl)(registeredPackage instanceof ResourcePackageImpl ? registeredPackage : ResourcePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ArtefactPackage.eNS_URI);
+ ArtefactPackageImpl theArtefactPackage = (ArtefactPackageImpl)(registeredPackage instanceof ArtefactPackageImpl ? registeredPackage : ArtefactPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(HybridPackage.eNS_URI);
+ HybridPackageImpl theHybridPackage = (HybridPackageImpl)(registeredPackage instanceof HybridPackageImpl ? registeredPackage : HybridPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(SensinactPackage.eNS_URI);
+ SensinactPackageImpl theSensinactPackage = (SensinactPackageImpl)(registeredPackage instanceof SensinactPackageImpl ? registeredPackage : SensinactPackage.eINSTANCE);
// Create package meta-data objects
theStorePackage.createPackageContents();
- theIoTMLPackage.createPackageContents();
theAnimatePackage.createPackageContents();
- theHardwarePackage.createPackageContents();
theActuatorPackage.createPackageContents();
theSensorPackage.createPackageContents();
theNetworkPackage.createPackageContents();
theCorePackage.createPackageContents();
- theS3pmlPackage.createPackageContents();
theSoftwarePackage.createPackageContents();
theProtocolPackage.createPackageContents();
- theHardwarePackage_1.createPackageContents();
- theSoftwarePackage_1.createPackageContents();
- theCorePackage_1.createPackageContents();
+ theHardwarePackage.createPackageContents();
theStructurePackage.createPackageContents();
theResourcePackage.createPackageContents();
theArtefactPackage.createPackageContents();
theHybridPackage.createPackageContents();
+ theSensinactPackage.createPackageContents();
// Initialize created meta-data
theStorePackage.initializePackageContents();
- theIoTMLPackage.initializePackageContents();
theAnimatePackage.initializePackageContents();
- theHardwarePackage.initializePackageContents();
theActuatorPackage.initializePackageContents();
theSensorPackage.initializePackageContents();
theNetworkPackage.initializePackageContents();
theCorePackage.initializePackageContents();
- theS3pmlPackage.initializePackageContents();
theSoftwarePackage.initializePackageContents();
theProtocolPackage.initializePackageContents();
- theHardwarePackage_1.initializePackageContents();
- theSoftwarePackage_1.initializePackageContents();
- theCorePackage_1.initializePackageContents();
+ theHardwarePackage.initializePackageContents();
theStructurePackage.initializePackageContents();
theResourcePackage.initializePackageContents();
theArtefactPackage.initializePackageContents();
theHybridPackage.initializePackageContents();
+ theSensinactPackage.initializePackageContents();
// Mark meta-data to indicate it can't be changed
theStorePackage.freeze();
-
// Update the registry and return the package
EPackage.Registry.INSTANCE.put(StorePackage.eNS_URI, theStorePackage);
return theStorePackage;
@@ -378,12 +370,12 @@
* @generated
*/
protected void createUMLAnnotations() {
- String source = "http://www.eclipse.org/uml2/2.0.0/UML";
+ String source = "http://www.eclipse.org/uml2/2.0.0/UML";
addAnnotation
- (this,
- source,
+ (this,
+ source,
new String[] {
- "originalName", "Store"
+ "originalName", "Store"
});
}
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/s3pml/protocol/impl/ProtocolPackageImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/s3pml/protocol/impl/ProtocolPackageImpl.java
index 4de2811..a51257f 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/s3pml/protocol/impl/ProtocolPackageImpl.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/s3pml/protocol/impl/ProtocolPackageImpl.java
@@ -37,15 +37,9 @@
import org.eclipse.papyrus.MARTE_Library.TimeLibrary.TimeLibraryPackage;
import org.eclipse.papyrus.MARTE_Library.TimeTypesLibrary.TimeTypesLibraryPackage;
-
-import org.eclipse.papyrus.iotml.IoTMLPackage;
-
import org.eclipse.papyrus.iotml.animate.AnimatePackage;
import org.eclipse.papyrus.iotml.animate.impl.AnimatePackageImpl;
-
-import org.eclipse.papyrus.iotml.hardware.HardwarePackage;
-
import org.eclipse.papyrus.iotml.hardware.actuator.ActuatorPackage;
import org.eclipse.papyrus.iotml.hardware.actuator.impl.ActuatorPackageImpl;
@@ -53,9 +47,6 @@
import org.eclipse.papyrus.iotml.hardware.core.CorePackage;
import org.eclipse.papyrus.iotml.hardware.core.impl.CorePackageImpl;
-
-import org.eclipse.papyrus.iotml.hardware.impl.HardwarePackageImpl;
-
import org.eclipse.papyrus.iotml.hardware.network.NetworkPackage;
import org.eclipse.papyrus.iotml.hardware.network.impl.NetworkPackageImpl;
@@ -67,15 +58,11 @@
import org.eclipse.papyrus.iotml.hybrid.HybridPackage;
import org.eclipse.papyrus.iotml.hybrid.impl.HybridPackageImpl;
-
-import org.eclipse.papyrus.iotml.impl.IoTMLPackageImpl;
-
-import org.eclipse.papyrus.iotml.s3pml.S3pmlPackage;
+import org.eclipse.papyrus.iotml.s3pml.hardware.HardwarePackage;
+import org.eclipse.papyrus.iotml.s3pml.hardware.impl.HardwarePackageImpl;
import org.eclipse.papyrus.iotml.s3pml.hardware.store.StorePackage;
import org.eclipse.papyrus.iotml.s3pml.hardware.store.impl.StorePackageImpl;
-
-import org.eclipse.papyrus.iotml.s3pml.impl.S3pmlPackageImpl;
import org.eclipse.papyrus.iotml.s3pml.protocol.Protocol;
import org.eclipse.papyrus.iotml.s3pml.protocol.ProtocolFactory;
import org.eclipse.papyrus.iotml.s3pml.protocol.ProtocolPackage;
@@ -85,6 +72,8 @@
import org.eclipse.papyrus.iotml.s3pml.software.impl.SoftwarePackageImpl;
+import org.eclipse.papyrus.iotml.sensinact.SensinactPackage;
+import org.eclipse.papyrus.iotml.sensinact.impl.SensinactPackageImpl;
import org.eclipse.papyrus.iotml.software.artefact.ArtefactPackage;
import org.eclipse.papyrus.iotml.software.artefact.impl.ArtefactPackageImpl;
@@ -102,6 +91,7 @@
import org.eclipse.uml2.types.TypesPackage;
import org.eclipse.uml2.uml.UMLPackage;
+import org.eclipse.uml2.uml.profile.standard.StandardPackage;
/**
* <!-- begin-user-doc -->
@@ -152,7 +142,7 @@
/**
* 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 ProtocolPackage#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 -->
@@ -166,7 +156,8 @@
if (isInited) return (ProtocolPackage)EPackage.Registry.INSTANCE.getEPackage(ProtocolPackage.eNS_URI);
// Obtain or create and register package
- ProtocolPackageImpl theProtocolPackage = (ProtocolPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof ProtocolPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new ProtocolPackageImpl());
+ Object registeredProtocolPackage = EPackage.Registry.INSTANCE.get(eNS_URI);
+ ProtocolPackageImpl theProtocolPackage = registeredProtocolPackage instanceof ProtocolPackageImpl ? (ProtocolPackageImpl)registeredProtocolPackage : new ProtocolPackageImpl();
isInited = true;
@@ -184,70 +175,71 @@
sysmlPackage.eINSTANCE.eClass();
TypesPackage.eINSTANCE.eClass();
UMLPackage.eINSTANCE.eClass();
+ StandardPackage.eINSTANCE.eClass();
// Obtain or create and register interdependencies
- IoTMLPackageImpl theIoTMLPackage = (IoTMLPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(IoTMLPackage.eNS_URI) instanceof IoTMLPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(IoTMLPackage.eNS_URI) : IoTMLPackage.eINSTANCE);
- AnimatePackageImpl theAnimatePackage = (AnimatePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(AnimatePackage.eNS_URI) instanceof AnimatePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(AnimatePackage.eNS_URI) : AnimatePackage.eINSTANCE);
- HardwarePackageImpl theHardwarePackage = (HardwarePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(HardwarePackage.eNS_URI) instanceof HardwarePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(HardwarePackage.eNS_URI) : HardwarePackage.eINSTANCE);
- ActuatorPackageImpl theActuatorPackage = (ActuatorPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ActuatorPackage.eNS_URI) instanceof ActuatorPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ActuatorPackage.eNS_URI) : ActuatorPackage.eINSTANCE);
- SensorPackageImpl theSensorPackage = (SensorPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(SensorPackage.eNS_URI) instanceof SensorPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(SensorPackage.eNS_URI) : SensorPackage.eINSTANCE);
- NetworkPackageImpl theNetworkPackage = (NetworkPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(NetworkPackage.eNS_URI) instanceof NetworkPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(NetworkPackage.eNS_URI) : NetworkPackage.eINSTANCE);
- CorePackageImpl theCorePackage = (CorePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(CorePackage.eNS_URI) instanceof CorePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(CorePackage.eNS_URI) : CorePackage.eINSTANCE);
- S3pmlPackageImpl theS3pmlPackage = (S3pmlPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(S3pmlPackage.eNS_URI) instanceof S3pmlPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(S3pmlPackage.eNS_URI) : S3pmlPackage.eINSTANCE);
- SoftwarePackageImpl theSoftwarePackage = (SoftwarePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(SoftwarePackage.eNS_URI) instanceof SoftwarePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(SoftwarePackage.eNS_URI) : SoftwarePackage.eINSTANCE);
- org.eclipse.papyrus.iotml.s3pml.hardware.impl.HardwarePackageImpl theHardwarePackage_1 = (org.eclipse.papyrus.iotml.s3pml.hardware.impl.HardwarePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.s3pml.hardware.HardwarePackage.eNS_URI) instanceof org.eclipse.papyrus.iotml.s3pml.hardware.impl.HardwarePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.s3pml.hardware.HardwarePackage.eNS_URI) : org.eclipse.papyrus.iotml.s3pml.hardware.HardwarePackage.eINSTANCE);
- StorePackageImpl theStorePackage = (StorePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(StorePackage.eNS_URI) instanceof StorePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(StorePackage.eNS_URI) : StorePackage.eINSTANCE);
- org.eclipse.papyrus.iotml.software.impl.SoftwarePackageImpl theSoftwarePackage_1 = (org.eclipse.papyrus.iotml.software.impl.SoftwarePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.software.SoftwarePackage.eNS_URI) instanceof org.eclipse.papyrus.iotml.software.impl.SoftwarePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.software.SoftwarePackage.eNS_URI) : org.eclipse.papyrus.iotml.software.SoftwarePackage.eINSTANCE);
- org.eclipse.papyrus.iotml.software.core.impl.CorePackageImpl theCorePackage_1 = (org.eclipse.papyrus.iotml.software.core.impl.CorePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.software.core.CorePackage.eNS_URI) instanceof org.eclipse.papyrus.iotml.software.core.impl.CorePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.software.core.CorePackage.eNS_URI) : org.eclipse.papyrus.iotml.software.core.CorePackage.eINSTANCE);
- StructurePackageImpl theStructurePackage = (StructurePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(StructurePackage.eNS_URI) instanceof StructurePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(StructurePackage.eNS_URI) : StructurePackage.eINSTANCE);
- ResourcePackageImpl theResourcePackage = (ResourcePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ResourcePackage.eNS_URI) instanceof ResourcePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ResourcePackage.eNS_URI) : ResourcePackage.eINSTANCE);
- ArtefactPackageImpl theArtefactPackage = (ArtefactPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ArtefactPackage.eNS_URI) instanceof ArtefactPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ArtefactPackage.eNS_URI) : ArtefactPackage.eINSTANCE);
- HybridPackageImpl theHybridPackage = (HybridPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(HybridPackage.eNS_URI) instanceof HybridPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(HybridPackage.eNS_URI) : HybridPackage.eINSTANCE);
+ Object registeredPackage = EPackage.Registry.INSTANCE.getEPackage(AnimatePackage.eNS_URI);
+ AnimatePackageImpl theAnimatePackage = (AnimatePackageImpl)(registeredPackage instanceof AnimatePackageImpl ? registeredPackage : AnimatePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ActuatorPackage.eNS_URI);
+ ActuatorPackageImpl theActuatorPackage = (ActuatorPackageImpl)(registeredPackage instanceof ActuatorPackageImpl ? registeredPackage : ActuatorPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(SensorPackage.eNS_URI);
+ SensorPackageImpl theSensorPackage = (SensorPackageImpl)(registeredPackage instanceof SensorPackageImpl ? registeredPackage : SensorPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(NetworkPackage.eNS_URI);
+ NetworkPackageImpl theNetworkPackage = (NetworkPackageImpl)(registeredPackage instanceof NetworkPackageImpl ? registeredPackage : NetworkPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(CorePackage.eNS_URI);
+ CorePackageImpl theCorePackage = (CorePackageImpl)(registeredPackage instanceof CorePackageImpl ? registeredPackage : CorePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(SoftwarePackage.eNS_URI);
+ SoftwarePackageImpl theSoftwarePackage = (SoftwarePackageImpl)(registeredPackage instanceof SoftwarePackageImpl ? registeredPackage : SoftwarePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(HardwarePackage.eNS_URI);
+ HardwarePackageImpl theHardwarePackage = (HardwarePackageImpl)(registeredPackage instanceof HardwarePackageImpl ? registeredPackage : HardwarePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(StorePackage.eNS_URI);
+ StorePackageImpl theStorePackage = (StorePackageImpl)(registeredPackage instanceof StorePackageImpl ? registeredPackage : StorePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(StructurePackage.eNS_URI);
+ StructurePackageImpl theStructurePackage = (StructurePackageImpl)(registeredPackage instanceof StructurePackageImpl ? registeredPackage : StructurePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ResourcePackage.eNS_URI);
+ ResourcePackageImpl theResourcePackage = (ResourcePackageImpl)(registeredPackage instanceof ResourcePackageImpl ? registeredPackage : ResourcePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ArtefactPackage.eNS_URI);
+ ArtefactPackageImpl theArtefactPackage = (ArtefactPackageImpl)(registeredPackage instanceof ArtefactPackageImpl ? registeredPackage : ArtefactPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(HybridPackage.eNS_URI);
+ HybridPackageImpl theHybridPackage = (HybridPackageImpl)(registeredPackage instanceof HybridPackageImpl ? registeredPackage : HybridPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(SensinactPackage.eNS_URI);
+ SensinactPackageImpl theSensinactPackage = (SensinactPackageImpl)(registeredPackage instanceof SensinactPackageImpl ? registeredPackage : SensinactPackage.eINSTANCE);
// Create package meta-data objects
theProtocolPackage.createPackageContents();
- theIoTMLPackage.createPackageContents();
theAnimatePackage.createPackageContents();
- theHardwarePackage.createPackageContents();
theActuatorPackage.createPackageContents();
theSensorPackage.createPackageContents();
theNetworkPackage.createPackageContents();
theCorePackage.createPackageContents();
- theS3pmlPackage.createPackageContents();
theSoftwarePackage.createPackageContents();
- theHardwarePackage_1.createPackageContents();
+ theHardwarePackage.createPackageContents();
theStorePackage.createPackageContents();
- theSoftwarePackage_1.createPackageContents();
- theCorePackage_1.createPackageContents();
theStructurePackage.createPackageContents();
theResourcePackage.createPackageContents();
theArtefactPackage.createPackageContents();
theHybridPackage.createPackageContents();
+ theSensinactPackage.createPackageContents();
// Initialize created meta-data
theProtocolPackage.initializePackageContents();
- theIoTMLPackage.initializePackageContents();
theAnimatePackage.initializePackageContents();
- theHardwarePackage.initializePackageContents();
theActuatorPackage.initializePackageContents();
theSensorPackage.initializePackageContents();
theNetworkPackage.initializePackageContents();
theCorePackage.initializePackageContents();
- theS3pmlPackage.initializePackageContents();
theSoftwarePackage.initializePackageContents();
- theHardwarePackage_1.initializePackageContents();
+ theHardwarePackage.initializePackageContents();
theStorePackage.initializePackageContents();
- theSoftwarePackage_1.initializePackageContents();
- theCorePackage_1.initializePackageContents();
theStructurePackage.initializePackageContents();
theResourcePackage.initializePackageContents();
theArtefactPackage.initializePackageContents();
theHybridPackage.initializePackageContents();
+ theSensinactPackage.initializePackageContents();
// Mark meta-data to indicate it can't be changed
theProtocolPackage.freeze();
-
// Update the registry and return the package
EPackage.Registry.INSTANCE.put(ProtocolPackage.eNS_URI, theProtocolPackage);
return theProtocolPackage;
@@ -418,6 +410,9 @@
initEReference(getProtocol_Base_InstanceSpecification(), theUMLPackage.getInstanceSpecification(), null, "base_InstanceSpecification", null, 1, 1, Protocol.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
initEReference(getProtocol_Type(), this.getProtocolType(), null, "type", null, 0, 1, Protocol.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ // Create resource
+ createResource(eNS_URI);
+
// Create annotations
// http://www.eclipse.org/uml2/2.0.0/UML
createUMLAnnotations();
@@ -430,12 +425,12 @@
* @generated
*/
protected void createUMLAnnotations() {
- String source = "http://www.eclipse.org/uml2/2.0.0/UML";
+ String source = "http://www.eclipse.org/uml2/2.0.0/UML";
addAnnotation
- (this,
- source,
+ (this,
+ source,
new String[] {
- "originalName", "Protocol"
+ "originalName", "Protocol"
});
}
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/s3pml/software/impl/APIImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/s3pml/software/impl/APIImpl.java
index 44f38e8..66d3920 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/s3pml/software/impl/APIImpl.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/s3pml/software/impl/APIImpl.java
@@ -217,7 +217,7 @@
public String toString() {
if (eIsProxy()) return super.toString();
- StringBuffer result = new StringBuffer(super.toString());
+ StringBuilder result = new StringBuilder(super.toString());
result.append(" (module: ");
result.append(module);
result.append(", version: ");
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/s3pml/software/impl/SoftwarePackageImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/s3pml/software/impl/SoftwarePackageImpl.java
index e3eba76..faadc35 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/s3pml/software/impl/SoftwarePackageImpl.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/s3pml/software/impl/SoftwarePackageImpl.java
@@ -38,15 +38,9 @@
import org.eclipse.papyrus.MARTE_Library.TimeLibrary.TimeLibraryPackage;
import org.eclipse.papyrus.MARTE_Library.TimeTypesLibrary.TimeTypesLibraryPackage;
-
-import org.eclipse.papyrus.iotml.IoTMLPackage;
-
import org.eclipse.papyrus.iotml.animate.AnimatePackage;
import org.eclipse.papyrus.iotml.animate.impl.AnimatePackageImpl;
-
-import org.eclipse.papyrus.iotml.hardware.HardwarePackage;
-
import org.eclipse.papyrus.iotml.hardware.actuator.ActuatorPackage;
import org.eclipse.papyrus.iotml.hardware.actuator.impl.ActuatorPackageImpl;
@@ -54,9 +48,6 @@
import org.eclipse.papyrus.iotml.hardware.core.CorePackage;
import org.eclipse.papyrus.iotml.hardware.core.impl.CorePackageImpl;
-
-import org.eclipse.papyrus.iotml.hardware.impl.HardwarePackageImpl;
-
import org.eclipse.papyrus.iotml.hardware.network.NetworkPackage;
import org.eclipse.papyrus.iotml.hardware.network.impl.NetworkPackageImpl;
@@ -68,15 +59,11 @@
import org.eclipse.papyrus.iotml.hybrid.HybridPackage;
import org.eclipse.papyrus.iotml.hybrid.impl.HybridPackageImpl;
-
-import org.eclipse.papyrus.iotml.impl.IoTMLPackageImpl;
-
-import org.eclipse.papyrus.iotml.s3pml.S3pmlPackage;
+import org.eclipse.papyrus.iotml.s3pml.hardware.HardwarePackage;
+import org.eclipse.papyrus.iotml.s3pml.hardware.impl.HardwarePackageImpl;
import org.eclipse.papyrus.iotml.s3pml.hardware.store.StorePackage;
import org.eclipse.papyrus.iotml.s3pml.hardware.store.impl.StorePackageImpl;
-
-import org.eclipse.papyrus.iotml.s3pml.impl.S3pmlPackageImpl;
import org.eclipse.papyrus.iotml.s3pml.protocol.ProtocolPackage;
import org.eclipse.papyrus.iotml.s3pml.protocol.impl.ProtocolPackageImpl;
@@ -87,6 +74,8 @@
import org.eclipse.papyrus.iotml.s3pml.software.SoftwareFactory;
import org.eclipse.papyrus.iotml.s3pml.software.SoftwarePackage;
+import org.eclipse.papyrus.iotml.sensinact.SensinactPackage;
+import org.eclipse.papyrus.iotml.sensinact.impl.SensinactPackageImpl;
import org.eclipse.papyrus.iotml.software.artefact.ArtefactPackage;
import org.eclipse.papyrus.iotml.software.artefact.impl.ArtefactPackageImpl;
@@ -104,6 +93,7 @@
import org.eclipse.uml2.types.TypesPackage;
import org.eclipse.uml2.uml.UMLPackage;
+import org.eclipse.uml2.uml.profile.standard.StandardPackage;
/**
* <!-- begin-user-doc -->
@@ -168,7 +158,7 @@
/**
* 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 SoftwarePackage#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 -->
@@ -182,7 +172,8 @@
if (isInited) return (SoftwarePackage)EPackage.Registry.INSTANCE.getEPackage(SoftwarePackage.eNS_URI);
// Obtain or create and register package
- SoftwarePackageImpl theSoftwarePackage = (SoftwarePackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof SoftwarePackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new SoftwarePackageImpl());
+ Object registeredSoftwarePackage = EPackage.Registry.INSTANCE.get(eNS_URI);
+ SoftwarePackageImpl theSoftwarePackage = registeredSoftwarePackage instanceof SoftwarePackageImpl ? (SoftwarePackageImpl)registeredSoftwarePackage : new SoftwarePackageImpl();
isInited = true;
@@ -200,70 +191,71 @@
sysmlPackage.eINSTANCE.eClass();
TypesPackage.eINSTANCE.eClass();
UMLPackage.eINSTANCE.eClass();
+ StandardPackage.eINSTANCE.eClass();
// Obtain or create and register interdependencies
- IoTMLPackageImpl theIoTMLPackage = (IoTMLPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(IoTMLPackage.eNS_URI) instanceof IoTMLPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(IoTMLPackage.eNS_URI) : IoTMLPackage.eINSTANCE);
- AnimatePackageImpl theAnimatePackage = (AnimatePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(AnimatePackage.eNS_URI) instanceof AnimatePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(AnimatePackage.eNS_URI) : AnimatePackage.eINSTANCE);
- HardwarePackageImpl theHardwarePackage = (HardwarePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(HardwarePackage.eNS_URI) instanceof HardwarePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(HardwarePackage.eNS_URI) : HardwarePackage.eINSTANCE);
- ActuatorPackageImpl theActuatorPackage = (ActuatorPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ActuatorPackage.eNS_URI) instanceof ActuatorPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ActuatorPackage.eNS_URI) : ActuatorPackage.eINSTANCE);
- SensorPackageImpl theSensorPackage = (SensorPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(SensorPackage.eNS_URI) instanceof SensorPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(SensorPackage.eNS_URI) : SensorPackage.eINSTANCE);
- NetworkPackageImpl theNetworkPackage = (NetworkPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(NetworkPackage.eNS_URI) instanceof NetworkPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(NetworkPackage.eNS_URI) : NetworkPackage.eINSTANCE);
- CorePackageImpl theCorePackage = (CorePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(CorePackage.eNS_URI) instanceof CorePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(CorePackage.eNS_URI) : CorePackage.eINSTANCE);
- S3pmlPackageImpl theS3pmlPackage = (S3pmlPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(S3pmlPackage.eNS_URI) instanceof S3pmlPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(S3pmlPackage.eNS_URI) : S3pmlPackage.eINSTANCE);
- ProtocolPackageImpl theProtocolPackage = (ProtocolPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ProtocolPackage.eNS_URI) instanceof ProtocolPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ProtocolPackage.eNS_URI) : ProtocolPackage.eINSTANCE);
- org.eclipse.papyrus.iotml.s3pml.hardware.impl.HardwarePackageImpl theHardwarePackage_1 = (org.eclipse.papyrus.iotml.s3pml.hardware.impl.HardwarePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.s3pml.hardware.HardwarePackage.eNS_URI) instanceof org.eclipse.papyrus.iotml.s3pml.hardware.impl.HardwarePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.s3pml.hardware.HardwarePackage.eNS_URI) : org.eclipse.papyrus.iotml.s3pml.hardware.HardwarePackage.eINSTANCE);
- StorePackageImpl theStorePackage = (StorePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(StorePackage.eNS_URI) instanceof StorePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(StorePackage.eNS_URI) : StorePackage.eINSTANCE);
- org.eclipse.papyrus.iotml.software.impl.SoftwarePackageImpl theSoftwarePackage_1 = (org.eclipse.papyrus.iotml.software.impl.SoftwarePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.software.SoftwarePackage.eNS_URI) instanceof org.eclipse.papyrus.iotml.software.impl.SoftwarePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.software.SoftwarePackage.eNS_URI) : org.eclipse.papyrus.iotml.software.SoftwarePackage.eINSTANCE);
- org.eclipse.papyrus.iotml.software.core.impl.CorePackageImpl theCorePackage_1 = (org.eclipse.papyrus.iotml.software.core.impl.CorePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.software.core.CorePackage.eNS_URI) instanceof org.eclipse.papyrus.iotml.software.core.impl.CorePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.software.core.CorePackage.eNS_URI) : org.eclipse.papyrus.iotml.software.core.CorePackage.eINSTANCE);
- StructurePackageImpl theStructurePackage = (StructurePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(StructurePackage.eNS_URI) instanceof StructurePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(StructurePackage.eNS_URI) : StructurePackage.eINSTANCE);
- ResourcePackageImpl theResourcePackage = (ResourcePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ResourcePackage.eNS_URI) instanceof ResourcePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ResourcePackage.eNS_URI) : ResourcePackage.eINSTANCE);
- ArtefactPackageImpl theArtefactPackage = (ArtefactPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ArtefactPackage.eNS_URI) instanceof ArtefactPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ArtefactPackage.eNS_URI) : ArtefactPackage.eINSTANCE);
- HybridPackageImpl theHybridPackage = (HybridPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(HybridPackage.eNS_URI) instanceof HybridPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(HybridPackage.eNS_URI) : HybridPackage.eINSTANCE);
+ Object registeredPackage = EPackage.Registry.INSTANCE.getEPackage(AnimatePackage.eNS_URI);
+ AnimatePackageImpl theAnimatePackage = (AnimatePackageImpl)(registeredPackage instanceof AnimatePackageImpl ? registeredPackage : AnimatePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ActuatorPackage.eNS_URI);
+ ActuatorPackageImpl theActuatorPackage = (ActuatorPackageImpl)(registeredPackage instanceof ActuatorPackageImpl ? registeredPackage : ActuatorPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(SensorPackage.eNS_URI);
+ SensorPackageImpl theSensorPackage = (SensorPackageImpl)(registeredPackage instanceof SensorPackageImpl ? registeredPackage : SensorPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(NetworkPackage.eNS_URI);
+ NetworkPackageImpl theNetworkPackage = (NetworkPackageImpl)(registeredPackage instanceof NetworkPackageImpl ? registeredPackage : NetworkPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(CorePackage.eNS_URI);
+ CorePackageImpl theCorePackage = (CorePackageImpl)(registeredPackage instanceof CorePackageImpl ? registeredPackage : CorePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ProtocolPackage.eNS_URI);
+ ProtocolPackageImpl theProtocolPackage = (ProtocolPackageImpl)(registeredPackage instanceof ProtocolPackageImpl ? registeredPackage : ProtocolPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(HardwarePackage.eNS_URI);
+ HardwarePackageImpl theHardwarePackage = (HardwarePackageImpl)(registeredPackage instanceof HardwarePackageImpl ? registeredPackage : HardwarePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(StorePackage.eNS_URI);
+ StorePackageImpl theStorePackage = (StorePackageImpl)(registeredPackage instanceof StorePackageImpl ? registeredPackage : StorePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(StructurePackage.eNS_URI);
+ StructurePackageImpl theStructurePackage = (StructurePackageImpl)(registeredPackage instanceof StructurePackageImpl ? registeredPackage : StructurePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ResourcePackage.eNS_URI);
+ ResourcePackageImpl theResourcePackage = (ResourcePackageImpl)(registeredPackage instanceof ResourcePackageImpl ? registeredPackage : ResourcePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ArtefactPackage.eNS_URI);
+ ArtefactPackageImpl theArtefactPackage = (ArtefactPackageImpl)(registeredPackage instanceof ArtefactPackageImpl ? registeredPackage : ArtefactPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(HybridPackage.eNS_URI);
+ HybridPackageImpl theHybridPackage = (HybridPackageImpl)(registeredPackage instanceof HybridPackageImpl ? registeredPackage : HybridPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(SensinactPackage.eNS_URI);
+ SensinactPackageImpl theSensinactPackage = (SensinactPackageImpl)(registeredPackage instanceof SensinactPackageImpl ? registeredPackage : SensinactPackage.eINSTANCE);
// Create package meta-data objects
theSoftwarePackage.createPackageContents();
- theIoTMLPackage.createPackageContents();
theAnimatePackage.createPackageContents();
- theHardwarePackage.createPackageContents();
theActuatorPackage.createPackageContents();
theSensorPackage.createPackageContents();
theNetworkPackage.createPackageContents();
theCorePackage.createPackageContents();
- theS3pmlPackage.createPackageContents();
theProtocolPackage.createPackageContents();
- theHardwarePackage_1.createPackageContents();
+ theHardwarePackage.createPackageContents();
theStorePackage.createPackageContents();
- theSoftwarePackage_1.createPackageContents();
- theCorePackage_1.createPackageContents();
theStructurePackage.createPackageContents();
theResourcePackage.createPackageContents();
theArtefactPackage.createPackageContents();
theHybridPackage.createPackageContents();
+ theSensinactPackage.createPackageContents();
// Initialize created meta-data
theSoftwarePackage.initializePackageContents();
- theIoTMLPackage.initializePackageContents();
theAnimatePackage.initializePackageContents();
- theHardwarePackage.initializePackageContents();
theActuatorPackage.initializePackageContents();
theSensorPackage.initializePackageContents();
theNetworkPackage.initializePackageContents();
theCorePackage.initializePackageContents();
- theS3pmlPackage.initializePackageContents();
theProtocolPackage.initializePackageContents();
- theHardwarePackage_1.initializePackageContents();
+ theHardwarePackage.initializePackageContents();
theStorePackage.initializePackageContents();
- theSoftwarePackage_1.initializePackageContents();
- theCorePackage_1.initializePackageContents();
theStructurePackage.initializePackageContents();
theResourcePackage.initializePackageContents();
theArtefactPackage.initializePackageContents();
theHybridPackage.initializePackageContents();
+ theSensinactPackage.initializePackageContents();
// Mark meta-data to indicate it can't be changed
theSoftwarePackage.freeze();
-
// Update the registry and return the package
EPackage.Registry.INSTANCE.put(SoftwarePackage.eNS_URI, theSoftwarePackage);
return theSoftwarePackage;
@@ -432,6 +424,9 @@
initEClass(requireEClass, Require.class, "Require", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ // Create resource
+ createResource(eNS_URI);
+
// Create annotations
// http://www.eclipse.org/uml2/2.0.0/UML
createUMLAnnotations();
@@ -444,12 +439,12 @@
* @generated
*/
protected void createUMLAnnotations() {
- String source = "http://www.eclipse.org/uml2/2.0.0/UML";
+ String source = "http://www.eclipse.org/uml2/2.0.0/UML";
addAnnotation
- (this,
- source,
+ (this,
+ source,
new String[] {
- "originalName", "Software"
+ "originalName", "Software"
});
}
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/AccessMethod.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/AccessMethod.java
new file mode 100644
index 0000000..fecc283
--- /dev/null
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/AccessMethod.java
@@ -0,0 +1,112 @@
+/**
+ * Copyright (c) 2018 CEA
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
+ * Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ *
+ */
+package org.eclipse.papyrus.iotml.sensinact;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.uml2.uml.Operation;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Access Method</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.iotml.sensinact.AccessMethod#getType <em>Type</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.sensinact.AccessMethod#getParameters <em>Parameters</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.sensinact.AccessMethod#getBase_Operation <em>Base Operation</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.iotml.sensinact.SensinactPackage#getAccessMethod()
+ * @model
+ * @generated
+ */
+public interface AccessMethod extends EObject {
+ /**
+ * Returns the value of the '<em><b>Type</b></em>' attribute.
+ * The literals are from the enumeration {@link org.eclipse.papyrus.iotml.sensinact.AccessMethodType}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Type</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Type</em>' attribute.
+ * @see org.eclipse.papyrus.iotml.sensinact.AccessMethodType
+ * @see #setType(AccessMethodType)
+ * @see org.eclipse.papyrus.iotml.sensinact.SensinactPackage#getAccessMethod_Type()
+ * @model required="true" ordered="false"
+ * @generated
+ */
+ AccessMethodType getType();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.iotml.sensinact.AccessMethod#getType <em>Type</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Type</em>' attribute.
+ * @see org.eclipse.papyrus.iotml.sensinact.AccessMethodType
+ * @see #getType()
+ * @generated
+ */
+ void setType(AccessMethodType value);
+
+ /**
+ * Returns the value of the '<em><b>Parameters</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.iotml.sensinact.Parameter}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Parameters</em>' reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Parameters</em>' reference list.
+ * @see org.eclipse.papyrus.iotml.sensinact.SensinactPackage#getAccessMethod_Parameters()
+ * @model ordered="false"
+ * @generated
+ */
+ EList<Parameter> getParameters();
+
+ /**
+ * Returns the value of the '<em><b>Base Operation</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Operation</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Operation</em>' reference.
+ * @see #setBase_Operation(Operation)
+ * @see org.eclipse.papyrus.iotml.sensinact.SensinactPackage#getAccessMethod_Base_Operation()
+ * @model required="true" ordered="false"
+ * @generated
+ */
+ Operation getBase_Operation();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.iotml.sensinact.AccessMethod#getBase_Operation <em>Base Operation</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Operation</em>' reference.
+ * @see #getBase_Operation()
+ * @generated
+ */
+ void setBase_Operation(Operation value);
+
+} // AccessMethod
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/AccessMethodType.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/AccessMethodType.java
new file mode 100644
index 0000000..3192bb9
--- /dev/null
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/AccessMethodType.java
@@ -0,0 +1,306 @@
+/**
+ * Copyright (c) 2018 CEA
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
+ * Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ *
+ */
+package org.eclipse.papyrus.iotml.sensinact;
+
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.emf.common.util.Enumerator;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the literals of the enumeration '<em><b>Access Method Type</b></em>',
+ * and utility methods for working with them.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.iotml.sensinact.SensinactPackage#getAccessMethodType()
+ * @model
+ * @generated
+ */
+public enum AccessMethodType implements Enumerator {
+ /**
+ * The '<em><b>GET</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #GET_VALUE
+ * @generated
+ * @ordered
+ */
+ GET(0, "GET", "GET"),
+
+ /**
+ * The '<em><b>SET</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #SET_VALUE
+ * @generated
+ * @ordered
+ */
+ SET(1, "SET", "SET"),
+
+ /**
+ * The '<em><b>ACT</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #ACT_VALUE
+ * @generated
+ * @ordered
+ */
+ ACT(2, "ACT", "ACT"),
+
+ /**
+ * The '<em><b>SUBSCRIBE</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #SUBSCRIBE_VALUE
+ * @generated
+ * @ordered
+ */
+ SUBSCRIBE(3, "SUBSCRIBE", "SUBSCRIBE"),
+
+ /**
+ * The '<em><b>UNSUBSCRIBE</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #UNSUBSCRIBE_VALUE
+ * @generated
+ * @ordered
+ */
+ UNSUBSCRIBE(4, "UNSUBSCRIBE", "UNSUBSCRIBE");
+
+ /**
+ * The '<em><b>GET</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>GET</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #GET
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int GET_VALUE = 0;
+
+ /**
+ * The '<em><b>SET</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>SET</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #SET
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int SET_VALUE = 1;
+
+ /**
+ * The '<em><b>ACT</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>ACT</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #ACT
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int ACT_VALUE = 2;
+
+ /**
+ * The '<em><b>SUBSCRIBE</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>SUBSCRIBE</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #SUBSCRIBE
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int SUBSCRIBE_VALUE = 3;
+
+ /**
+ * The '<em><b>UNSUBSCRIBE</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>UNSUBSCRIBE</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #UNSUBSCRIBE
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int UNSUBSCRIBE_VALUE = 4;
+
+ /**
+ * An array of all the '<em><b>Access Method Type</b></em>' enumerators.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static final AccessMethodType[] VALUES_ARRAY =
+ new AccessMethodType[] {
+ GET,
+ SET,
+ ACT,
+ SUBSCRIBE,
+ UNSUBSCRIBE,
+ };
+
+ /**
+ * A public read-only list of all the '<em><b>Access Method Type</b></em>' enumerators.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static final List<AccessMethodType> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+ /**
+ * Returns the '<em><b>Access Method Type</b></em>' literal with the specified literal value.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param literal the literal.
+ * @return the matching enumerator or <code>null</code>.
+ * @generated
+ */
+ public static AccessMethodType get(String literal) {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+ AccessMethodType result = VALUES_ARRAY[i];
+ if (result.toString().equals(literal)) {
+ return result;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Returns the '<em><b>Access Method Type</b></em>' literal with the specified name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param name the name.
+ * @return the matching enumerator or <code>null</code>.
+ * @generated
+ */
+ public static AccessMethodType getByName(String name) {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+ AccessMethodType result = VALUES_ARRAY[i];
+ if (result.getName().equals(name)) {
+ return result;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Returns the '<em><b>Access Method Type</b></em>' literal with the specified integer value.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the integer value.
+ * @return the matching enumerator or <code>null</code>.
+ * @generated
+ */
+ public static AccessMethodType get(int value) {
+ switch (value) {
+ case GET_VALUE: return GET;
+ case SET_VALUE: return SET;
+ case ACT_VALUE: return ACT;
+ case SUBSCRIBE_VALUE: return SUBSCRIBE;
+ case UNSUBSCRIBE_VALUE: return UNSUBSCRIBE;
+ }
+ return null;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private final int value;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private final String name;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private final String literal;
+
+ /**
+ * Only this class can construct instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private AccessMethodType(int value, String name, String literal) {
+ this.value = value;
+ this.name = name;
+ this.literal = literal;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public int getValue() {
+ return value;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getLiteral() {
+ return literal;
+ }
+
+ /**
+ * Returns the literal value of the enumerator, which is its string representation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ return literal;
+ }
+
+} //AccessMethodType
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Action.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Action.java
new file mode 100644
index 0000000..91e3356
--- /dev/null
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Action.java
@@ -0,0 +1,63 @@
+/**
+ * Copyright (c) 2018 CEA
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
+ * Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ *
+ */
+package org.eclipse.papyrus.iotml.sensinact;
+
+import org.eclipse.papyrus.iotml.software.artefact.PropertyAccess;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Action</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.iotml.sensinact.Action#getState <em>State</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.iotml.sensinact.SensinactPackage#getAction()
+ * @model
+ * @generated
+ */
+public interface Action extends Resource, PropertyAccess {
+ /**
+ * Returns the value of the '<em><b>State</b></em>' reference.
+ * It is bidirectional and its opposite is '{@link org.eclipse.papyrus.iotml.sensinact.StateVariable#getModifier <em>Modifier</em>}'.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>State</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>State</em>' reference.
+ * @see #setState(StateVariable)
+ * @see org.eclipse.papyrus.iotml.sensinact.SensinactPackage#getAction_State()
+ * @see org.eclipse.papyrus.iotml.sensinact.StateVariable#getModifier
+ * @model opposite="modifier" required="true" transient="true" volatile="true" derived="true" ordered="false"
+ * @generated
+ */
+ StateVariable getState();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.iotml.sensinact.Action#getState <em>State</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>State</em>' reference.
+ * @see #getState()
+ * @generated
+ */
+ void setState(StateVariable value);
+
+} // Action
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Attribute.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Attribute.java
new file mode 100644
index 0000000..8849281
--- /dev/null
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Attribute.java
@@ -0,0 +1,51 @@
+/**
+ * Copyright (c) 2018 CEA
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
+ * Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ *
+ */
+package org.eclipse.papyrus.iotml.sensinact;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Attribute</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.iotml.sensinact.Attribute#getMetadata <em>Metadata</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.iotml.sensinact.SensinactPackage#getAttribute()
+ * @model
+ * @generated
+ */
+public interface Attribute extends TypedElement {
+ /**
+ * Returns the value of the '<em><b>Metadata</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.iotml.sensinact.Metadata}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Metadata</em>' reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Metadata</em>' reference list.
+ * @see org.eclipse.papyrus.iotml.sensinact.SensinactPackage#getAttribute_Metadata()
+ * @model ordered="false"
+ * @generated
+ */
+ EList<Metadata> getMetadata();
+
+} // Attribute
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Device.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Device.java
new file mode 100644
index 0000000..68be6a8
--- /dev/null
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Device.java
@@ -0,0 +1,80 @@
+/**
+ * Copyright (c) 2018 CEA
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
+ * Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ *
+ */
+package org.eclipse.papyrus.iotml.sensinact;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.papyrus.iotml.hardware.network.ConnectedDevice;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Device</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.iotml.sensinact.Device#getFriendlyName <em>Friendly Name</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.sensinact.Device#getServices <em>Services</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.iotml.sensinact.SensinactPackage#getDevice()
+ * @model
+ * @generated
+ */
+public interface Device extends ConnectedDevice {
+ /**
+ * Returns the value of the '<em><b>Friendly Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Friendly Name</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Friendly Name</em>' attribute.
+ * @see #setFriendlyName(String)
+ * @see org.eclipse.papyrus.iotml.sensinact.SensinactPackage#getDevice_FriendlyName()
+ * @model dataType="org.eclipse.uml2.types.String" required="true" ordered="false"
+ * @generated
+ */
+ String getFriendlyName();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.iotml.sensinact.Device#getFriendlyName <em>Friendly Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Friendly Name</em>' attribute.
+ * @see #getFriendlyName()
+ * @generated
+ */
+ void setFriendlyName(String value);
+
+ /**
+ * Returns the value of the '<em><b>Services</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.iotml.sensinact.Service}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Services</em>' reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Services</em>' reference list.
+ * @see org.eclipse.papyrus.iotml.sensinact.SensinactPackage#getDevice_Services()
+ * @model required="true" ordered="false"
+ * @generated
+ */
+ EList<Service> getServices();
+
+} // Device
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Gateway.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Gateway.java
new file mode 100644
index 0000000..4f3089e
--- /dev/null
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Gateway.java
@@ -0,0 +1,51 @@
+/**
+ * Copyright (c) 2018 CEA
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
+ * Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ *
+ */
+package org.eclipse.papyrus.iotml.sensinact;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Gateway</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.iotml.sensinact.Gateway#getDevices <em>Devices</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.iotml.sensinact.SensinactPackage#getGateway()
+ * @model
+ * @generated
+ */
+public interface Gateway extends org.eclipse.papyrus.iotml.hardware.network.Gateway {
+ /**
+ * Returns the value of the '<em><b>Devices</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.iotml.sensinact.Device}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Devices</em>' reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Devices</em>' reference list.
+ * @see org.eclipse.papyrus.iotml.sensinact.SensinactPackage#getGateway_Devices()
+ * @model required="true" ordered="false"
+ * @generated
+ */
+ EList<Device> getDevices();
+
+} // Gateway
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Metadata.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Metadata.java
new file mode 100644
index 0000000..7dd59d6
--- /dev/null
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Metadata.java
@@ -0,0 +1,28 @@
+/**
+ * Copyright (c) 2018 CEA
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
+ * Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ *
+ */
+package org.eclipse.papyrus.iotml.sensinact;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Metadata</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.iotml.sensinact.SensinactPackage#getMetadata()
+ * @model
+ * @generated
+ */
+public interface Metadata extends TypedElement {
+} // Metadata
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Parameter.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Parameter.java
new file mode 100644
index 0000000..9c572f0
--- /dev/null
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Parameter.java
@@ -0,0 +1,28 @@
+/**
+ * Copyright (c) 2018 CEA
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
+ * Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ *
+ */
+package org.eclipse.papyrus.iotml.sensinact;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Parameter</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.iotml.sensinact.SensinactPackage#getParameter()
+ * @model
+ * @generated
+ */
+public interface Parameter extends TypedElement {
+} // Parameter
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Property.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Property.java
new file mode 100644
index 0000000..1d38eb1
--- /dev/null
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Property.java
@@ -0,0 +1,60 @@
+/**
+ * Copyright (c) 2018 CEA
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
+ * Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ *
+ */
+package org.eclipse.papyrus.iotml.sensinact;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Property</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.iotml.sensinact.Property#getBase_Property <em>Base Property</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.iotml.sensinact.SensinactPackage#getProperty()
+ * @model
+ * @generated
+ */
+public interface Property extends Resource {
+ /**
+ * Returns the value of the '<em><b>Base Property</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Property</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Property</em>' reference.
+ * @see #setBase_Property(org.eclipse.uml2.uml.Property)
+ * @see org.eclipse.papyrus.iotml.sensinact.SensinactPackage#getProperty_Base_Property()
+ * @model required="true" ordered="false"
+ * @generated
+ */
+ org.eclipse.uml2.uml.Property getBase_Property();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.iotml.sensinact.Property#getBase_Property <em>Base Property</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Property</em>' reference.
+ * @see #getBase_Property()
+ * @generated
+ */
+ void setBase_Property(org.eclipse.uml2.uml.Property value);
+
+} // Property
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Resource.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Resource.java
new file mode 100644
index 0000000..8ae2443
--- /dev/null
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Resource.java
@@ -0,0 +1,97 @@
+/**
+ * Copyright (c) 2018 CEA
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
+ * Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ *
+ */
+package org.eclipse.papyrus.iotml.sensinact;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.papyrus.iotml.software.resource.OnDeviceResource;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Resource</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.iotml.sensinact.Resource#getFriendlyName <em>Friendly Name</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.sensinact.Resource#getAccessMethods <em>Access Methods</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.sensinact.Resource#getAttributes <em>Attributes</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.iotml.sensinact.SensinactPackage#getResource()
+ * @model
+ * @generated
+ */
+public interface Resource extends OnDeviceResource {
+ /**
+ * Returns the value of the '<em><b>Friendly Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Friendly Name</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Friendly Name</em>' attribute.
+ * @see #setFriendlyName(String)
+ * @see org.eclipse.papyrus.iotml.sensinact.SensinactPackage#getResource_FriendlyName()
+ * @model dataType="org.eclipse.uml2.types.String" required="true" ordered="false"
+ * @generated
+ */
+ String getFriendlyName();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.iotml.sensinact.Resource#getFriendlyName <em>Friendly Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Friendly Name</em>' attribute.
+ * @see #getFriendlyName()
+ * @generated
+ */
+ void setFriendlyName(String value);
+
+ /**
+ * Returns the value of the '<em><b>Access Methods</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.iotml.sensinact.AccessMethod}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Access Methods</em>' reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Access Methods</em>' reference list.
+ * @see org.eclipse.papyrus.iotml.sensinact.SensinactPackage#getResource_AccessMethods()
+ * @model required="true" ordered="false"
+ * @generated
+ */
+ EList<AccessMethod> getAccessMethods();
+
+ /**
+ * Returns the value of the '<em><b>Attributes</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.iotml.sensinact.Attribute}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Attributes</em>' reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Attributes</em>' reference list.
+ * @see org.eclipse.papyrus.iotml.sensinact.SensinactPackage#getResource_Attributes()
+ * @model required="true" ordered="false"
+ * @generated
+ */
+ EList<Attribute> getAttributes();
+
+} // Resource
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/SensinactFactory.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/SensinactFactory.java
new file mode 100644
index 0000000..b4cfde7
--- /dev/null
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/SensinactFactory.java
@@ -0,0 +1,161 @@
+/**
+ * Copyright (c) 2018 CEA
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
+ * Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ *
+ */
+package org.eclipse.papyrus.iotml.sensinact;
+
+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 org.eclipse.papyrus.iotml.sensinact.SensinactPackage
+ * @generated
+ */
+public interface SensinactFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ SensinactFactory eINSTANCE = org.eclipse.papyrus.iotml.sensinact.impl.SensinactFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>Studio</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Studio</em>'.
+ * @generated
+ */
+ Studio createStudio();
+
+ /**
+ * Returns a new object of class '<em>Gateway</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Gateway</em>'.
+ * @generated
+ */
+ Gateway createGateway();
+
+ /**
+ * Returns a new object of class '<em>Device</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Device</em>'.
+ * @generated
+ */
+ Device createDevice();
+
+ /**
+ * Returns a new object of class '<em>Service</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Service</em>'.
+ * @generated
+ */
+ Service createService();
+
+ /**
+ * Returns a new object of class '<em>Resource</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Resource</em>'.
+ * @generated
+ */
+ Resource createResource();
+
+ /**
+ * Returns a new object of class '<em>Access Method</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Access Method</em>'.
+ * @generated
+ */
+ AccessMethod createAccessMethod();
+
+ /**
+ * Returns a new object of class '<em>Parameter</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Parameter</em>'.
+ * @generated
+ */
+ Parameter createParameter();
+
+ /**
+ * Returns a new object of class '<em>Attribute</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Attribute</em>'.
+ * @generated
+ */
+ Attribute createAttribute();
+
+ /**
+ * Returns a new object of class '<em>Metadata</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Metadata</em>'.
+ * @generated
+ */
+ Metadata createMetadata();
+
+ /**
+ * Returns a new object of class '<em>Property</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Property</em>'.
+ * @generated
+ */
+ Property createProperty();
+
+ /**
+ * Returns a new object of class '<em>Sensor Data</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Sensor Data</em>'.
+ * @generated
+ */
+ SensorData createSensorData();
+
+ /**
+ * Returns a new object of class '<em>State Variable</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>State Variable</em>'.
+ * @generated
+ */
+ StateVariable createStateVariable();
+
+ /**
+ * Returns a new object of class '<em>Action</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Action</em>'.
+ * @generated
+ */
+ Action createAction();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the package supported by this factory.
+ * @generated
+ */
+ SensinactPackage getSensinactPackage();
+
+} //SensinactFactory
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/SensinactPackage.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/SensinactPackage.java
new file mode 100644
index 0000000..1655435
--- /dev/null
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/SensinactPackage.java
@@ -0,0 +1,1870 @@
+/**
+ * Copyright (c) 2018 CEA
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
+ * Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ *
+ */
+package org.eclipse.papyrus.iotml.sensinact;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EEnum;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+import org.eclipse.papyrus.iotml.animate.AnimatePackage;
+
+import org.eclipse.papyrus.iotml.hardware.network.NetworkPackage;
+
+import org.eclipse.papyrus.iotml.software.artefact.ArtefactPackage;
+
+import org.eclipse.papyrus.iotml.software.resource.ResourcePackage;
+
+/**
+ * <!-- 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 enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.iotml.sensinact.SensinactFactory
+ * @model kind="package"
+ * annotation="http://www.eclipse.org/uml2/2.0.0/UML originalName='SensiNact'"
+ * @generated
+ */
+public interface SensinactPackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNAME = "sensinact";
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_URI = "http://www.eclipse.org/papyrus/iotml/0.7/IoTML/SensiNact";
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_PREFIX = "SensiNact";
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ SensinactPackage eINSTANCE = org.eclipse.papyrus.iotml.sensinact.impl.SensinactPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.iotml.sensinact.impl.TypedElementImpl <em>Typed Element</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.TypedElementImpl
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.SensinactPackageImpl#getTypedElement()
+ * @generated
+ */
+ int TYPED_ELEMENT = 0;
+
+ /**
+ * The feature id for the '<em><b>Value</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TYPED_ELEMENT__VALUE = 0;
+
+ /**
+ * The feature id for the '<em><b>Base Typed Element</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TYPED_ELEMENT__BASE_TYPED_ELEMENT = 1;
+
+ /**
+ * The number of structural features of the '<em>Typed Element</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TYPED_ELEMENT_FEATURE_COUNT = 2;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.iotml.sensinact.impl.StudioImpl <em>Studio</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.StudioImpl
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.SensinactPackageImpl#getStudio()
+ * @generated
+ */
+ int STUDIO = 1;
+
+ /**
+ * The feature id for the '<em><b>Base Actor</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STUDIO__BASE_ACTOR = AnimatePackage.HUMAN_USER__BASE_ACTOR;
+
+ /**
+ * The feature id for the '<em><b>Gateways</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STUDIO__GATEWAYS = AnimatePackage.HUMAN_USER_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Studio</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STUDIO_FEATURE_COUNT = AnimatePackage.HUMAN_USER_FEATURE_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.iotml.sensinact.impl.GatewayImpl <em>Gateway</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.GatewayImpl
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.SensinactPackageImpl#getGateway()
+ * @generated
+ */
+ int GATEWAY = 2;
+
+ /**
+ * The feature id for the '<em><b>Res Mult</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GATEWAY__RES_MULT = NetworkPackage.GATEWAY__RES_MULT;
+
+ /**
+ * The feature id for the '<em><b>Is Protected</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GATEWAY__IS_PROTECTED = NetworkPackage.GATEWAY__IS_PROTECTED;
+
+ /**
+ * The feature id for the '<em><b>Is Active</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GATEWAY__IS_ACTIVE = NetworkPackage.GATEWAY__IS_ACTIVE;
+
+ /**
+ * The feature id for the '<em><b>Base Property</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GATEWAY__BASE_PROPERTY = NetworkPackage.GATEWAY__BASE_PROPERTY;
+
+ /**
+ * The feature id for the '<em><b>Base Instance Specification</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GATEWAY__BASE_INSTANCE_SPECIFICATION = NetworkPackage.GATEWAY__BASE_INSTANCE_SPECIFICATION;
+
+ /**
+ * The feature id for the '<em><b>Base Classifier</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GATEWAY__BASE_CLASSIFIER = NetworkPackage.GATEWAY__BASE_CLASSIFIER;
+
+ /**
+ * The feature id for the '<em><b>Base Lifeline</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GATEWAY__BASE_LIFELINE = NetworkPackage.GATEWAY__BASE_LIFELINE;
+
+ /**
+ * The feature id for the '<em><b>Base Connectable Element</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GATEWAY__BASE_CONNECTABLE_ELEMENT = NetworkPackage.GATEWAY__BASE_CONNECTABLE_ELEMENT;
+
+ /**
+ * The feature id for the '<em><b>Description</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GATEWAY__DESCRIPTION = NetworkPackage.GATEWAY__DESCRIPTION;
+
+ /**
+ * The feature id for the '<em><b>Frequency</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GATEWAY__FREQUENCY = NetworkPackage.GATEWAY__FREQUENCY;
+
+ /**
+ * The feature id for the '<em><b>End Points</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GATEWAY__END_POINTS = NetworkPackage.GATEWAY__END_POINTS;
+
+ /**
+ * The feature id for the '<em><b>PHW Services</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GATEWAY__PHW_SERVICES = NetworkPackage.GATEWAY__PHW_SERVICES;
+
+ /**
+ * The feature id for the '<em><b>RHW Services</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GATEWAY__RHW_SERVICES = NetworkPackage.GATEWAY__RHW_SERVICES;
+
+ /**
+ * The feature id for the '<em><b>Owned HW</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GATEWAY__OWNED_HW = NetworkPackage.GATEWAY__OWNED_HW;
+
+ /**
+ * The feature id for the '<em><b>Speed Factor</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GATEWAY__SPEED_FACTOR = NetworkPackage.GATEWAY__SPEED_FACTOR;
+
+ /**
+ * The feature id for the '<em><b>Main Scheduler</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GATEWAY__MAIN_SCHEDULER = NetworkPackage.GATEWAY__MAIN_SCHEDULER;
+
+ /**
+ * The feature id for the '<em><b>Op Frequencies</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GATEWAY__OP_FREQUENCIES = NetworkPackage.GATEWAY__OP_FREQUENCIES;
+
+ /**
+ * The feature id for the '<em><b>Device Type</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GATEWAY__DEVICE_TYPE = NetworkPackage.GATEWAY__DEVICE_TYPE;
+
+ /**
+ * The feature id for the '<em><b>Board</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GATEWAY__BOARD = NetworkPackage.GATEWAY__BOARD;
+
+ /**
+ * The feature id for the '<em><b>Devices</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GATEWAY__DEVICES = NetworkPackage.GATEWAY_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Gateway</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GATEWAY_FEATURE_COUNT = NetworkPackage.GATEWAY_FEATURE_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.iotml.sensinact.impl.DeviceImpl <em>Device</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.DeviceImpl
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.SensinactPackageImpl#getDevice()
+ * @generated
+ */
+ int DEVICE = 3;
+
+ /**
+ * The feature id for the '<em><b>Res Mult</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEVICE__RES_MULT = NetworkPackage.CONNECTED_DEVICE__RES_MULT;
+
+ /**
+ * The feature id for the '<em><b>Is Protected</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEVICE__IS_PROTECTED = NetworkPackage.CONNECTED_DEVICE__IS_PROTECTED;
+
+ /**
+ * The feature id for the '<em><b>Is Active</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEVICE__IS_ACTIVE = NetworkPackage.CONNECTED_DEVICE__IS_ACTIVE;
+
+ /**
+ * The feature id for the '<em><b>Base Property</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEVICE__BASE_PROPERTY = NetworkPackage.CONNECTED_DEVICE__BASE_PROPERTY;
+
+ /**
+ * The feature id for the '<em><b>Base Instance Specification</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEVICE__BASE_INSTANCE_SPECIFICATION = NetworkPackage.CONNECTED_DEVICE__BASE_INSTANCE_SPECIFICATION;
+
+ /**
+ * The feature id for the '<em><b>Base Classifier</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEVICE__BASE_CLASSIFIER = NetworkPackage.CONNECTED_DEVICE__BASE_CLASSIFIER;
+
+ /**
+ * The feature id for the '<em><b>Base Lifeline</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEVICE__BASE_LIFELINE = NetworkPackage.CONNECTED_DEVICE__BASE_LIFELINE;
+
+ /**
+ * The feature id for the '<em><b>Base Connectable Element</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEVICE__BASE_CONNECTABLE_ELEMENT = NetworkPackage.CONNECTED_DEVICE__BASE_CONNECTABLE_ELEMENT;
+
+ /**
+ * The feature id for the '<em><b>Description</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEVICE__DESCRIPTION = NetworkPackage.CONNECTED_DEVICE__DESCRIPTION;
+
+ /**
+ * The feature id for the '<em><b>Frequency</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEVICE__FREQUENCY = NetworkPackage.CONNECTED_DEVICE__FREQUENCY;
+
+ /**
+ * The feature id for the '<em><b>End Points</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEVICE__END_POINTS = NetworkPackage.CONNECTED_DEVICE__END_POINTS;
+
+ /**
+ * The feature id for the '<em><b>PHW Services</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEVICE__PHW_SERVICES = NetworkPackage.CONNECTED_DEVICE__PHW_SERVICES;
+
+ /**
+ * The feature id for the '<em><b>RHW Services</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEVICE__RHW_SERVICES = NetworkPackage.CONNECTED_DEVICE__RHW_SERVICES;
+
+ /**
+ * The feature id for the '<em><b>Owned HW</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEVICE__OWNED_HW = NetworkPackage.CONNECTED_DEVICE__OWNED_HW;
+
+ /**
+ * The feature id for the '<em><b>Friendly Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEVICE__FRIENDLY_NAME = NetworkPackage.CONNECTED_DEVICE_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Services</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEVICE__SERVICES = NetworkPackage.CONNECTED_DEVICE_FEATURE_COUNT + 1;
+
+ /**
+ * The number of structural features of the '<em>Device</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEVICE_FEATURE_COUNT = NetworkPackage.CONNECTED_DEVICE_FEATURE_COUNT + 2;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.iotml.sensinact.impl.ServiceImpl <em>Service</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.ServiceImpl
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.SensinactPackageImpl#getService()
+ * @generated
+ */
+ int SERVICE = 4;
+
+ /**
+ * The feature id for the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SERVICE__BASE_CLASS = ArtefactPackage.SERVICE__BASE_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Friendly Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SERVICE__FRIENDLY_NAME = ArtefactPackage.SERVICE_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Resources</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SERVICE__RESOURCES = ArtefactPackage.SERVICE_FEATURE_COUNT + 1;
+
+ /**
+ * The number of structural features of the '<em>Service</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SERVICE_FEATURE_COUNT = ArtefactPackage.SERVICE_FEATURE_COUNT + 2;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.iotml.sensinact.impl.ResourceImpl <em>Resource</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.ResourceImpl
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.SensinactPackageImpl#getResource()
+ * @generated
+ */
+ int RESOURCE = 5;
+
+ /**
+ * The feature id for the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int RESOURCE__BASE_CLASS = ResourcePackage.ON_DEVICE_RESOURCE__BASE_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Device Broker</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int RESOURCE__DEVICE_BROKER = ResourcePackage.ON_DEVICE_RESOURCE__DEVICE_BROKER;
+
+ /**
+ * The feature id for the '<em><b>Memory Broker</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int RESOURCE__MEMORY_BROKER = ResourcePackage.ON_DEVICE_RESOURCE__MEMORY_BROKER;
+
+ /**
+ * The feature id for the '<em><b>Friendly Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int RESOURCE__FRIENDLY_NAME = ResourcePackage.ON_DEVICE_RESOURCE_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Access Methods</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int RESOURCE__ACCESS_METHODS = ResourcePackage.ON_DEVICE_RESOURCE_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Attributes</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int RESOURCE__ATTRIBUTES = ResourcePackage.ON_DEVICE_RESOURCE_FEATURE_COUNT + 2;
+
+ /**
+ * The number of structural features of the '<em>Resource</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int RESOURCE_FEATURE_COUNT = ResourcePackage.ON_DEVICE_RESOURCE_FEATURE_COUNT + 3;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.iotml.sensinact.impl.AccessMethodImpl <em>Access Method</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.AccessMethodImpl
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.SensinactPackageImpl#getAccessMethod()
+ * @generated
+ */
+ int ACCESS_METHOD = 6;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ACCESS_METHOD__TYPE = 0;
+
+ /**
+ * The feature id for the '<em><b>Parameters</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ACCESS_METHOD__PARAMETERS = 1;
+
+ /**
+ * The feature id for the '<em><b>Base Operation</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ACCESS_METHOD__BASE_OPERATION = 2;
+
+ /**
+ * The number of structural features of the '<em>Access Method</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ACCESS_METHOD_FEATURE_COUNT = 3;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.iotml.sensinact.impl.ParameterImpl <em>Parameter</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.ParameterImpl
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.SensinactPackageImpl#getParameter()
+ * @generated
+ */
+ int PARAMETER = 7;
+
+ /**
+ * The feature id for the '<em><b>Value</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PARAMETER__VALUE = TYPED_ELEMENT__VALUE;
+
+ /**
+ * The feature id for the '<em><b>Base Typed Element</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PARAMETER__BASE_TYPED_ELEMENT = TYPED_ELEMENT__BASE_TYPED_ELEMENT;
+
+ /**
+ * The number of structural features of the '<em>Parameter</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PARAMETER_FEATURE_COUNT = TYPED_ELEMENT_FEATURE_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.iotml.sensinact.impl.AttributeImpl <em>Attribute</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.AttributeImpl
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.SensinactPackageImpl#getAttribute()
+ * @generated
+ */
+ int ATTRIBUTE = 8;
+
+ /**
+ * The feature id for the '<em><b>Value</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ATTRIBUTE__VALUE = TYPED_ELEMENT__VALUE;
+
+ /**
+ * The feature id for the '<em><b>Base Typed Element</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ATTRIBUTE__BASE_TYPED_ELEMENT = TYPED_ELEMENT__BASE_TYPED_ELEMENT;
+
+ /**
+ * The feature id for the '<em><b>Metadata</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ATTRIBUTE__METADATA = TYPED_ELEMENT_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Attribute</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ATTRIBUTE_FEATURE_COUNT = TYPED_ELEMENT_FEATURE_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.iotml.sensinact.impl.MetadataImpl <em>Metadata</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.MetadataImpl
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.SensinactPackageImpl#getMetadata()
+ * @generated
+ */
+ int METADATA = 9;
+
+ /**
+ * The feature id for the '<em><b>Value</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int METADATA__VALUE = TYPED_ELEMENT__VALUE;
+
+ /**
+ * The feature id for the '<em><b>Base Typed Element</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int METADATA__BASE_TYPED_ELEMENT = TYPED_ELEMENT__BASE_TYPED_ELEMENT;
+
+ /**
+ * The number of structural features of the '<em>Metadata</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int METADATA_FEATURE_COUNT = TYPED_ELEMENT_FEATURE_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.iotml.sensinact.impl.PropertyImpl <em>Property</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.PropertyImpl
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.SensinactPackageImpl#getProperty()
+ * @generated
+ */
+ int PROPERTY = 10;
+
+ /**
+ * The feature id for the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PROPERTY__BASE_CLASS = RESOURCE__BASE_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Device Broker</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PROPERTY__DEVICE_BROKER = RESOURCE__DEVICE_BROKER;
+
+ /**
+ * The feature id for the '<em><b>Memory Broker</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PROPERTY__MEMORY_BROKER = RESOURCE__MEMORY_BROKER;
+
+ /**
+ * The feature id for the '<em><b>Friendly Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PROPERTY__FRIENDLY_NAME = RESOURCE__FRIENDLY_NAME;
+
+ /**
+ * The feature id for the '<em><b>Access Methods</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PROPERTY__ACCESS_METHODS = RESOURCE__ACCESS_METHODS;
+
+ /**
+ * The feature id for the '<em><b>Attributes</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PROPERTY__ATTRIBUTES = RESOURCE__ATTRIBUTES;
+
+ /**
+ * The feature id for the '<em><b>Base Property</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PROPERTY__BASE_PROPERTY = RESOURCE_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Property</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PROPERTY_FEATURE_COUNT = RESOURCE_FEATURE_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.iotml.sensinact.impl.SensorDataImpl <em>Sensor Data</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.SensorDataImpl
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.SensinactPackageImpl#getSensorData()
+ * @generated
+ */
+ int SENSOR_DATA = 11;
+
+ /**
+ * The feature id for the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SENSOR_DATA__BASE_CLASS = RESOURCE__BASE_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Device Broker</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SENSOR_DATA__DEVICE_BROKER = RESOURCE__DEVICE_BROKER;
+
+ /**
+ * The feature id for the '<em><b>Memory Broker</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SENSOR_DATA__MEMORY_BROKER = RESOURCE__MEMORY_BROKER;
+
+ /**
+ * The feature id for the '<em><b>Friendly Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SENSOR_DATA__FRIENDLY_NAME = RESOURCE__FRIENDLY_NAME;
+
+ /**
+ * The feature id for the '<em><b>Access Methods</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SENSOR_DATA__ACCESS_METHODS = RESOURCE__ACCESS_METHODS;
+
+ /**
+ * The feature id for the '<em><b>Attributes</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SENSOR_DATA__ATTRIBUTES = RESOURCE__ATTRIBUTES;
+
+ /**
+ * The feature id for the '<em><b>Base Property</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SENSOR_DATA__BASE_PROPERTY = RESOURCE_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Sensor Data</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SENSOR_DATA_FEATURE_COUNT = RESOURCE_FEATURE_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.iotml.sensinact.impl.StateVariableImpl <em>State Variable</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.StateVariableImpl
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.SensinactPackageImpl#getStateVariable()
+ * @generated
+ */
+ int STATE_VARIABLE = 12;
+
+ /**
+ * The feature id for the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STATE_VARIABLE__BASE_CLASS = RESOURCE__BASE_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Device Broker</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STATE_VARIABLE__DEVICE_BROKER = RESOURCE__DEVICE_BROKER;
+
+ /**
+ * The feature id for the '<em><b>Memory Broker</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STATE_VARIABLE__MEMORY_BROKER = RESOURCE__MEMORY_BROKER;
+
+ /**
+ * The feature id for the '<em><b>Friendly Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STATE_VARIABLE__FRIENDLY_NAME = RESOURCE__FRIENDLY_NAME;
+
+ /**
+ * The feature id for the '<em><b>Access Methods</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STATE_VARIABLE__ACCESS_METHODS = RESOURCE__ACCESS_METHODS;
+
+ /**
+ * The feature id for the '<em><b>Attributes</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STATE_VARIABLE__ATTRIBUTES = RESOURCE__ATTRIBUTES;
+
+ /**
+ * The feature id for the '<em><b>Modifier</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STATE_VARIABLE__MODIFIER = RESOURCE_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Base Property</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STATE_VARIABLE__BASE_PROPERTY = RESOURCE_FEATURE_COUNT + 1;
+
+ /**
+ * The number of structural features of the '<em>State Variable</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STATE_VARIABLE_FEATURE_COUNT = RESOURCE_FEATURE_COUNT + 2;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.iotml.sensinact.impl.ActionImpl <em>Action</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.ActionImpl
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.SensinactPackageImpl#getAction()
+ * @generated
+ */
+ int ACTION = 13;
+
+ /**
+ * The feature id for the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ACTION__BASE_CLASS = RESOURCE__BASE_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Device Broker</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ACTION__DEVICE_BROKER = RESOURCE__DEVICE_BROKER;
+
+ /**
+ * The feature id for the '<em><b>Memory Broker</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ACTION__MEMORY_BROKER = RESOURCE__MEMORY_BROKER;
+
+ /**
+ * The feature id for the '<em><b>Friendly Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ACTION__FRIENDLY_NAME = RESOURCE__FRIENDLY_NAME;
+
+ /**
+ * The feature id for the '<em><b>Access Methods</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ACTION__ACCESS_METHODS = RESOURCE__ACCESS_METHODS;
+
+ /**
+ * The feature id for the '<em><b>Attributes</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ACTION__ATTRIBUTES = RESOURCE__ATTRIBUTES;
+
+ /**
+ * The feature id for the '<em><b>Base Association</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ACTION__BASE_ASSOCIATION = RESOURCE_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Accessed Property</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ACTION__ACCESSED_PROPERTY = RESOURCE_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>State</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ACTION__STATE = RESOURCE_FEATURE_COUNT + 2;
+
+ /**
+ * The number of structural features of the '<em>Action</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ACTION_FEATURE_COUNT = RESOURCE_FEATURE_COUNT + 3;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.iotml.sensinact.AccessMethodType <em>Access Method Type</em>}' enum.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.iotml.sensinact.AccessMethodType
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.SensinactPackageImpl#getAccessMethodType()
+ * @generated
+ */
+ int ACCESS_METHOD_TYPE = 14;
+
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.iotml.sensinact.TypedElement <em>Typed Element</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Typed Element</em>'.
+ * @see org.eclipse.papyrus.iotml.sensinact.TypedElement
+ * @generated
+ */
+ EClass getTypedElement();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.iotml.sensinact.TypedElement#getValue <em>Value</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Value</em>'.
+ * @see org.eclipse.papyrus.iotml.sensinact.TypedElement#getValue()
+ * @see #getTypedElement()
+ * @generated
+ */
+ EReference getTypedElement_Value();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.iotml.sensinact.TypedElement#getBase_TypedElement <em>Base Typed Element</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Typed Element</em>'.
+ * @see org.eclipse.papyrus.iotml.sensinact.TypedElement#getBase_TypedElement()
+ * @see #getTypedElement()
+ * @generated
+ */
+ EReference getTypedElement_Base_TypedElement();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.iotml.sensinact.Studio <em>Studio</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Studio</em>'.
+ * @see org.eclipse.papyrus.iotml.sensinact.Studio
+ * @generated
+ */
+ EClass getStudio();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.iotml.sensinact.Studio#getGateways <em>Gateways</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Gateways</em>'.
+ * @see org.eclipse.papyrus.iotml.sensinact.Studio#getGateways()
+ * @see #getStudio()
+ * @generated
+ */
+ EReference getStudio_Gateways();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.iotml.sensinact.Gateway <em>Gateway</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Gateway</em>'.
+ * @see org.eclipse.papyrus.iotml.sensinact.Gateway
+ * @generated
+ */
+ EClass getGateway();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.iotml.sensinact.Gateway#getDevices <em>Devices</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Devices</em>'.
+ * @see org.eclipse.papyrus.iotml.sensinact.Gateway#getDevices()
+ * @see #getGateway()
+ * @generated
+ */
+ EReference getGateway_Devices();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.iotml.sensinact.Device <em>Device</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Device</em>'.
+ * @see org.eclipse.papyrus.iotml.sensinact.Device
+ * @generated
+ */
+ EClass getDevice();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.iotml.sensinact.Device#getFriendlyName <em>Friendly Name</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Friendly Name</em>'.
+ * @see org.eclipse.papyrus.iotml.sensinact.Device#getFriendlyName()
+ * @see #getDevice()
+ * @generated
+ */
+ EAttribute getDevice_FriendlyName();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.iotml.sensinact.Device#getServices <em>Services</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Services</em>'.
+ * @see org.eclipse.papyrus.iotml.sensinact.Device#getServices()
+ * @see #getDevice()
+ * @generated
+ */
+ EReference getDevice_Services();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.iotml.sensinact.Service <em>Service</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Service</em>'.
+ * @see org.eclipse.papyrus.iotml.sensinact.Service
+ * @generated
+ */
+ EClass getService();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.iotml.sensinact.Service#getFriendlyName <em>Friendly Name</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Friendly Name</em>'.
+ * @see org.eclipse.papyrus.iotml.sensinact.Service#getFriendlyName()
+ * @see #getService()
+ * @generated
+ */
+ EAttribute getService_FriendlyName();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.iotml.sensinact.Service#getResources <em>Resources</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Resources</em>'.
+ * @see org.eclipse.papyrus.iotml.sensinact.Service#getResources()
+ * @see #getService()
+ * @generated
+ */
+ EReference getService_Resources();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.iotml.sensinact.Resource <em>Resource</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Resource</em>'.
+ * @see org.eclipse.papyrus.iotml.sensinact.Resource
+ * @generated
+ */
+ EClass getResource();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.iotml.sensinact.Resource#getFriendlyName <em>Friendly Name</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Friendly Name</em>'.
+ * @see org.eclipse.papyrus.iotml.sensinact.Resource#getFriendlyName()
+ * @see #getResource()
+ * @generated
+ */
+ EAttribute getResource_FriendlyName();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.iotml.sensinact.Resource#getAccessMethods <em>Access Methods</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Access Methods</em>'.
+ * @see org.eclipse.papyrus.iotml.sensinact.Resource#getAccessMethods()
+ * @see #getResource()
+ * @generated
+ */
+ EReference getResource_AccessMethods();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.iotml.sensinact.Resource#getAttributes <em>Attributes</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Attributes</em>'.
+ * @see org.eclipse.papyrus.iotml.sensinact.Resource#getAttributes()
+ * @see #getResource()
+ * @generated
+ */
+ EReference getResource_Attributes();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.iotml.sensinact.AccessMethod <em>Access Method</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Access Method</em>'.
+ * @see org.eclipse.papyrus.iotml.sensinact.AccessMethod
+ * @generated
+ */
+ EClass getAccessMethod();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.iotml.sensinact.AccessMethod#getType <em>Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Type</em>'.
+ * @see org.eclipse.papyrus.iotml.sensinact.AccessMethod#getType()
+ * @see #getAccessMethod()
+ * @generated
+ */
+ EAttribute getAccessMethod_Type();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.iotml.sensinact.AccessMethod#getParameters <em>Parameters</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Parameters</em>'.
+ * @see org.eclipse.papyrus.iotml.sensinact.AccessMethod#getParameters()
+ * @see #getAccessMethod()
+ * @generated
+ */
+ EReference getAccessMethod_Parameters();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.iotml.sensinact.AccessMethod#getBase_Operation <em>Base Operation</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Operation</em>'.
+ * @see org.eclipse.papyrus.iotml.sensinact.AccessMethod#getBase_Operation()
+ * @see #getAccessMethod()
+ * @generated
+ */
+ EReference getAccessMethod_Base_Operation();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.iotml.sensinact.Parameter <em>Parameter</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Parameter</em>'.
+ * @see org.eclipse.papyrus.iotml.sensinact.Parameter
+ * @generated
+ */
+ EClass getParameter();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.iotml.sensinact.Attribute <em>Attribute</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Attribute</em>'.
+ * @see org.eclipse.papyrus.iotml.sensinact.Attribute
+ * @generated
+ */
+ EClass getAttribute();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.iotml.sensinact.Attribute#getMetadata <em>Metadata</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Metadata</em>'.
+ * @see org.eclipse.papyrus.iotml.sensinact.Attribute#getMetadata()
+ * @see #getAttribute()
+ * @generated
+ */
+ EReference getAttribute_Metadata();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.iotml.sensinact.Metadata <em>Metadata</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Metadata</em>'.
+ * @see org.eclipse.papyrus.iotml.sensinact.Metadata
+ * @generated
+ */
+ EClass getMetadata();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.iotml.sensinact.Property <em>Property</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Property</em>'.
+ * @see org.eclipse.papyrus.iotml.sensinact.Property
+ * @generated
+ */
+ EClass getProperty();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.iotml.sensinact.Property#getBase_Property <em>Base Property</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Property</em>'.
+ * @see org.eclipse.papyrus.iotml.sensinact.Property#getBase_Property()
+ * @see #getProperty()
+ * @generated
+ */
+ EReference getProperty_Base_Property();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.iotml.sensinact.SensorData <em>Sensor Data</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Sensor Data</em>'.
+ * @see org.eclipse.papyrus.iotml.sensinact.SensorData
+ * @generated
+ */
+ EClass getSensorData();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.iotml.sensinact.SensorData#getBase_Property <em>Base Property</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Property</em>'.
+ * @see org.eclipse.papyrus.iotml.sensinact.SensorData#getBase_Property()
+ * @see #getSensorData()
+ * @generated
+ */
+ EReference getSensorData_Base_Property();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.iotml.sensinact.StateVariable <em>State Variable</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>State Variable</em>'.
+ * @see org.eclipse.papyrus.iotml.sensinact.StateVariable
+ * @generated
+ */
+ EClass getStateVariable();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.iotml.sensinact.StateVariable#getModifier <em>Modifier</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Modifier</em>'.
+ * @see org.eclipse.papyrus.iotml.sensinact.StateVariable#getModifier()
+ * @see #getStateVariable()
+ * @generated
+ */
+ EReference getStateVariable_Modifier();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.iotml.sensinact.StateVariable#getBase_Property <em>Base Property</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Property</em>'.
+ * @see org.eclipse.papyrus.iotml.sensinact.StateVariable#getBase_Property()
+ * @see #getStateVariable()
+ * @generated
+ */
+ EReference getStateVariable_Base_Property();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.iotml.sensinact.Action <em>Action</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Action</em>'.
+ * @see org.eclipse.papyrus.iotml.sensinact.Action
+ * @generated
+ */
+ EClass getAction();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.iotml.sensinact.Action#getState <em>State</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>State</em>'.
+ * @see org.eclipse.papyrus.iotml.sensinact.Action#getState()
+ * @see #getAction()
+ * @generated
+ */
+ EReference getAction_State();
+
+ /**
+ * Returns the meta object for enum '{@link org.eclipse.papyrus.iotml.sensinact.AccessMethodType <em>Access Method Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for enum '<em>Access Method Type</em>'.
+ * @see org.eclipse.papyrus.iotml.sensinact.AccessMethodType
+ * @generated
+ */
+ EEnum getAccessMethodType();
+
+ /**
+ * 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
+ */
+ SensinactFactory getSensinactFactory();
+
+ /**
+ * <!-- 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 enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.iotml.sensinact.impl.TypedElementImpl <em>Typed Element</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.TypedElementImpl
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.SensinactPackageImpl#getTypedElement()
+ * @generated
+ */
+ EClass TYPED_ELEMENT = eINSTANCE.getTypedElement();
+
+ /**
+ * The meta object literal for the '<em><b>Value</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference TYPED_ELEMENT__VALUE = eINSTANCE.getTypedElement_Value();
+
+ /**
+ * The meta object literal for the '<em><b>Base Typed Element</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference TYPED_ELEMENT__BASE_TYPED_ELEMENT = eINSTANCE.getTypedElement_Base_TypedElement();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.iotml.sensinact.impl.StudioImpl <em>Studio</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.StudioImpl
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.SensinactPackageImpl#getStudio()
+ * @generated
+ */
+ EClass STUDIO = eINSTANCE.getStudio();
+
+ /**
+ * The meta object literal for the '<em><b>Gateways</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference STUDIO__GATEWAYS = eINSTANCE.getStudio_Gateways();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.iotml.sensinact.impl.GatewayImpl <em>Gateway</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.GatewayImpl
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.SensinactPackageImpl#getGateway()
+ * @generated
+ */
+ EClass GATEWAY = eINSTANCE.getGateway();
+
+ /**
+ * The meta object literal for the '<em><b>Devices</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference GATEWAY__DEVICES = eINSTANCE.getGateway_Devices();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.iotml.sensinact.impl.DeviceImpl <em>Device</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.DeviceImpl
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.SensinactPackageImpl#getDevice()
+ * @generated
+ */
+ EClass DEVICE = eINSTANCE.getDevice();
+
+ /**
+ * The meta object literal for the '<em><b>Friendly Name</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DEVICE__FRIENDLY_NAME = eINSTANCE.getDevice_FriendlyName();
+
+ /**
+ * The meta object literal for the '<em><b>Services</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DEVICE__SERVICES = eINSTANCE.getDevice_Services();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.iotml.sensinact.impl.ServiceImpl <em>Service</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.ServiceImpl
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.SensinactPackageImpl#getService()
+ * @generated
+ */
+ EClass SERVICE = eINSTANCE.getService();
+
+ /**
+ * The meta object literal for the '<em><b>Friendly Name</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute SERVICE__FRIENDLY_NAME = eINSTANCE.getService_FriendlyName();
+
+ /**
+ * The meta object literal for the '<em><b>Resources</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference SERVICE__RESOURCES = eINSTANCE.getService_Resources();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.iotml.sensinact.impl.ResourceImpl <em>Resource</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.ResourceImpl
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.SensinactPackageImpl#getResource()
+ * @generated
+ */
+ EClass RESOURCE = eINSTANCE.getResource();
+
+ /**
+ * The meta object literal for the '<em><b>Friendly Name</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute RESOURCE__FRIENDLY_NAME = eINSTANCE.getResource_FriendlyName();
+
+ /**
+ * The meta object literal for the '<em><b>Access Methods</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference RESOURCE__ACCESS_METHODS = eINSTANCE.getResource_AccessMethods();
+
+ /**
+ * The meta object literal for the '<em><b>Attributes</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference RESOURCE__ATTRIBUTES = eINSTANCE.getResource_Attributes();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.iotml.sensinact.impl.AccessMethodImpl <em>Access Method</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.AccessMethodImpl
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.SensinactPackageImpl#getAccessMethod()
+ * @generated
+ */
+ EClass ACCESS_METHOD = eINSTANCE.getAccessMethod();
+
+ /**
+ * The meta object literal for the '<em><b>Type</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute ACCESS_METHOD__TYPE = eINSTANCE.getAccessMethod_Type();
+
+ /**
+ * The meta object literal for the '<em><b>Parameters</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference ACCESS_METHOD__PARAMETERS = eINSTANCE.getAccessMethod_Parameters();
+
+ /**
+ * The meta object literal for the '<em><b>Base Operation</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference ACCESS_METHOD__BASE_OPERATION = eINSTANCE.getAccessMethod_Base_Operation();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.iotml.sensinact.impl.ParameterImpl <em>Parameter</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.ParameterImpl
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.SensinactPackageImpl#getParameter()
+ * @generated
+ */
+ EClass PARAMETER = eINSTANCE.getParameter();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.iotml.sensinact.impl.AttributeImpl <em>Attribute</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.AttributeImpl
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.SensinactPackageImpl#getAttribute()
+ * @generated
+ */
+ EClass ATTRIBUTE = eINSTANCE.getAttribute();
+
+ /**
+ * The meta object literal for the '<em><b>Metadata</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference ATTRIBUTE__METADATA = eINSTANCE.getAttribute_Metadata();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.iotml.sensinact.impl.MetadataImpl <em>Metadata</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.MetadataImpl
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.SensinactPackageImpl#getMetadata()
+ * @generated
+ */
+ EClass METADATA = eINSTANCE.getMetadata();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.iotml.sensinact.impl.PropertyImpl <em>Property</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.PropertyImpl
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.SensinactPackageImpl#getProperty()
+ * @generated
+ */
+ EClass PROPERTY = eINSTANCE.getProperty();
+
+ /**
+ * The meta object literal for the '<em><b>Base Property</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference PROPERTY__BASE_PROPERTY = eINSTANCE.getProperty_Base_Property();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.iotml.sensinact.impl.SensorDataImpl <em>Sensor Data</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.SensorDataImpl
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.SensinactPackageImpl#getSensorData()
+ * @generated
+ */
+ EClass SENSOR_DATA = eINSTANCE.getSensorData();
+
+ /**
+ * The meta object literal for the '<em><b>Base Property</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference SENSOR_DATA__BASE_PROPERTY = eINSTANCE.getSensorData_Base_Property();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.iotml.sensinact.impl.StateVariableImpl <em>State Variable</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.StateVariableImpl
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.SensinactPackageImpl#getStateVariable()
+ * @generated
+ */
+ EClass STATE_VARIABLE = eINSTANCE.getStateVariable();
+
+ /**
+ * The meta object literal for the '<em><b>Modifier</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference STATE_VARIABLE__MODIFIER = eINSTANCE.getStateVariable_Modifier();
+
+ /**
+ * The meta object literal for the '<em><b>Base Property</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference STATE_VARIABLE__BASE_PROPERTY = eINSTANCE.getStateVariable_Base_Property();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.iotml.sensinact.impl.ActionImpl <em>Action</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.ActionImpl
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.SensinactPackageImpl#getAction()
+ * @generated
+ */
+ EClass ACTION = eINSTANCE.getAction();
+
+ /**
+ * The meta object literal for the '<em><b>State</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference ACTION__STATE = eINSTANCE.getAction_State();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.iotml.sensinact.AccessMethodType <em>Access Method Type</em>}' enum.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.iotml.sensinact.AccessMethodType
+ * @see org.eclipse.papyrus.iotml.sensinact.impl.SensinactPackageImpl#getAccessMethodType()
+ * @generated
+ */
+ EEnum ACCESS_METHOD_TYPE = eINSTANCE.getAccessMethodType();
+
+ }
+
+} //SensinactPackage
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/SensorData.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/SensorData.java
new file mode 100644
index 0000000..ac29d9e
--- /dev/null
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/SensorData.java
@@ -0,0 +1,61 @@
+/**
+ * Copyright (c) 2018 CEA
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
+ * Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ *
+ */
+package org.eclipse.papyrus.iotml.sensinact;
+
+import org.eclipse.uml2.uml.Property;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Sensor Data</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.iotml.sensinact.SensorData#getBase_Property <em>Base Property</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.iotml.sensinact.SensinactPackage#getSensorData()
+ * @model
+ * @generated
+ */
+public interface SensorData extends Resource {
+ /**
+ * Returns the value of the '<em><b>Base Property</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Property</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Property</em>' reference.
+ * @see #setBase_Property(Property)
+ * @see org.eclipse.papyrus.iotml.sensinact.SensinactPackage#getSensorData_Base_Property()
+ * @model required="true" ordered="false"
+ * @generated
+ */
+ Property getBase_Property();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.iotml.sensinact.SensorData#getBase_Property <em>Base Property</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Property</em>' reference.
+ * @see #getBase_Property()
+ * @generated
+ */
+ void setBase_Property(Property value);
+
+} // SensorData
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Service.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Service.java
new file mode 100644
index 0000000..246d080
--- /dev/null
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Service.java
@@ -0,0 +1,78 @@
+/**
+ * Copyright (c) 2018 CEA
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
+ * Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ *
+ */
+package org.eclipse.papyrus.iotml.sensinact;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Service</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.iotml.sensinact.Service#getFriendlyName <em>Friendly Name</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.sensinact.Service#getResources <em>Resources</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.iotml.sensinact.SensinactPackage#getService()
+ * @model
+ * @generated
+ */
+public interface Service extends org.eclipse.papyrus.iotml.software.artefact.Service {
+ /**
+ * Returns the value of the '<em><b>Friendly Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Friendly Name</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Friendly Name</em>' attribute.
+ * @see #setFriendlyName(String)
+ * @see org.eclipse.papyrus.iotml.sensinact.SensinactPackage#getService_FriendlyName()
+ * @model dataType="org.eclipse.uml2.types.String" required="true" ordered="false"
+ * @generated
+ */
+ String getFriendlyName();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.iotml.sensinact.Service#getFriendlyName <em>Friendly Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Friendly Name</em>' attribute.
+ * @see #getFriendlyName()
+ * @generated
+ */
+ void setFriendlyName(String value);
+
+ /**
+ * Returns the value of the '<em><b>Resources</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.iotml.sensinact.Resource}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Resources</em>' reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Resources</em>' reference list.
+ * @see org.eclipse.papyrus.iotml.sensinact.SensinactPackage#getService_Resources()
+ * @model required="true" ordered="false"
+ * @generated
+ */
+ EList<Resource> getResources();
+
+} // Service
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/StateVariable.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/StateVariable.java
new file mode 100644
index 0000000..f609c2c
--- /dev/null
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/StateVariable.java
@@ -0,0 +1,90 @@
+/**
+ * Copyright (c) 2018 CEA
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
+ * Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ *
+ */
+package org.eclipse.papyrus.iotml.sensinact;
+
+import org.eclipse.uml2.uml.Property;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>State Variable</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.iotml.sensinact.StateVariable#getModifier <em>Modifier</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.sensinact.StateVariable#getBase_Property <em>Base Property</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.iotml.sensinact.SensinactPackage#getStateVariable()
+ * @model
+ * @generated
+ */
+public interface StateVariable extends Resource {
+ /**
+ * Returns the value of the '<em><b>Modifier</b></em>' reference.
+ * It is bidirectional and its opposite is '{@link org.eclipse.papyrus.iotml.sensinact.Action#getState <em>State</em>}'.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Modifier</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Modifier</em>' reference.
+ * @see #setModifier(Action)
+ * @see org.eclipse.papyrus.iotml.sensinact.SensinactPackage#getStateVariable_Modifier()
+ * @see org.eclipse.papyrus.iotml.sensinact.Action#getState
+ * @model opposite="state" required="true" transient="true" volatile="true" derived="true" ordered="false"
+ * @generated
+ */
+ Action getModifier();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.iotml.sensinact.StateVariable#getModifier <em>Modifier</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Modifier</em>' reference.
+ * @see #getModifier()
+ * @generated
+ */
+ void setModifier(Action value);
+
+ /**
+ * Returns the value of the '<em><b>Base Property</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Property</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Property</em>' reference.
+ * @see #setBase_Property(Property)
+ * @see org.eclipse.papyrus.iotml.sensinact.SensinactPackage#getStateVariable_Base_Property()
+ * @model required="true" ordered="false"
+ * @generated
+ */
+ Property getBase_Property();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.iotml.sensinact.StateVariable#getBase_Property <em>Base Property</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Property</em>' reference.
+ * @see #getBase_Property()
+ * @generated
+ */
+ void setBase_Property(Property value);
+
+} // StateVariable
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Studio.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Studio.java
new file mode 100644
index 0000000..a99d2c8
--- /dev/null
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Studio.java
@@ -0,0 +1,53 @@
+/**
+ * Copyright (c) 2018 CEA
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
+ * Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ *
+ */
+package org.eclipse.papyrus.iotml.sensinact;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.papyrus.iotml.animate.HumanUser;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Studio</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.iotml.sensinact.Studio#getGateways <em>Gateways</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.iotml.sensinact.SensinactPackage#getStudio()
+ * @model
+ * @generated
+ */
+public interface Studio extends HumanUser {
+ /**
+ * Returns the value of the '<em><b>Gateways</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.iotml.sensinact.Gateway}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Gateways</em>' reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Gateways</em>' reference list.
+ * @see org.eclipse.papyrus.iotml.sensinact.SensinactPackage#getStudio_Gateways()
+ * @model required="true" ordered="false"
+ * @generated
+ */
+ EList<Gateway> getGateways();
+
+} // Studio
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/TypedElement.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/TypedElement.java
new file mode 100644
index 0000000..bf6ce26
--- /dev/null
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/TypedElement.java
@@ -0,0 +1,90 @@
+/**
+ * Copyright (c) 2018 CEA
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
+ * Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ *
+ */
+package org.eclipse.papyrus.iotml.sensinact;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.papyrus.iotml.software.core.structure.DetailedValueSpecification;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Typed Element</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.iotml.sensinact.TypedElement#getValue <em>Value</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.sensinact.TypedElement#getBase_TypedElement <em>Base Typed Element</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.iotml.sensinact.SensinactPackage#getTypedElement()
+ * @model abstract="true"
+ * @generated
+ */
+public interface TypedElement extends EObject {
+ /**
+ * Returns the value of the '<em><b>Value</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Value</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Value</em>' reference.
+ * @see #setValue(DetailedValueSpecification)
+ * @see org.eclipse.papyrus.iotml.sensinact.SensinactPackage#getTypedElement_Value()
+ * @model ordered="false"
+ * @generated
+ */
+ DetailedValueSpecification getValue();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.iotml.sensinact.TypedElement#getValue <em>Value</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Value</em>' reference.
+ * @see #getValue()
+ * @generated
+ */
+ void setValue(DetailedValueSpecification value);
+
+ /**
+ * Returns the value of the '<em><b>Base Typed Element</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Typed Element</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Typed Element</em>' reference.
+ * @see #setBase_TypedElement(org.eclipse.uml2.uml.TypedElement)
+ * @see org.eclipse.papyrus.iotml.sensinact.SensinactPackage#getTypedElement_Base_TypedElement()
+ * @model required="true" ordered="false"
+ * @generated
+ */
+ org.eclipse.uml2.uml.TypedElement getBase_TypedElement();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.iotml.sensinact.TypedElement#getBase_TypedElement <em>Base Typed Element</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Typed Element</em>' reference.
+ * @see #getBase_TypedElement()
+ * @generated
+ */
+ void setBase_TypedElement(org.eclipse.uml2.uml.TypedElement value);
+
+} // TypedElement
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/AccessMethodImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/AccessMethodImpl.java
new file mode 100644
index 0000000..3b4a52d
--- /dev/null
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/AccessMethodImpl.java
@@ -0,0 +1,280 @@
+/**
+ * Copyright (c) 2018 CEA
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
+ * Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ *
+ */
+package org.eclipse.papyrus.iotml.sensinact.impl;
+
+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;
+
+import org.eclipse.papyrus.iotml.sensinact.AccessMethod;
+import org.eclipse.papyrus.iotml.sensinact.AccessMethodType;
+import org.eclipse.papyrus.iotml.sensinact.Parameter;
+import org.eclipse.papyrus.iotml.sensinact.SensinactPackage;
+
+import org.eclipse.uml2.uml.Operation;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Access Method</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.iotml.sensinact.impl.AccessMethodImpl#getType <em>Type</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.sensinact.impl.AccessMethodImpl#getParameters <em>Parameters</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.sensinact.impl.AccessMethodImpl#getBase_Operation <em>Base Operation</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class AccessMethodImpl extends MinimalEObjectImpl.Container implements AccessMethod {
+ /**
+ * The default value of the '{@link #getType() <em>Type</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getType()
+ * @generated
+ * @ordered
+ */
+ protected static final AccessMethodType TYPE_EDEFAULT = AccessMethodType.GET;
+
+ /**
+ * The cached value of the '{@link #getType() <em>Type</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getType()
+ * @generated
+ * @ordered
+ */
+ protected AccessMethodType type = TYPE_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getParameters() <em>Parameters</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getParameters()
+ * @generated
+ * @ordered
+ */
+ protected EList<Parameter> parameters;
+
+ /**
+ * The cached value of the '{@link #getBase_Operation() <em>Base Operation</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_Operation()
+ * @generated
+ * @ordered
+ */
+ protected Operation base_Operation;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected AccessMethodImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return SensinactPackage.Literals.ACCESS_METHOD;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public AccessMethodType getType() {
+ return type;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setType(AccessMethodType newType) {
+ AccessMethodType oldType = type;
+ type = newType == null ? TYPE_EDEFAULT : newType;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, SensinactPackage.ACCESS_METHOD__TYPE, oldType, type));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Parameter> getParameters() {
+ if (parameters == null) {
+ parameters = new EObjectResolvingEList<Parameter>(Parameter.class, this, SensinactPackage.ACCESS_METHOD__PARAMETERS);
+ }
+ return parameters;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Operation getBase_Operation() {
+ if (base_Operation != null && base_Operation.eIsProxy()) {
+ InternalEObject oldBase_Operation = (InternalEObject)base_Operation;
+ base_Operation = (Operation)eResolveProxy(oldBase_Operation);
+ if (base_Operation != oldBase_Operation) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, SensinactPackage.ACCESS_METHOD__BASE_OPERATION, oldBase_Operation, base_Operation));
+ }
+ }
+ return base_Operation;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Operation basicGetBase_Operation() {
+ return base_Operation;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_Operation(Operation newBase_Operation) {
+ Operation oldBase_Operation = base_Operation;
+ base_Operation = newBase_Operation;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, SensinactPackage.ACCESS_METHOD__BASE_OPERATION, oldBase_Operation, base_Operation));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case SensinactPackage.ACCESS_METHOD__TYPE:
+ return getType();
+ case SensinactPackage.ACCESS_METHOD__PARAMETERS:
+ return getParameters();
+ case SensinactPackage.ACCESS_METHOD__BASE_OPERATION:
+ if (resolve) return getBase_Operation();
+ return basicGetBase_Operation();
+ }
+ 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 SensinactPackage.ACCESS_METHOD__TYPE:
+ setType((AccessMethodType)newValue);
+ return;
+ case SensinactPackage.ACCESS_METHOD__PARAMETERS:
+ getParameters().clear();
+ getParameters().addAll((Collection<? extends Parameter>)newValue);
+ return;
+ case SensinactPackage.ACCESS_METHOD__BASE_OPERATION:
+ setBase_Operation((Operation)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case SensinactPackage.ACCESS_METHOD__TYPE:
+ setType(TYPE_EDEFAULT);
+ return;
+ case SensinactPackage.ACCESS_METHOD__PARAMETERS:
+ getParameters().clear();
+ return;
+ case SensinactPackage.ACCESS_METHOD__BASE_OPERATION:
+ setBase_Operation((Operation)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case SensinactPackage.ACCESS_METHOD__TYPE:
+ return type != TYPE_EDEFAULT;
+ case SensinactPackage.ACCESS_METHOD__PARAMETERS:
+ return parameters != null && !parameters.isEmpty();
+ case SensinactPackage.ACCESS_METHOD__BASE_OPERATION:
+ return base_Operation != 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(" (type: ");
+ result.append(type);
+ result.append(')');
+ return result.toString();
+ }
+
+} //AccessMethodImpl
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/ActionImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/ActionImpl.java
new file mode 100644
index 0000000..5b3f12b
--- /dev/null
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/ActionImpl.java
@@ -0,0 +1,399 @@
+/**
+ * Copyright (c) 2018 CEA
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
+ * Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ *
+ */
+package org.eclipse.papyrus.iotml.sensinact.impl;
+
+import java.util.Map;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.BasicDiagnostic;
+import org.eclipse.emf.common.util.Diagnostic;
+import org.eclipse.emf.common.util.DiagnosticChain;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+
+import org.eclipse.emf.ecore.util.EObjectValidator;
+
+import org.eclipse.papyrus.iotml.sensinact.Action;
+import org.eclipse.papyrus.iotml.sensinact.SensinactPackage;
+import org.eclipse.papyrus.iotml.sensinact.StateVariable;
+
+import org.eclipse.papyrus.iotml.software.artefact.ArtefactPackage;
+import org.eclipse.papyrus.iotml.software.artefact.PropertyAccess;
+
+import org.eclipse.papyrus.iotml.software.artefact.util.ArtefactValidator;
+
+import org.eclipse.uml2.uml.Association;
+import org.eclipse.uml2.uml.Property;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Action</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.iotml.sensinact.impl.ActionImpl#getBase_Association <em>Base Association</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.sensinact.impl.ActionImpl#getAccessedProperty <em>Accessed Property</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.sensinact.impl.ActionImpl#getState <em>State</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class ActionImpl extends ResourceImpl implements Action {
+ /**
+ * The cached value of the '{@link #getBase_Association() <em>Base Association</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_Association()
+ * @generated
+ * @ordered
+ */
+ protected Association base_Association;
+
+ /**
+ * The cached value of the '{@link #getAccessedProperty() <em>Accessed Property</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getAccessedProperty()
+ * @generated
+ * @ordered
+ */
+ protected Property accessedProperty;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ActionImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return SensinactPackage.Literals.ACTION;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Association getBase_Association() {
+ if (base_Association != null && base_Association.eIsProxy()) {
+ InternalEObject oldBase_Association = (InternalEObject)base_Association;
+ base_Association = (Association)eResolveProxy(oldBase_Association);
+ if (base_Association != oldBase_Association) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, SensinactPackage.ACTION__BASE_ASSOCIATION, oldBase_Association, base_Association));
+ }
+ }
+ return base_Association;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Association basicGetBase_Association() {
+ return base_Association;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_Association(Association newBase_Association) {
+ Association oldBase_Association = base_Association;
+ base_Association = newBase_Association;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, SensinactPackage.ACTION__BASE_ASSOCIATION, oldBase_Association, base_Association));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Property getAccessedProperty() {
+ if (accessedProperty != null && accessedProperty.eIsProxy()) {
+ InternalEObject oldAccessedProperty = (InternalEObject)accessedProperty;
+ accessedProperty = (Property)eResolveProxy(oldAccessedProperty);
+ if (accessedProperty != oldAccessedProperty) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, SensinactPackage.ACTION__ACCESSED_PROPERTY, oldAccessedProperty, accessedProperty));
+ }
+ }
+ return accessedProperty;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Property basicGetAccessedProperty() {
+ return accessedProperty;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setAccessedProperty(Property newAccessedProperty) {
+ Property oldAccessedProperty = accessedProperty;
+ accessedProperty = newAccessedProperty;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, SensinactPackage.ACTION__ACCESSED_PROPERTY, oldAccessedProperty, accessedProperty));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public StateVariable getState() {
+ StateVariable state = basicGetState();
+ return state != null && state.eIsProxy() ? (StateVariable)eResolveProxy((InternalEObject)state) : state;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public StateVariable basicGetState() {
+ // TODO: implement this method to return the 'State' reference
+ // -> do not perform proxy resolution
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setState(StateVariable newState) {
+ // TODO: implement this method to set the 'State' reference
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean PropertyAccess_C1(DiagnosticChain diagnostics, Map<Object, Object> context) {
+ // TODO: implement this method
+ // -> specify the condition that violates the invariant
+ // -> verify the details of the diagnostic, including severity and message
+ // Ensure that you remove @generated or mark it @generated NOT
+ if (false) {
+ if (diagnostics != null) {
+ diagnostics.add
+ (new BasicDiagnostic
+ (Diagnostic.ERROR,
+ ArtefactValidator.DIAGNOSTIC_SOURCE,
+ ArtefactValidator.PROPERTY_ACCESS__PROPERTY_ACCESS_C1,
+ EcorePlugin.INSTANCE.getString("_UI_GenericInvariant_diagnostic", new Object[] { "PropertyAccess_C1", EObjectValidator.getObjectLabel(this, context) }),
+ new Object [] { this }));
+ }
+ return false;
+ }
+ return true;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean PropertyAccess_C2(DiagnosticChain diagnostics, Map<Object, Object> context) {
+ // TODO: implement this method
+ // -> specify the condition that violates the invariant
+ // -> verify the details of the diagnostic, including severity and message
+ // Ensure that you remove @generated or mark it @generated NOT
+ if (false) {
+ if (diagnostics != null) {
+ diagnostics.add
+ (new BasicDiagnostic
+ (Diagnostic.ERROR,
+ ArtefactValidator.DIAGNOSTIC_SOURCE,
+ ArtefactValidator.PROPERTY_ACCESS__PROPERTY_ACCESS_C2,
+ EcorePlugin.INSTANCE.getString("_UI_GenericInvariant_diagnostic", new Object[] { "PropertyAccess_C2", EObjectValidator.getObjectLabel(this, context) }),
+ new Object [] { this }));
+ }
+ return false;
+ }
+ return true;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean propertyAccess_C3(DiagnosticChain diagnostics, Map<Object, Object> context) {
+ // TODO: implement this method
+ // -> specify the condition that violates the invariant
+ // -> verify the details of the diagnostic, including severity and message
+ // Ensure that you remove @generated or mark it @generated NOT
+ if (false) {
+ if (diagnostics != null) {
+ diagnostics.add
+ (new BasicDiagnostic
+ (Diagnostic.ERROR,
+ ArtefactValidator.DIAGNOSTIC_SOURCE,
+ ArtefactValidator.PROPERTY_ACCESS__PROPERTY_ACCESS_C3,
+ EcorePlugin.INSTANCE.getString("_UI_GenericInvariant_diagnostic", new Object[] { "propertyAccess_C3", EObjectValidator.getObjectLabel(this, context) }),
+ new Object [] { this }));
+ }
+ return false;
+ }
+ return true;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case SensinactPackage.ACTION__BASE_ASSOCIATION:
+ if (resolve) return getBase_Association();
+ return basicGetBase_Association();
+ case SensinactPackage.ACTION__ACCESSED_PROPERTY:
+ if (resolve) return getAccessedProperty();
+ return basicGetAccessedProperty();
+ case SensinactPackage.ACTION__STATE:
+ if (resolve) return getState();
+ return basicGetState();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case SensinactPackage.ACTION__BASE_ASSOCIATION:
+ setBase_Association((Association)newValue);
+ return;
+ case SensinactPackage.ACTION__ACCESSED_PROPERTY:
+ setAccessedProperty((Property)newValue);
+ return;
+ case SensinactPackage.ACTION__STATE:
+ setState((StateVariable)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case SensinactPackage.ACTION__BASE_ASSOCIATION:
+ setBase_Association((Association)null);
+ return;
+ case SensinactPackage.ACTION__ACCESSED_PROPERTY:
+ setAccessedProperty((Property)null);
+ return;
+ case SensinactPackage.ACTION__STATE:
+ setState((StateVariable)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case SensinactPackage.ACTION__BASE_ASSOCIATION:
+ return base_Association != null;
+ case SensinactPackage.ACTION__ACCESSED_PROPERTY:
+ return accessedProperty != null;
+ case SensinactPackage.ACTION__STATE:
+ return basicGetState() != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+ if (baseClass == PropertyAccess.class) {
+ switch (derivedFeatureID) {
+ case SensinactPackage.ACTION__BASE_ASSOCIATION: return ArtefactPackage.PROPERTY_ACCESS__BASE_ASSOCIATION;
+ case SensinactPackage.ACTION__ACCESSED_PROPERTY: return ArtefactPackage.PROPERTY_ACCESS__ACCESSED_PROPERTY;
+ default: return -1;
+ }
+ }
+ return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+ if (baseClass == PropertyAccess.class) {
+ switch (baseFeatureID) {
+ case ArtefactPackage.PROPERTY_ACCESS__BASE_ASSOCIATION: return SensinactPackage.ACTION__BASE_ASSOCIATION;
+ case ArtefactPackage.PROPERTY_ACCESS__ACCESSED_PROPERTY: return SensinactPackage.ACTION__ACCESSED_PROPERTY;
+ default: return -1;
+ }
+ }
+ return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+ }
+
+} //ActionImpl
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/AttributeImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/AttributeImpl.java
new file mode 100644
index 0000000..a53e5b8
--- /dev/null
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/AttributeImpl.java
@@ -0,0 +1,143 @@
+/**
+ * Copyright (c) 2018 CEA
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
+ * Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ *
+ */
+package org.eclipse.papyrus.iotml.sensinact.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+
+import org.eclipse.papyrus.iotml.sensinact.Attribute;
+import org.eclipse.papyrus.iotml.sensinact.Metadata;
+import org.eclipse.papyrus.iotml.sensinact.SensinactPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Attribute</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.iotml.sensinact.impl.AttributeImpl#getMetadata <em>Metadata</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class AttributeImpl extends TypedElementImpl implements Attribute {
+ /**
+ * The cached value of the '{@link #getMetadata() <em>Metadata</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getMetadata()
+ * @generated
+ * @ordered
+ */
+ protected EList<Metadata> metadata;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected AttributeImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return SensinactPackage.Literals.ATTRIBUTE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Metadata> getMetadata() {
+ if (metadata == null) {
+ metadata = new EObjectResolvingEList<Metadata>(Metadata.class, this, SensinactPackage.ATTRIBUTE__METADATA);
+ }
+ return metadata;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case SensinactPackage.ATTRIBUTE__METADATA:
+ return getMetadata();
+ }
+ 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 SensinactPackage.ATTRIBUTE__METADATA:
+ getMetadata().clear();
+ getMetadata().addAll((Collection<? extends Metadata>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case SensinactPackage.ATTRIBUTE__METADATA:
+ getMetadata().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case SensinactPackage.ATTRIBUTE__METADATA:
+ return metadata != null && !metadata.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //AttributeImpl
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/DeviceImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/DeviceImpl.java
new file mode 100644
index 0000000..41f5818
--- /dev/null
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/DeviceImpl.java
@@ -0,0 +1,217 @@
+/**
+ * Copyright (c) 2018 CEA
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
+ * Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ *
+ */
+package org.eclipse.papyrus.iotml.sensinact.impl;
+
+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.util.EObjectResolvingEList;
+
+import org.eclipse.papyrus.iotml.hardware.network.impl.ConnectedDeviceImpl;
+
+import org.eclipse.papyrus.iotml.sensinact.Device;
+import org.eclipse.papyrus.iotml.sensinact.SensinactPackage;
+import org.eclipse.papyrus.iotml.sensinact.Service;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Device</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.iotml.sensinact.impl.DeviceImpl#getFriendlyName <em>Friendly Name</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.sensinact.impl.DeviceImpl#getServices <em>Services</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class DeviceImpl extends ConnectedDeviceImpl implements Device {
+ /**
+ * The default value of the '{@link #getFriendlyName() <em>Friendly Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getFriendlyName()
+ * @generated
+ * @ordered
+ */
+ protected static final String FRIENDLY_NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getFriendlyName() <em>Friendly Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getFriendlyName()
+ * @generated
+ * @ordered
+ */
+ protected String friendlyName = FRIENDLY_NAME_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getServices() <em>Services</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getServices()
+ * @generated
+ * @ordered
+ */
+ protected EList<Service> services;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected DeviceImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return SensinactPackage.Literals.DEVICE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getFriendlyName() {
+ return friendlyName;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setFriendlyName(String newFriendlyName) {
+ String oldFriendlyName = friendlyName;
+ friendlyName = newFriendlyName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, SensinactPackage.DEVICE__FRIENDLY_NAME, oldFriendlyName, friendlyName));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Service> getServices() {
+ if (services == null) {
+ services = new EObjectResolvingEList<Service>(Service.class, this, SensinactPackage.DEVICE__SERVICES);
+ }
+ return services;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case SensinactPackage.DEVICE__FRIENDLY_NAME:
+ return getFriendlyName();
+ case SensinactPackage.DEVICE__SERVICES:
+ return getServices();
+ }
+ 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 SensinactPackage.DEVICE__FRIENDLY_NAME:
+ setFriendlyName((String)newValue);
+ return;
+ case SensinactPackage.DEVICE__SERVICES:
+ getServices().clear();
+ getServices().addAll((Collection<? extends Service>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case SensinactPackage.DEVICE__FRIENDLY_NAME:
+ setFriendlyName(FRIENDLY_NAME_EDEFAULT);
+ return;
+ case SensinactPackage.DEVICE__SERVICES:
+ getServices().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case SensinactPackage.DEVICE__FRIENDLY_NAME:
+ return FRIENDLY_NAME_EDEFAULT == null ? friendlyName != null : !FRIENDLY_NAME_EDEFAULT.equals(friendlyName);
+ case SensinactPackage.DEVICE__SERVICES:
+ return services != null && !services.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(" (friendlyName: ");
+ result.append(friendlyName);
+ result.append(')');
+ return result.toString();
+ }
+
+} //DeviceImpl
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/GatewayImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/GatewayImpl.java
new file mode 100644
index 0000000..f3cca49
--- /dev/null
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/GatewayImpl.java
@@ -0,0 +1,143 @@
+/**
+ * Copyright (c) 2018 CEA
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
+ * Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ *
+ */
+package org.eclipse.papyrus.iotml.sensinact.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+
+import org.eclipse.papyrus.iotml.sensinact.Device;
+import org.eclipse.papyrus.iotml.sensinact.Gateway;
+import org.eclipse.papyrus.iotml.sensinact.SensinactPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Gateway</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.iotml.sensinact.impl.GatewayImpl#getDevices <em>Devices</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class GatewayImpl extends org.eclipse.papyrus.iotml.hardware.network.impl.GatewayImpl implements Gateway {
+ /**
+ * The cached value of the '{@link #getDevices() <em>Devices</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDevices()
+ * @generated
+ * @ordered
+ */
+ protected EList<Device> devices;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected GatewayImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return SensinactPackage.Literals.GATEWAY;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Device> getDevices() {
+ if (devices == null) {
+ devices = new EObjectResolvingEList<Device>(Device.class, this, SensinactPackage.GATEWAY__DEVICES);
+ }
+ return devices;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case SensinactPackage.GATEWAY__DEVICES:
+ return getDevices();
+ }
+ 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 SensinactPackage.GATEWAY__DEVICES:
+ getDevices().clear();
+ getDevices().addAll((Collection<? extends Device>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case SensinactPackage.GATEWAY__DEVICES:
+ getDevices().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case SensinactPackage.GATEWAY__DEVICES:
+ return devices != null && !devices.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //GatewayImpl
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/MetadataImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/MetadataImpl.java
new file mode 100644
index 0000000..edc709b
--- /dev/null
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/MetadataImpl.java
@@ -0,0 +1,48 @@
+/**
+ * Copyright (c) 2018 CEA
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
+ * Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ *
+ */
+package org.eclipse.papyrus.iotml.sensinact.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.iotml.sensinact.Metadata;
+import org.eclipse.papyrus.iotml.sensinact.SensinactPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Metadata</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class MetadataImpl extends TypedElementImpl implements Metadata {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected MetadataImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return SensinactPackage.Literals.METADATA;
+ }
+
+} //MetadataImpl
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/ParameterImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/ParameterImpl.java
new file mode 100644
index 0000000..80c6590
--- /dev/null
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/ParameterImpl.java
@@ -0,0 +1,48 @@
+/**
+ * Copyright (c) 2018 CEA
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
+ * Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ *
+ */
+package org.eclipse.papyrus.iotml.sensinact.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.iotml.sensinact.Parameter;
+import org.eclipse.papyrus.iotml.sensinact.SensinactPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Parameter</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class ParameterImpl extends TypedElementImpl implements Parameter {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ParameterImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return SensinactPackage.Literals.PARAMETER;
+ }
+
+} //ParameterImpl
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/PropertyImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/PropertyImpl.java
new file mode 100644
index 0000000..010ce4f
--- /dev/null
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/PropertyImpl.java
@@ -0,0 +1,166 @@
+/**
+ * Copyright (c) 2018 CEA
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
+ * Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ *
+ */
+package org.eclipse.papyrus.iotml.sensinact.impl;
+
+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.papyrus.iotml.sensinact.Property;
+import org.eclipse.papyrus.iotml.sensinact.SensinactPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Property</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.iotml.sensinact.impl.PropertyImpl#getBase_Property <em>Base Property</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class PropertyImpl extends ResourceImpl implements Property {
+ /**
+ * The cached value of the '{@link #getBase_Property() <em>Base Property</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_Property()
+ * @generated
+ * @ordered
+ */
+ protected org.eclipse.uml2.uml.Property base_Property;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected PropertyImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return SensinactPackage.Literals.PROPERTY;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public org.eclipse.uml2.uml.Property getBase_Property() {
+ if (base_Property != null && base_Property.eIsProxy()) {
+ InternalEObject oldBase_Property = (InternalEObject)base_Property;
+ base_Property = (org.eclipse.uml2.uml.Property)eResolveProxy(oldBase_Property);
+ if (base_Property != oldBase_Property) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, SensinactPackage.PROPERTY__BASE_PROPERTY, oldBase_Property, base_Property));
+ }
+ }
+ return base_Property;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public org.eclipse.uml2.uml.Property basicGetBase_Property() {
+ return base_Property;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_Property(org.eclipse.uml2.uml.Property newBase_Property) {
+ org.eclipse.uml2.uml.Property oldBase_Property = base_Property;
+ base_Property = newBase_Property;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, SensinactPackage.PROPERTY__BASE_PROPERTY, oldBase_Property, base_Property));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case SensinactPackage.PROPERTY__BASE_PROPERTY:
+ if (resolve) return getBase_Property();
+ return basicGetBase_Property();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case SensinactPackage.PROPERTY__BASE_PROPERTY:
+ setBase_Property((org.eclipse.uml2.uml.Property)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case SensinactPackage.PROPERTY__BASE_PROPERTY:
+ setBase_Property((org.eclipse.uml2.uml.Property)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case SensinactPackage.PROPERTY__BASE_PROPERTY:
+ return base_Property != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //PropertyImpl
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/ResourceImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/ResourceImpl.java
new file mode 100644
index 0000000..5e083ce
--- /dev/null
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/ResourceImpl.java
@@ -0,0 +1,252 @@
+/**
+ * Copyright (c) 2018 CEA
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
+ * Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ *
+ */
+package org.eclipse.papyrus.iotml.sensinact.impl;
+
+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.util.EObjectResolvingEList;
+
+import org.eclipse.papyrus.iotml.sensinact.AccessMethod;
+import org.eclipse.papyrus.iotml.sensinact.Attribute;
+import org.eclipse.papyrus.iotml.sensinact.Resource;
+import org.eclipse.papyrus.iotml.sensinact.SensinactPackage;
+
+import org.eclipse.papyrus.iotml.software.resource.impl.OnDeviceResourceImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Resource</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.iotml.sensinact.impl.ResourceImpl#getFriendlyName <em>Friendly Name</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.sensinact.impl.ResourceImpl#getAccessMethods <em>Access Methods</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.sensinact.impl.ResourceImpl#getAttributes <em>Attributes</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class ResourceImpl extends OnDeviceResourceImpl implements Resource {
+ /**
+ * The default value of the '{@link #getFriendlyName() <em>Friendly Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getFriendlyName()
+ * @generated
+ * @ordered
+ */
+ protected static final String FRIENDLY_NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getFriendlyName() <em>Friendly Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getFriendlyName()
+ * @generated
+ * @ordered
+ */
+ protected String friendlyName = FRIENDLY_NAME_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getAccessMethods() <em>Access Methods</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getAccessMethods()
+ * @generated
+ * @ordered
+ */
+ protected EList<AccessMethod> accessMethods;
+
+ /**
+ * The cached value of the '{@link #getAttributes() <em>Attributes</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getAttributes()
+ * @generated
+ * @ordered
+ */
+ protected EList<Attribute> attributes;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ResourceImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return SensinactPackage.Literals.RESOURCE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getFriendlyName() {
+ return friendlyName;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setFriendlyName(String newFriendlyName) {
+ String oldFriendlyName = friendlyName;
+ friendlyName = newFriendlyName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, SensinactPackage.RESOURCE__FRIENDLY_NAME, oldFriendlyName, friendlyName));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<AccessMethod> getAccessMethods() {
+ if (accessMethods == null) {
+ accessMethods = new EObjectResolvingEList<AccessMethod>(AccessMethod.class, this, SensinactPackage.RESOURCE__ACCESS_METHODS);
+ }
+ return accessMethods;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Attribute> getAttributes() {
+ if (attributes == null) {
+ attributes = new EObjectResolvingEList<Attribute>(Attribute.class, this, SensinactPackage.RESOURCE__ATTRIBUTES);
+ }
+ return attributes;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case SensinactPackage.RESOURCE__FRIENDLY_NAME:
+ return getFriendlyName();
+ case SensinactPackage.RESOURCE__ACCESS_METHODS:
+ return getAccessMethods();
+ case SensinactPackage.RESOURCE__ATTRIBUTES:
+ return getAttributes();
+ }
+ 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 SensinactPackage.RESOURCE__FRIENDLY_NAME:
+ setFriendlyName((String)newValue);
+ return;
+ case SensinactPackage.RESOURCE__ACCESS_METHODS:
+ getAccessMethods().clear();
+ getAccessMethods().addAll((Collection<? extends AccessMethod>)newValue);
+ return;
+ case SensinactPackage.RESOURCE__ATTRIBUTES:
+ getAttributes().clear();
+ getAttributes().addAll((Collection<? extends Attribute>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case SensinactPackage.RESOURCE__FRIENDLY_NAME:
+ setFriendlyName(FRIENDLY_NAME_EDEFAULT);
+ return;
+ case SensinactPackage.RESOURCE__ACCESS_METHODS:
+ getAccessMethods().clear();
+ return;
+ case SensinactPackage.RESOURCE__ATTRIBUTES:
+ getAttributes().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case SensinactPackage.RESOURCE__FRIENDLY_NAME:
+ return FRIENDLY_NAME_EDEFAULT == null ? friendlyName != null : !FRIENDLY_NAME_EDEFAULT.equals(friendlyName);
+ case SensinactPackage.RESOURCE__ACCESS_METHODS:
+ return accessMethods != null && !accessMethods.isEmpty();
+ case SensinactPackage.RESOURCE__ATTRIBUTES:
+ return attributes != null && !attributes.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(" (friendlyName: ");
+ result.append(friendlyName);
+ result.append(')');
+ return result.toString();
+ }
+
+} //ResourceImpl
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/SensinactFactoryImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/SensinactFactoryImpl.java
new file mode 100644
index 0000000..e9d96e0
--- /dev/null
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/SensinactFactoryImpl.java
@@ -0,0 +1,289 @@
+/**
+ * Copyright (c) 2018 CEA
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
+ * Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ *
+ */
+package org.eclipse.papyrus.iotml.sensinact.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EDataType;
+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;
+
+import org.eclipse.papyrus.iotml.sensinact.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class SensinactFactoryImpl extends EFactoryImpl implements SensinactFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static SensinactFactory init() {
+ try {
+ SensinactFactory theSensinactFactory = (SensinactFactory)EPackage.Registry.INSTANCE.getEFactory(SensinactPackage.eNS_URI);
+ if (theSensinactFactory != null) {
+ return theSensinactFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new SensinactFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public SensinactFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case SensinactPackage.STUDIO: return createStudio();
+ case SensinactPackage.GATEWAY: return createGateway();
+ case SensinactPackage.DEVICE: return createDevice();
+ case SensinactPackage.SERVICE: return createService();
+ case SensinactPackage.RESOURCE: return createResource();
+ case SensinactPackage.ACCESS_METHOD: return createAccessMethod();
+ case SensinactPackage.PARAMETER: return createParameter();
+ case SensinactPackage.ATTRIBUTE: return createAttribute();
+ case SensinactPackage.METADATA: return createMetadata();
+ case SensinactPackage.PROPERTY: return createProperty();
+ case SensinactPackage.SENSOR_DATA: return createSensorData();
+ case SensinactPackage.STATE_VARIABLE: return createStateVariable();
+ case SensinactPackage.ACTION: return createAction();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object createFromString(EDataType eDataType, String initialValue) {
+ switch (eDataType.getClassifierID()) {
+ case SensinactPackage.ACCESS_METHOD_TYPE:
+ return createAccessMethodTypeFromString(eDataType, initialValue);
+ default:
+ throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String convertToString(EDataType eDataType, Object instanceValue) {
+ switch (eDataType.getClassifierID()) {
+ case SensinactPackage.ACCESS_METHOD_TYPE:
+ return convertAccessMethodTypeToString(eDataType, instanceValue);
+ default:
+ throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Studio createStudio() {
+ StudioImpl studio = new StudioImpl();
+ return studio;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Gateway createGateway() {
+ GatewayImpl gateway = new GatewayImpl();
+ return gateway;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Device createDevice() {
+ DeviceImpl device = new DeviceImpl();
+ return device;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Service createService() {
+ ServiceImpl service = new ServiceImpl();
+ return service;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Resource createResource() {
+ ResourceImpl resource = new ResourceImpl();
+ return resource;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public AccessMethod createAccessMethod() {
+ AccessMethodImpl accessMethod = new AccessMethodImpl();
+ return accessMethod;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Parameter createParameter() {
+ ParameterImpl parameter = new ParameterImpl();
+ return parameter;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Attribute createAttribute() {
+ AttributeImpl attribute = new AttributeImpl();
+ return attribute;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Metadata createMetadata() {
+ MetadataImpl metadata = new MetadataImpl();
+ return metadata;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Property createProperty() {
+ PropertyImpl property = new PropertyImpl();
+ return property;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public SensorData createSensorData() {
+ SensorDataImpl sensorData = new SensorDataImpl();
+ return sensorData;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public StateVariable createStateVariable() {
+ StateVariableImpl stateVariable = new StateVariableImpl();
+ return stateVariable;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Action createAction() {
+ ActionImpl action = new ActionImpl();
+ return action;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public AccessMethodType createAccessMethodTypeFromString(EDataType eDataType, String initialValue) {
+ AccessMethodType result = AccessMethodType.get(initialValue);
+ if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'");
+ return result;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String convertAccessMethodTypeToString(EDataType eDataType, Object instanceValue) {
+ return instanceValue == null ? null : instanceValue.toString();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public SensinactPackage getSensinactPackage() {
+ return (SensinactPackage)getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static SensinactPackage getPackage() {
+ return SensinactPackage.eINSTANCE;
+ }
+
+} //SensinactFactoryImpl
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/SensinactPackageImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/SensinactPackageImpl.java
new file mode 100644
index 0000000..92f8236
--- /dev/null
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/SensinactPackageImpl.java
@@ -0,0 +1,891 @@
+/**
+ * Copyright (c) 2018 CEA
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
+ * Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ *
+ */
+package org.eclipse.papyrus.iotml.sensinact.impl;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EEnum;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.EcorePackage;
+
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+
+import org.eclipse.papyrus.MARTE.MARTEPackage;
+
+import org.eclipse.papyrus.MARTE_Library.BasicNFP_Types.BasicNFP_TypesPackage;
+
+import org.eclipse.papyrus.MARTE_Library.GRM_BasicTypes.GRM_BasicTypesPackage;
+
+import org.eclipse.papyrus.MARTE_Library.MARTE_DataTypes.MARTE_DataTypesPackage;
+
+import org.eclipse.papyrus.MARTE_Library.MARTE_PrimitivesTypes.MARTE_PrimitivesTypesPackage;
+
+import org.eclipse.papyrus.MARTE_Library.MeasurementUnits.MeasurementUnitsPackage;
+
+import org.eclipse.papyrus.MARTE_Library.RS_Library.RS_LibraryPackage;
+
+import org.eclipse.papyrus.MARTE_Library.TimeLibrary.TimeLibraryPackage;
+
+import org.eclipse.papyrus.MARTE_Library.TimeTypesLibrary.TimeTypesLibraryPackage;
+
+import org.eclipse.papyrus.iotml.animate.AnimatePackage;
+
+import org.eclipse.papyrus.iotml.animate.impl.AnimatePackageImpl;
+
+import org.eclipse.papyrus.iotml.hardware.actuator.ActuatorPackage;
+
+import org.eclipse.papyrus.iotml.hardware.actuator.impl.ActuatorPackageImpl;
+
+import org.eclipse.papyrus.iotml.hardware.core.CorePackage;
+
+import org.eclipse.papyrus.iotml.hardware.core.impl.CorePackageImpl;
+
+import org.eclipse.papyrus.iotml.hardware.network.NetworkPackage;
+
+import org.eclipse.papyrus.iotml.hardware.network.impl.NetworkPackageImpl;
+
+import org.eclipse.papyrus.iotml.hardware.sensor.SensorPackage;
+
+import org.eclipse.papyrus.iotml.hardware.sensor.impl.SensorPackageImpl;
+
+import org.eclipse.papyrus.iotml.hybrid.HybridPackage;
+
+import org.eclipse.papyrus.iotml.hybrid.impl.HybridPackageImpl;
+
+import org.eclipse.papyrus.iotml.s3pml.hardware.HardwarePackage;
+
+import org.eclipse.papyrus.iotml.s3pml.hardware.impl.HardwarePackageImpl;
+
+import org.eclipse.papyrus.iotml.s3pml.hardware.store.StorePackage;
+
+import org.eclipse.papyrus.iotml.s3pml.hardware.store.impl.StorePackageImpl;
+
+import org.eclipse.papyrus.iotml.s3pml.protocol.ProtocolPackage;
+
+import org.eclipse.papyrus.iotml.s3pml.protocol.impl.ProtocolPackageImpl;
+
+import org.eclipse.papyrus.iotml.s3pml.software.SoftwarePackage;
+
+import org.eclipse.papyrus.iotml.s3pml.software.impl.SoftwarePackageImpl;
+
+import org.eclipse.papyrus.iotml.sensinact.AccessMethod;
+import org.eclipse.papyrus.iotml.sensinact.AccessMethodType;
+import org.eclipse.papyrus.iotml.sensinact.Action;
+import org.eclipse.papyrus.iotml.sensinact.Attribute;
+import org.eclipse.papyrus.iotml.sensinact.Device;
+import org.eclipse.papyrus.iotml.sensinact.Gateway;
+import org.eclipse.papyrus.iotml.sensinact.Metadata;
+import org.eclipse.papyrus.iotml.sensinact.Parameter;
+import org.eclipse.papyrus.iotml.sensinact.Property;
+import org.eclipse.papyrus.iotml.sensinact.Resource;
+import org.eclipse.papyrus.iotml.sensinact.SensinactFactory;
+import org.eclipse.papyrus.iotml.sensinact.SensinactPackage;
+import org.eclipse.papyrus.iotml.sensinact.SensorData;
+import org.eclipse.papyrus.iotml.sensinact.Service;
+import org.eclipse.papyrus.iotml.sensinact.StateVariable;
+import org.eclipse.papyrus.iotml.sensinact.Studio;
+import org.eclipse.papyrus.iotml.sensinact.TypedElement;
+
+import org.eclipse.papyrus.iotml.software.artefact.ArtefactPackage;
+
+import org.eclipse.papyrus.iotml.software.artefact.impl.ArtefactPackageImpl;
+
+import org.eclipse.papyrus.iotml.software.core.structure.StructurePackage;
+
+import org.eclipse.papyrus.iotml.software.core.structure.impl.StructurePackageImpl;
+
+import org.eclipse.papyrus.iotml.software.resource.ResourcePackage;
+
+import org.eclipse.papyrus.iotml.software.resource.impl.ResourcePackageImpl;
+
+import org.eclipse.papyrus.sysml14.sysmlPackage;
+
+import org.eclipse.uml2.types.TypesPackage;
+
+import org.eclipse.uml2.uml.UMLPackage;
+
+import org.eclipse.uml2.uml.profile.standard.StandardPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class SensinactPackageImpl extends EPackageImpl implements SensinactPackage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass typedElementEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass studioEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass gatewayEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass deviceEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass serviceEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass resourceEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass accessMethodEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass parameterEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass attributeEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass metadataEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass propertyEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass sensorDataEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass stateVariableEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass actionEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EEnum accessMethodTypeEEnum = 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 org.eclipse.papyrus.iotml.sensinact.SensinactPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private SensinactPackageImpl() {
+ super(eNS_URI, SensinactFactory.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 SensinactPackage#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 SensinactPackage init() {
+ if (isInited) return (SensinactPackage)EPackage.Registry.INSTANCE.getEPackage(SensinactPackage.eNS_URI);
+
+ // Obtain or create and register package
+ Object registeredSensinactPackage = EPackage.Registry.INSTANCE.get(eNS_URI);
+ SensinactPackageImpl theSensinactPackage = registeredSensinactPackage instanceof SensinactPackageImpl ? (SensinactPackageImpl)registeredSensinactPackage : new SensinactPackageImpl();
+
+ isInited = true;
+
+ // Initialize simple dependencies
+ EcorePackage.eINSTANCE.eClass();
+ MARTEPackage.eINSTANCE.eClass();
+ MARTE_PrimitivesTypesPackage.eINSTANCE.eClass();
+ MeasurementUnitsPackage.eINSTANCE.eClass();
+ GRM_BasicTypesPackage.eINSTANCE.eClass();
+ BasicNFP_TypesPackage.eINSTANCE.eClass();
+ MARTE_DataTypesPackage.eINSTANCE.eClass();
+ TimeTypesLibraryPackage.eINSTANCE.eClass();
+ TimeLibraryPackage.eINSTANCE.eClass();
+ RS_LibraryPackage.eINSTANCE.eClass();
+ sysmlPackage.eINSTANCE.eClass();
+ TypesPackage.eINSTANCE.eClass();
+ UMLPackage.eINSTANCE.eClass();
+ StandardPackage.eINSTANCE.eClass();
+
+ // Obtain or create and register interdependencies
+ Object registeredPackage = EPackage.Registry.INSTANCE.getEPackage(AnimatePackage.eNS_URI);
+ AnimatePackageImpl theAnimatePackage = (AnimatePackageImpl)(registeredPackage instanceof AnimatePackageImpl ? registeredPackage : AnimatePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ActuatorPackage.eNS_URI);
+ ActuatorPackageImpl theActuatorPackage = (ActuatorPackageImpl)(registeredPackage instanceof ActuatorPackageImpl ? registeredPackage : ActuatorPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(SensorPackage.eNS_URI);
+ SensorPackageImpl theSensorPackage = (SensorPackageImpl)(registeredPackage instanceof SensorPackageImpl ? registeredPackage : SensorPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(NetworkPackage.eNS_URI);
+ NetworkPackageImpl theNetworkPackage = (NetworkPackageImpl)(registeredPackage instanceof NetworkPackageImpl ? registeredPackage : NetworkPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(CorePackage.eNS_URI);
+ CorePackageImpl theCorePackage = (CorePackageImpl)(registeredPackage instanceof CorePackageImpl ? registeredPackage : CorePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(SoftwarePackage.eNS_URI);
+ SoftwarePackageImpl theSoftwarePackage = (SoftwarePackageImpl)(registeredPackage instanceof SoftwarePackageImpl ? registeredPackage : SoftwarePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ProtocolPackage.eNS_URI);
+ ProtocolPackageImpl theProtocolPackage = (ProtocolPackageImpl)(registeredPackage instanceof ProtocolPackageImpl ? registeredPackage : ProtocolPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(HardwarePackage.eNS_URI);
+ HardwarePackageImpl theHardwarePackage = (HardwarePackageImpl)(registeredPackage instanceof HardwarePackageImpl ? registeredPackage : HardwarePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(StorePackage.eNS_URI);
+ StorePackageImpl theStorePackage = (StorePackageImpl)(registeredPackage instanceof StorePackageImpl ? registeredPackage : StorePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(StructurePackage.eNS_URI);
+ StructurePackageImpl theStructurePackage = (StructurePackageImpl)(registeredPackage instanceof StructurePackageImpl ? registeredPackage : StructurePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ResourcePackage.eNS_URI);
+ ResourcePackageImpl theResourcePackage = (ResourcePackageImpl)(registeredPackage instanceof ResourcePackageImpl ? registeredPackage : ResourcePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ArtefactPackage.eNS_URI);
+ ArtefactPackageImpl theArtefactPackage = (ArtefactPackageImpl)(registeredPackage instanceof ArtefactPackageImpl ? registeredPackage : ArtefactPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(HybridPackage.eNS_URI);
+ HybridPackageImpl theHybridPackage = (HybridPackageImpl)(registeredPackage instanceof HybridPackageImpl ? registeredPackage : HybridPackage.eINSTANCE);
+
+ // Create package meta-data objects
+ theSensinactPackage.createPackageContents();
+ theAnimatePackage.createPackageContents();
+ theActuatorPackage.createPackageContents();
+ theSensorPackage.createPackageContents();
+ theNetworkPackage.createPackageContents();
+ theCorePackage.createPackageContents();
+ theSoftwarePackage.createPackageContents();
+ theProtocolPackage.createPackageContents();
+ theHardwarePackage.createPackageContents();
+ theStorePackage.createPackageContents();
+ theStructurePackage.createPackageContents();
+ theResourcePackage.createPackageContents();
+ theArtefactPackage.createPackageContents();
+ theHybridPackage.createPackageContents();
+
+ // Initialize created meta-data
+ theSensinactPackage.initializePackageContents();
+ theAnimatePackage.initializePackageContents();
+ theActuatorPackage.initializePackageContents();
+ theSensorPackage.initializePackageContents();
+ theNetworkPackage.initializePackageContents();
+ theCorePackage.initializePackageContents();
+ theSoftwarePackage.initializePackageContents();
+ theProtocolPackage.initializePackageContents();
+ theHardwarePackage.initializePackageContents();
+ theStorePackage.initializePackageContents();
+ theStructurePackage.initializePackageContents();
+ theResourcePackage.initializePackageContents();
+ theArtefactPackage.initializePackageContents();
+ theHybridPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theSensinactPackage.freeze();
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(SensinactPackage.eNS_URI, theSensinactPackage);
+ return theSensinactPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getTypedElement() {
+ return typedElementEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getTypedElement_Value() {
+ return (EReference)typedElementEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getTypedElement_Base_TypedElement() {
+ return (EReference)typedElementEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getStudio() {
+ return studioEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getStudio_Gateways() {
+ return (EReference)studioEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getGateway() {
+ return gatewayEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getGateway_Devices() {
+ return (EReference)gatewayEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getDevice() {
+ return deviceEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getDevice_FriendlyName() {
+ return (EAttribute)deviceEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDevice_Services() {
+ return (EReference)deviceEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getService() {
+ return serviceEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getService_FriendlyName() {
+ return (EAttribute)serviceEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getService_Resources() {
+ return (EReference)serviceEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getResource() {
+ return resourceEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getResource_FriendlyName() {
+ return (EAttribute)resourceEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getResource_AccessMethods() {
+ return (EReference)resourceEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getResource_Attributes() {
+ return (EReference)resourceEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getAccessMethod() {
+ return accessMethodEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getAccessMethod_Type() {
+ return (EAttribute)accessMethodEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getAccessMethod_Parameters() {
+ return (EReference)accessMethodEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getAccessMethod_Base_Operation() {
+ return (EReference)accessMethodEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getParameter() {
+ return parameterEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getAttribute() {
+ return attributeEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getAttribute_Metadata() {
+ return (EReference)attributeEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getMetadata() {
+ return metadataEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getProperty() {
+ return propertyEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getProperty_Base_Property() {
+ return (EReference)propertyEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getSensorData() {
+ return sensorDataEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getSensorData_Base_Property() {
+ return (EReference)sensorDataEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getStateVariable() {
+ return stateVariableEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getStateVariable_Modifier() {
+ return (EReference)stateVariableEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getStateVariable_Base_Property() {
+ return (EReference)stateVariableEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getAction() {
+ return actionEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getAction_State() {
+ return (EReference)actionEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EEnum getAccessMethodType() {
+ return accessMethodTypeEEnum;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public SensinactFactory getSensinactFactory() {
+ return (SensinactFactory)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
+ typedElementEClass = createEClass(TYPED_ELEMENT);
+ createEReference(typedElementEClass, TYPED_ELEMENT__VALUE);
+ createEReference(typedElementEClass, TYPED_ELEMENT__BASE_TYPED_ELEMENT);
+
+ studioEClass = createEClass(STUDIO);
+ createEReference(studioEClass, STUDIO__GATEWAYS);
+
+ gatewayEClass = createEClass(GATEWAY);
+ createEReference(gatewayEClass, GATEWAY__DEVICES);
+
+ deviceEClass = createEClass(DEVICE);
+ createEAttribute(deviceEClass, DEVICE__FRIENDLY_NAME);
+ createEReference(deviceEClass, DEVICE__SERVICES);
+
+ serviceEClass = createEClass(SERVICE);
+ createEAttribute(serviceEClass, SERVICE__FRIENDLY_NAME);
+ createEReference(serviceEClass, SERVICE__RESOURCES);
+
+ resourceEClass = createEClass(RESOURCE);
+ createEAttribute(resourceEClass, RESOURCE__FRIENDLY_NAME);
+ createEReference(resourceEClass, RESOURCE__ACCESS_METHODS);
+ createEReference(resourceEClass, RESOURCE__ATTRIBUTES);
+
+ accessMethodEClass = createEClass(ACCESS_METHOD);
+ createEAttribute(accessMethodEClass, ACCESS_METHOD__TYPE);
+ createEReference(accessMethodEClass, ACCESS_METHOD__PARAMETERS);
+ createEReference(accessMethodEClass, ACCESS_METHOD__BASE_OPERATION);
+
+ parameterEClass = createEClass(PARAMETER);
+
+ attributeEClass = createEClass(ATTRIBUTE);
+ createEReference(attributeEClass, ATTRIBUTE__METADATA);
+
+ metadataEClass = createEClass(METADATA);
+
+ propertyEClass = createEClass(PROPERTY);
+ createEReference(propertyEClass, PROPERTY__BASE_PROPERTY);
+
+ sensorDataEClass = createEClass(SENSOR_DATA);
+ createEReference(sensorDataEClass, SENSOR_DATA__BASE_PROPERTY);
+
+ stateVariableEClass = createEClass(STATE_VARIABLE);
+ createEReference(stateVariableEClass, STATE_VARIABLE__MODIFIER);
+ createEReference(stateVariableEClass, STATE_VARIABLE__BASE_PROPERTY);
+
+ actionEClass = createEClass(ACTION);
+ createEReference(actionEClass, ACTION__STATE);
+
+ // Create enums
+ accessMethodTypeEEnum = createEEnum(ACCESS_METHOD_TYPE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isInitialized = false;
+
+ /**
+ * Complete the initialization of the package and its meta-model. This
+ * method is guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (isInitialized) return;
+ isInitialized = true;
+
+ // Initialize package
+ setName(eNAME);
+ setNsPrefix(eNS_PREFIX);
+ setNsURI(eNS_URI);
+
+ // Obtain other dependent packages
+ StructurePackage theStructurePackage = (StructurePackage)EPackage.Registry.INSTANCE.getEPackage(StructurePackage.eNS_URI);
+ UMLPackage theUMLPackage = (UMLPackage)EPackage.Registry.INSTANCE.getEPackage(UMLPackage.eNS_URI);
+ AnimatePackage theAnimatePackage = (AnimatePackage)EPackage.Registry.INSTANCE.getEPackage(AnimatePackage.eNS_URI);
+ NetworkPackage theNetworkPackage = (NetworkPackage)EPackage.Registry.INSTANCE.getEPackage(NetworkPackage.eNS_URI);
+ TypesPackage theTypesPackage = (TypesPackage)EPackage.Registry.INSTANCE.getEPackage(TypesPackage.eNS_URI);
+ ArtefactPackage theArtefactPackage = (ArtefactPackage)EPackage.Registry.INSTANCE.getEPackage(ArtefactPackage.eNS_URI);
+ ResourcePackage theResourcePackage = (ResourcePackage)EPackage.Registry.INSTANCE.getEPackage(ResourcePackage.eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+ studioEClass.getESuperTypes().add(theAnimatePackage.getHumanUser());
+ gatewayEClass.getESuperTypes().add(theNetworkPackage.getGateway());
+ deviceEClass.getESuperTypes().add(theNetworkPackage.getConnectedDevice());
+ serviceEClass.getESuperTypes().add(theArtefactPackage.getService());
+ resourceEClass.getESuperTypes().add(theResourcePackage.getOnDeviceResource());
+ parameterEClass.getESuperTypes().add(this.getTypedElement());
+ attributeEClass.getESuperTypes().add(this.getTypedElement());
+ metadataEClass.getESuperTypes().add(this.getTypedElement());
+ propertyEClass.getESuperTypes().add(this.getResource());
+ sensorDataEClass.getESuperTypes().add(this.getResource());
+ stateVariableEClass.getESuperTypes().add(this.getResource());
+ actionEClass.getESuperTypes().add(this.getResource());
+ actionEClass.getESuperTypes().add(theArtefactPackage.getPropertyAccess());
+
+ // Initialize classes and features; add operations and parameters
+ initEClass(typedElementEClass, TypedElement.class, "TypedElement", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getTypedElement_Value(), theStructurePackage.getDetailedValueSpecification(), null, "value", null, 0, 1, TypedElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEReference(getTypedElement_Base_TypedElement(), theUMLPackage.getTypedElement(), null, "base_TypedElement", null, 1, 1, TypedElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+
+ initEClass(studioEClass, Studio.class, "Studio", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getStudio_Gateways(), this.getGateway(), null, "gateways", null, 1, -1, Studio.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+
+ initEClass(gatewayEClass, Gateway.class, "Gateway", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getGateway_Devices(), this.getDevice(), null, "devices", null, 1, -1, Gateway.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+
+ initEClass(deviceEClass, Device.class, "Device", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getDevice_FriendlyName(), theTypesPackage.getString(), "friendlyName", null, 1, 1, Device.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEReference(getDevice_Services(), this.getService(), null, "services", null, 1, -1, Device.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+
+ initEClass(serviceEClass, Service.class, "Service", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getService_FriendlyName(), theTypesPackage.getString(), "friendlyName", null, 1, 1, Service.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEReference(getService_Resources(), this.getResource(), null, "resources", null, 1, -1, Service.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+
+ initEClass(resourceEClass, Resource.class, "Resource", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getResource_FriendlyName(), theTypesPackage.getString(), "friendlyName", null, 1, 1, Resource.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEReference(getResource_AccessMethods(), this.getAccessMethod(), null, "accessMethods", null, 1, -1, Resource.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEReference(getResource_Attributes(), this.getAttribute(), null, "attributes", null, 1, -1, Resource.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+
+ initEClass(accessMethodEClass, AccessMethod.class, "AccessMethod", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getAccessMethod_Type(), this.getAccessMethodType(), "type", null, 1, 1, AccessMethod.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEReference(getAccessMethod_Parameters(), this.getParameter(), null, "parameters", null, 0, -1, AccessMethod.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEReference(getAccessMethod_Base_Operation(), theUMLPackage.getOperation(), null, "base_Operation", null, 1, 1, AccessMethod.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+
+ initEClass(parameterEClass, Parameter.class, "Parameter", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+ initEClass(attributeEClass, Attribute.class, "Attribute", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getAttribute_Metadata(), this.getMetadata(), null, "metadata", null, 0, -1, Attribute.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+
+ initEClass(metadataEClass, Metadata.class, "Metadata", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+ initEClass(propertyEClass, Property.class, "Property", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getProperty_Base_Property(), theUMLPackage.getProperty(), null, "base_Property", null, 1, 1, Property.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+
+ initEClass(sensorDataEClass, SensorData.class, "SensorData", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getSensorData_Base_Property(), theUMLPackage.getProperty(), null, "base_Property", null, 1, 1, SensorData.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+
+ initEClass(stateVariableEClass, StateVariable.class, "StateVariable", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getStateVariable_Modifier(), this.getAction(), this.getAction_State(), "modifier", null, 1, 1, StateVariable.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, !IS_ORDERED);
+ initEReference(getStateVariable_Base_Property(), theUMLPackage.getProperty(), null, "base_Property", null, 1, 1, StateVariable.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+
+ initEClass(actionEClass, Action.class, "Action", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getAction_State(), this.getStateVariable(), this.getStateVariable_Modifier(), "state", null, 1, 1, Action.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, !IS_ORDERED);
+
+ // Initialize enums and add enum literals
+ initEEnum(accessMethodTypeEEnum, AccessMethodType.class, "AccessMethodType");
+ addEEnumLiteral(accessMethodTypeEEnum, AccessMethodType.GET);
+ addEEnumLiteral(accessMethodTypeEEnum, AccessMethodType.SET);
+ addEEnumLiteral(accessMethodTypeEEnum, AccessMethodType.ACT);
+ addEEnumLiteral(accessMethodTypeEEnum, AccessMethodType.SUBSCRIBE);
+ addEEnumLiteral(accessMethodTypeEEnum, AccessMethodType.UNSUBSCRIBE);
+
+ // Create resource
+ createResource(eNS_URI);
+
+ // Create annotations
+ // http://www.eclipse.org/uml2/2.0.0/UML
+ createUMLAnnotations();
+ }
+
+ /**
+ * Initializes the annotations for <b>http://www.eclipse.org/uml2/2.0.0/UML</b>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void createUMLAnnotations() {
+ String source = "http://www.eclipse.org/uml2/2.0.0/UML";
+ addAnnotation
+ (this,
+ source,
+ new String[] {
+ "originalName", "SensiNact"
+ });
+ }
+
+} //SensinactPackageImpl
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/SensorDataImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/SensorDataImpl.java
new file mode 100644
index 0000000..f391ccf
--- /dev/null
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/SensorDataImpl.java
@@ -0,0 +1,168 @@
+/**
+ * Copyright (c) 2018 CEA
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
+ * Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ *
+ */
+package org.eclipse.papyrus.iotml.sensinact.impl;
+
+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.papyrus.iotml.sensinact.SensinactPackage;
+import org.eclipse.papyrus.iotml.sensinact.SensorData;
+
+import org.eclipse.uml2.uml.Property;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Sensor Data</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.iotml.sensinact.impl.SensorDataImpl#getBase_Property <em>Base Property</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class SensorDataImpl extends ResourceImpl implements SensorData {
+ /**
+ * The cached value of the '{@link #getBase_Property() <em>Base Property</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_Property()
+ * @generated
+ * @ordered
+ */
+ protected Property base_Property;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected SensorDataImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return SensinactPackage.Literals.SENSOR_DATA;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Property getBase_Property() {
+ if (base_Property != null && base_Property.eIsProxy()) {
+ InternalEObject oldBase_Property = (InternalEObject)base_Property;
+ base_Property = (Property)eResolveProxy(oldBase_Property);
+ if (base_Property != oldBase_Property) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, SensinactPackage.SENSOR_DATA__BASE_PROPERTY, oldBase_Property, base_Property));
+ }
+ }
+ return base_Property;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Property basicGetBase_Property() {
+ return base_Property;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_Property(Property newBase_Property) {
+ Property oldBase_Property = base_Property;
+ base_Property = newBase_Property;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, SensinactPackage.SENSOR_DATA__BASE_PROPERTY, oldBase_Property, base_Property));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case SensinactPackage.SENSOR_DATA__BASE_PROPERTY:
+ if (resolve) return getBase_Property();
+ return basicGetBase_Property();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case SensinactPackage.SENSOR_DATA__BASE_PROPERTY:
+ setBase_Property((Property)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case SensinactPackage.SENSOR_DATA__BASE_PROPERTY:
+ setBase_Property((Property)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case SensinactPackage.SENSOR_DATA__BASE_PROPERTY:
+ return base_Property != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //SensorDataImpl
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/ServiceImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/ServiceImpl.java
new file mode 100644
index 0000000..0edadea
--- /dev/null
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/ServiceImpl.java
@@ -0,0 +1,215 @@
+/**
+ * Copyright (c) 2018 CEA
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
+ * Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ *
+ */
+package org.eclipse.papyrus.iotml.sensinact.impl;
+
+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.util.EObjectResolvingEList;
+
+import org.eclipse.papyrus.iotml.sensinact.Resource;
+import org.eclipse.papyrus.iotml.sensinact.SensinactPackage;
+import org.eclipse.papyrus.iotml.sensinact.Service;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Service</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.iotml.sensinact.impl.ServiceImpl#getFriendlyName <em>Friendly Name</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.sensinact.impl.ServiceImpl#getResources <em>Resources</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class ServiceImpl extends org.eclipse.papyrus.iotml.software.artefact.impl.ServiceImpl implements Service {
+ /**
+ * The default value of the '{@link #getFriendlyName() <em>Friendly Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getFriendlyName()
+ * @generated
+ * @ordered
+ */
+ protected static final String FRIENDLY_NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getFriendlyName() <em>Friendly Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getFriendlyName()
+ * @generated
+ * @ordered
+ */
+ protected String friendlyName = FRIENDLY_NAME_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getResources() <em>Resources</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getResources()
+ * @generated
+ * @ordered
+ */
+ protected EList<Resource> resources;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ServiceImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return SensinactPackage.Literals.SERVICE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getFriendlyName() {
+ return friendlyName;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setFriendlyName(String newFriendlyName) {
+ String oldFriendlyName = friendlyName;
+ friendlyName = newFriendlyName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, SensinactPackage.SERVICE__FRIENDLY_NAME, oldFriendlyName, friendlyName));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Resource> getResources() {
+ if (resources == null) {
+ resources = new EObjectResolvingEList<Resource>(Resource.class, this, SensinactPackage.SERVICE__RESOURCES);
+ }
+ return resources;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case SensinactPackage.SERVICE__FRIENDLY_NAME:
+ return getFriendlyName();
+ case SensinactPackage.SERVICE__RESOURCES:
+ return getResources();
+ }
+ 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 SensinactPackage.SERVICE__FRIENDLY_NAME:
+ setFriendlyName((String)newValue);
+ return;
+ case SensinactPackage.SERVICE__RESOURCES:
+ getResources().clear();
+ getResources().addAll((Collection<? extends Resource>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case SensinactPackage.SERVICE__FRIENDLY_NAME:
+ setFriendlyName(FRIENDLY_NAME_EDEFAULT);
+ return;
+ case SensinactPackage.SERVICE__RESOURCES:
+ getResources().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case SensinactPackage.SERVICE__FRIENDLY_NAME:
+ return FRIENDLY_NAME_EDEFAULT == null ? friendlyName != null : !FRIENDLY_NAME_EDEFAULT.equals(friendlyName);
+ case SensinactPackage.SERVICE__RESOURCES:
+ return resources != null && !resources.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(" (friendlyName: ");
+ result.append(friendlyName);
+ result.append(')');
+ return result.toString();
+ }
+
+} //ServiceImpl
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/StateVariableImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/StateVariableImpl.java
new file mode 100644
index 0000000..fb50bf3
--- /dev/null
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/StateVariableImpl.java
@@ -0,0 +1,214 @@
+/**
+ * Copyright (c) 2018 CEA
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
+ * Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ *
+ */
+package org.eclipse.papyrus.iotml.sensinact.impl;
+
+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.papyrus.iotml.sensinact.Action;
+import org.eclipse.papyrus.iotml.sensinact.SensinactPackage;
+import org.eclipse.papyrus.iotml.sensinact.StateVariable;
+
+import org.eclipse.uml2.uml.Property;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>State Variable</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.iotml.sensinact.impl.StateVariableImpl#getModifier <em>Modifier</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.sensinact.impl.StateVariableImpl#getBase_Property <em>Base Property</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class StateVariableImpl extends ResourceImpl implements StateVariable {
+ /**
+ * The cached value of the '{@link #getBase_Property() <em>Base Property</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_Property()
+ * @generated
+ * @ordered
+ */
+ protected Property base_Property;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected StateVariableImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return SensinactPackage.Literals.STATE_VARIABLE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Action getModifier() {
+ Action modifier = basicGetModifier();
+ return modifier != null && modifier.eIsProxy() ? (Action)eResolveProxy((InternalEObject)modifier) : modifier;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Action basicGetModifier() {
+ // TODO: implement this method to return the 'Modifier' reference
+ // -> do not perform proxy resolution
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setModifier(Action newModifier) {
+ // TODO: implement this method to set the 'Modifier' reference
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Property getBase_Property() {
+ if (base_Property != null && base_Property.eIsProxy()) {
+ InternalEObject oldBase_Property = (InternalEObject)base_Property;
+ base_Property = (Property)eResolveProxy(oldBase_Property);
+ if (base_Property != oldBase_Property) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, SensinactPackage.STATE_VARIABLE__BASE_PROPERTY, oldBase_Property, base_Property));
+ }
+ }
+ return base_Property;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Property basicGetBase_Property() {
+ return base_Property;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_Property(Property newBase_Property) {
+ Property oldBase_Property = base_Property;
+ base_Property = newBase_Property;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, SensinactPackage.STATE_VARIABLE__BASE_PROPERTY, oldBase_Property, base_Property));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case SensinactPackage.STATE_VARIABLE__MODIFIER:
+ if (resolve) return getModifier();
+ return basicGetModifier();
+ case SensinactPackage.STATE_VARIABLE__BASE_PROPERTY:
+ if (resolve) return getBase_Property();
+ return basicGetBase_Property();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case SensinactPackage.STATE_VARIABLE__MODIFIER:
+ setModifier((Action)newValue);
+ return;
+ case SensinactPackage.STATE_VARIABLE__BASE_PROPERTY:
+ setBase_Property((Property)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case SensinactPackage.STATE_VARIABLE__MODIFIER:
+ setModifier((Action)null);
+ return;
+ case SensinactPackage.STATE_VARIABLE__BASE_PROPERTY:
+ setBase_Property((Property)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case SensinactPackage.STATE_VARIABLE__MODIFIER:
+ return basicGetModifier() != null;
+ case SensinactPackage.STATE_VARIABLE__BASE_PROPERTY:
+ return base_Property != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //StateVariableImpl
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/StudioImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/StudioImpl.java
new file mode 100644
index 0000000..0b6c30b
--- /dev/null
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/StudioImpl.java
@@ -0,0 +1,145 @@
+/**
+ * Copyright (c) 2018 CEA
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
+ * Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ *
+ */
+package org.eclipse.papyrus.iotml.sensinact.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+
+import org.eclipse.papyrus.iotml.animate.impl.HumanUserImpl;
+
+import org.eclipse.papyrus.iotml.sensinact.Gateway;
+import org.eclipse.papyrus.iotml.sensinact.SensinactPackage;
+import org.eclipse.papyrus.iotml.sensinact.Studio;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Studio</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.iotml.sensinact.impl.StudioImpl#getGateways <em>Gateways</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class StudioImpl extends HumanUserImpl implements Studio {
+ /**
+ * The cached value of the '{@link #getGateways() <em>Gateways</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getGateways()
+ * @generated
+ * @ordered
+ */
+ protected EList<Gateway> gateways;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected StudioImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return SensinactPackage.Literals.STUDIO;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Gateway> getGateways() {
+ if (gateways == null) {
+ gateways = new EObjectResolvingEList<Gateway>(Gateway.class, this, SensinactPackage.STUDIO__GATEWAYS);
+ }
+ return gateways;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case SensinactPackage.STUDIO__GATEWAYS:
+ return getGateways();
+ }
+ 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 SensinactPackage.STUDIO__GATEWAYS:
+ getGateways().clear();
+ getGateways().addAll((Collection<? extends Gateway>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case SensinactPackage.STUDIO__GATEWAYS:
+ getGateways().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case SensinactPackage.STUDIO__GATEWAYS:
+ return gateways != null && !gateways.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //StudioImpl
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/TypedElementImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/TypedElementImpl.java
new file mode 100644
index 0000000..cc46a8a
--- /dev/null
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/TypedElementImpl.java
@@ -0,0 +1,229 @@
+/**
+ * Copyright (c) 2018 CEA
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
+ * Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ *
+ */
+package org.eclipse.papyrus.iotml.sensinact.impl;
+
+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;
+
+import org.eclipse.papyrus.iotml.sensinact.SensinactPackage;
+import org.eclipse.papyrus.iotml.sensinact.TypedElement;
+
+import org.eclipse.papyrus.iotml.software.core.structure.DetailedValueSpecification;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Typed Element</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.iotml.sensinact.impl.TypedElementImpl#getValue <em>Value</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.sensinact.impl.TypedElementImpl#getBase_TypedElement <em>Base Typed Element</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class TypedElementImpl extends MinimalEObjectImpl.Container implements TypedElement {
+ /**
+ * The cached value of the '{@link #getValue() <em>Value</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getValue()
+ * @generated
+ * @ordered
+ */
+ protected DetailedValueSpecification value;
+
+ /**
+ * The cached value of the '{@link #getBase_TypedElement() <em>Base Typed Element</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_TypedElement()
+ * @generated
+ * @ordered
+ */
+ protected org.eclipse.uml2.uml.TypedElement base_TypedElement;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected TypedElementImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return SensinactPackage.Literals.TYPED_ELEMENT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DetailedValueSpecification getValue() {
+ if (value != null && value.eIsProxy()) {
+ InternalEObject oldValue = (InternalEObject)value;
+ value = (DetailedValueSpecification)eResolveProxy(oldValue);
+ if (value != oldValue) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, SensinactPackage.TYPED_ELEMENT__VALUE, oldValue, value));
+ }
+ }
+ return value;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DetailedValueSpecification basicGetValue() {
+ return value;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setValue(DetailedValueSpecification newValue) {
+ DetailedValueSpecification oldValue = value;
+ value = newValue;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, SensinactPackage.TYPED_ELEMENT__VALUE, oldValue, value));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public org.eclipse.uml2.uml.TypedElement getBase_TypedElement() {
+ if (base_TypedElement != null && base_TypedElement.eIsProxy()) {
+ InternalEObject oldBase_TypedElement = (InternalEObject)base_TypedElement;
+ base_TypedElement = (org.eclipse.uml2.uml.TypedElement)eResolveProxy(oldBase_TypedElement);
+ if (base_TypedElement != oldBase_TypedElement) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, SensinactPackage.TYPED_ELEMENT__BASE_TYPED_ELEMENT, oldBase_TypedElement, base_TypedElement));
+ }
+ }
+ return base_TypedElement;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public org.eclipse.uml2.uml.TypedElement basicGetBase_TypedElement() {
+ return base_TypedElement;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_TypedElement(org.eclipse.uml2.uml.TypedElement newBase_TypedElement) {
+ org.eclipse.uml2.uml.TypedElement oldBase_TypedElement = base_TypedElement;
+ base_TypedElement = newBase_TypedElement;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, SensinactPackage.TYPED_ELEMENT__BASE_TYPED_ELEMENT, oldBase_TypedElement, base_TypedElement));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case SensinactPackage.TYPED_ELEMENT__VALUE:
+ if (resolve) return getValue();
+ return basicGetValue();
+ case SensinactPackage.TYPED_ELEMENT__BASE_TYPED_ELEMENT:
+ if (resolve) return getBase_TypedElement();
+ return basicGetBase_TypedElement();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case SensinactPackage.TYPED_ELEMENT__VALUE:
+ setValue((DetailedValueSpecification)newValue);
+ return;
+ case SensinactPackage.TYPED_ELEMENT__BASE_TYPED_ELEMENT:
+ setBase_TypedElement((org.eclipse.uml2.uml.TypedElement)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case SensinactPackage.TYPED_ELEMENT__VALUE:
+ setValue((DetailedValueSpecification)null);
+ return;
+ case SensinactPackage.TYPED_ELEMENT__BASE_TYPED_ELEMENT:
+ setBase_TypedElement((org.eclipse.uml2.uml.TypedElement)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case SensinactPackage.TYPED_ELEMENT__VALUE:
+ return value != null;
+ case SensinactPackage.TYPED_ELEMENT__BASE_TYPED_ELEMENT:
+ return base_TypedElement != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //TypedElementImpl
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/util/SensinactAdapterFactory.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/util/SensinactAdapterFactory.java
new file mode 100644
index 0000000..251c831
--- /dev/null
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/util/SensinactAdapterFactory.java
@@ -0,0 +1,637 @@
+/**
+ * Copyright (c) 2018 CEA
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
+ * Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ *
+ */
+package org.eclipse.papyrus.iotml.sensinact.util;
+
+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;
+
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwGeneral.HwResource;
+
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwCommunication.HwCommunicationResource;
+
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwComputing.HwComputingResource;
+
+import org.eclipse.papyrus.MARTE.MARTE_Foundations.GRM.ComputingResource;
+import org.eclipse.papyrus.MARTE.MARTE_Foundations.GRM.ProcessingResource;
+
+import org.eclipse.papyrus.iotml.animate.HumanUser;
+
+import org.eclipse.papyrus.iotml.hardware.network.ConnectedDevice;
+
+import org.eclipse.papyrus.iotml.s3pml.hardware.IoTDevice;
+
+import org.eclipse.papyrus.iotml.sensinact.*;
+
+import org.eclipse.papyrus.iotml.software.artefact.DigitalArtefact;
+import org.eclipse.papyrus.iotml.software.artefact.PropertyAccess;
+
+import org.eclipse.papyrus.iotml.software.resource.OnDeviceResource;
+
+/**
+ * <!-- 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 org.eclipse.papyrus.iotml.sensinact.SensinactPackage
+ * @generated
+ */
+public class SensinactAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static SensinactPackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public SensinactAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = SensinactPackage.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 SensinactSwitch<Adapter> modelSwitch =
+ new SensinactSwitch<Adapter>() {
+ @Override
+ public Adapter caseTypedElement(TypedElement object) {
+ return createTypedElementAdapter();
+ }
+ @Override
+ public Adapter caseStudio(Studio object) {
+ return createStudioAdapter();
+ }
+ @Override
+ public Adapter caseGateway(Gateway object) {
+ return createGatewayAdapter();
+ }
+ @Override
+ public Adapter caseDevice(Device object) {
+ return createDeviceAdapter();
+ }
+ @Override
+ public Adapter caseService(Service object) {
+ return createServiceAdapter();
+ }
+ @Override
+ public Adapter caseResource(Resource object) {
+ return createResourceAdapter();
+ }
+ @Override
+ public Adapter caseAccessMethod(AccessMethod object) {
+ return createAccessMethodAdapter();
+ }
+ @Override
+ public Adapter caseParameter(Parameter object) {
+ return createParameterAdapter();
+ }
+ @Override
+ public Adapter caseAttribute(Attribute object) {
+ return createAttributeAdapter();
+ }
+ @Override
+ public Adapter caseMetadata(Metadata object) {
+ return createMetadataAdapter();
+ }
+ @Override
+ public Adapter caseProperty(Property object) {
+ return createPropertyAdapter();
+ }
+ @Override
+ public Adapter caseSensorData(SensorData object) {
+ return createSensorDataAdapter();
+ }
+ @Override
+ public Adapter caseStateVariable(StateVariable object) {
+ return createStateVariableAdapter();
+ }
+ @Override
+ public Adapter caseAction(Action object) {
+ return createActionAdapter();
+ }
+ @Override
+ public Adapter caseHumanUser(HumanUser object) {
+ return createHumanUserAdapter();
+ }
+ @Override
+ public Adapter caseGRM_Resource(org.eclipse.papyrus.MARTE.MARTE_Foundations.GRM.Resource object) {
+ return createGRM_ResourceAdapter();
+ }
+ @Override
+ public Adapter caseHwResource(HwResource object) {
+ return createHwResourceAdapter();
+ }
+ @Override
+ public Adapter caseProcessingResource(ProcessingResource object) {
+ return createProcessingResourceAdapter();
+ }
+ @Override
+ public Adapter caseComputingResource(ComputingResource object) {
+ return createComputingResourceAdapter();
+ }
+ @Override
+ public Adapter caseHwComputingResource(HwComputingResource object) {
+ return createHwComputingResourceAdapter();
+ }
+ @Override
+ public Adapter caseHwCommunicationResource(HwCommunicationResource object) {
+ return createHwCommunicationResourceAdapter();
+ }
+ @Override
+ public Adapter caseConnectedDevice(ConnectedDevice object) {
+ return createConnectedDeviceAdapter();
+ }
+ @Override
+ public Adapter caseIoTDevice(IoTDevice object) {
+ return createIoTDeviceAdapter();
+ }
+ @Override
+ public Adapter caseNetwork_Gateway(org.eclipse.papyrus.iotml.hardware.network.Gateway object) {
+ return createNetwork_GatewayAdapter();
+ }
+ @Override
+ public Adapter caseDigitalArtefact(DigitalArtefact object) {
+ return createDigitalArtefactAdapter();
+ }
+ @Override
+ public Adapter caseArtefact_Service(org.eclipse.papyrus.iotml.software.artefact.Service object) {
+ return createArtefact_ServiceAdapter();
+ }
+ @Override
+ public Adapter caseOnDeviceResource(OnDeviceResource object) {
+ return createOnDeviceResourceAdapter();
+ }
+ @Override
+ public Adapter casePropertyAccess(PropertyAccess object) {
+ return createPropertyAccessAdapter();
+ }
+ @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 org.eclipse.papyrus.iotml.sensinact.TypedElement <em>Typed Element</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 org.eclipse.papyrus.iotml.sensinact.TypedElement
+ * @generated
+ */
+ public Adapter createTypedElementAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.iotml.sensinact.Studio <em>Studio</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 org.eclipse.papyrus.iotml.sensinact.Studio
+ * @generated
+ */
+ public Adapter createStudioAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.iotml.sensinact.Gateway <em>Gateway</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 org.eclipse.papyrus.iotml.sensinact.Gateway
+ * @generated
+ */
+ public Adapter createGatewayAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.iotml.sensinact.Device <em>Device</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 org.eclipse.papyrus.iotml.sensinact.Device
+ * @generated
+ */
+ public Adapter createDeviceAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.iotml.sensinact.Service <em>Service</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 org.eclipse.papyrus.iotml.sensinact.Service
+ * @generated
+ */
+ public Adapter createServiceAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.iotml.sensinact.Resource <em>Resource</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 org.eclipse.papyrus.iotml.sensinact.Resource
+ * @generated
+ */
+ public Adapter createResourceAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.iotml.sensinact.AccessMethod <em>Access Method</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 org.eclipse.papyrus.iotml.sensinact.AccessMethod
+ * @generated
+ */
+ public Adapter createAccessMethodAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.iotml.sensinact.Parameter <em>Parameter</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 org.eclipse.papyrus.iotml.sensinact.Parameter
+ * @generated
+ */
+ public Adapter createParameterAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.iotml.sensinact.Attribute <em>Attribute</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 org.eclipse.papyrus.iotml.sensinact.Attribute
+ * @generated
+ */
+ public Adapter createAttributeAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.iotml.sensinact.Metadata <em>Metadata</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 org.eclipse.papyrus.iotml.sensinact.Metadata
+ * @generated
+ */
+ public Adapter createMetadataAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.iotml.sensinact.Property <em>Property</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 org.eclipse.papyrus.iotml.sensinact.Property
+ * @generated
+ */
+ public Adapter createPropertyAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.iotml.sensinact.SensorData <em>Sensor Data</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 org.eclipse.papyrus.iotml.sensinact.SensorData
+ * @generated
+ */
+ public Adapter createSensorDataAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.iotml.sensinact.StateVariable <em>State Variable</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 org.eclipse.papyrus.iotml.sensinact.StateVariable
+ * @generated
+ */
+ public Adapter createStateVariableAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.iotml.sensinact.Action <em>Action</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 org.eclipse.papyrus.iotml.sensinact.Action
+ * @generated
+ */
+ public Adapter createActionAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.iotml.animate.HumanUser <em>Human User</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 org.eclipse.papyrus.iotml.animate.HumanUser
+ * @generated
+ */
+ public Adapter createHumanUserAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.MARTE.MARTE_Foundations.GRM.Resource <em>Resource</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 org.eclipse.papyrus.MARTE.MARTE_Foundations.GRM.Resource
+ * @generated
+ */
+ public Adapter createGRM_ResourceAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwGeneral.HwResource <em>Hw Resource</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 org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwGeneral.HwResource
+ * @generated
+ */
+ public Adapter createHwResourceAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.MARTE.MARTE_Foundations.GRM.ProcessingResource <em>Processing Resource</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 org.eclipse.papyrus.MARTE.MARTE_Foundations.GRM.ProcessingResource
+ * @generated
+ */
+ public Adapter createProcessingResourceAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.MARTE.MARTE_Foundations.GRM.ComputingResource <em>Computing Resource</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 org.eclipse.papyrus.MARTE.MARTE_Foundations.GRM.ComputingResource
+ * @generated
+ */
+ public Adapter createComputingResourceAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwComputing.HwComputingResource <em>Resource</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 org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwComputing.HwComputingResource
+ * @generated
+ */
+ public Adapter createHwComputingResourceAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwCommunication.HwCommunicationResource <em>Resource</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 org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwCommunication.HwCommunicationResource
+ * @generated
+ */
+ public Adapter createHwCommunicationResourceAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.iotml.hardware.network.ConnectedDevice <em>Connected Device</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 org.eclipse.papyrus.iotml.hardware.network.ConnectedDevice
+ * @generated
+ */
+ public Adapter createConnectedDeviceAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.iotml.s3pml.hardware.IoTDevice <em>Io TDevice</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 org.eclipse.papyrus.iotml.s3pml.hardware.IoTDevice
+ * @generated
+ */
+ public Adapter createIoTDeviceAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.iotml.hardware.network.Gateway <em>Gateway</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 org.eclipse.papyrus.iotml.hardware.network.Gateway
+ * @generated
+ */
+ public Adapter createNetwork_GatewayAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.iotml.software.artefact.DigitalArtefact <em>Digital Artefact</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 org.eclipse.papyrus.iotml.software.artefact.DigitalArtefact
+ * @generated
+ */
+ public Adapter createDigitalArtefactAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.iotml.software.artefact.Service <em>Service</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 org.eclipse.papyrus.iotml.software.artefact.Service
+ * @generated
+ */
+ public Adapter createArtefact_ServiceAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.iotml.software.resource.OnDeviceResource <em>On Device Resource</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 org.eclipse.papyrus.iotml.software.resource.OnDeviceResource
+ * @generated
+ */
+ public Adapter createOnDeviceResourceAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.iotml.software.artefact.PropertyAccess <em>Property Access</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 org.eclipse.papyrus.iotml.software.artefact.PropertyAccess
+ * @generated
+ */
+ public Adapter createPropertyAccessAdapter() {
+ 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;
+ }
+
+} //SensinactAdapterFactory
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/util/SensinactSwitch.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/util/SensinactSwitch.java
new file mode 100644
index 0000000..c3d531c
--- /dev/null
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/util/SensinactSwitch.java
@@ -0,0 +1,653 @@
+/**
+ * Copyright (c) 2018 CEA
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
+ * Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ *
+ */
+package org.eclipse.papyrus.iotml.sensinact.util;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.util.Switch;
+
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwGeneral.HwResource;
+
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwCommunication.HwCommunicationResource;
+
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwComputing.HwComputingResource;
+
+import org.eclipse.papyrus.MARTE.MARTE_Foundations.GRM.ComputingResource;
+import org.eclipse.papyrus.MARTE.MARTE_Foundations.GRM.ProcessingResource;
+
+import org.eclipse.papyrus.iotml.animate.HumanUser;
+
+import org.eclipse.papyrus.iotml.hardware.network.ConnectedDevice;
+
+import org.eclipse.papyrus.iotml.s3pml.hardware.IoTDevice;
+
+import org.eclipse.papyrus.iotml.sensinact.*;
+
+import org.eclipse.papyrus.iotml.software.artefact.DigitalArtefact;
+import org.eclipse.papyrus.iotml.software.artefact.PropertyAccess;
+
+import org.eclipse.papyrus.iotml.software.resource.OnDeviceResource;
+
+/**
+ * <!-- 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 org.eclipse.papyrus.iotml.sensinact.SensinactPackage
+ * @generated
+ */
+public class SensinactSwitch<T> extends Switch<T> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static SensinactPackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public SensinactSwitch() {
+ if (modelPackage == null) {
+ modelPackage = SensinactPackage.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 SensinactPackage.TYPED_ELEMENT: {
+ TypedElement typedElement = (TypedElement)theEObject;
+ T result = caseTypedElement(typedElement);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case SensinactPackage.STUDIO: {
+ Studio studio = (Studio)theEObject;
+ T result = caseStudio(studio);
+ if (result == null) result = caseHumanUser(studio);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case SensinactPackage.GATEWAY: {
+ Gateway gateway = (Gateway)theEObject;
+ T result = caseGateway(gateway);
+ if (result == null) result = caseNetwork_Gateway(gateway);
+ if (result == null) result = caseHwComputingResource(gateway);
+ if (result == null) result = caseIoTDevice(gateway);
+ if (result == null) result = caseComputingResource(gateway);
+ if (result == null) result = caseConnectedDevice(gateway);
+ if (result == null) result = caseProcessingResource(gateway);
+ if (result == null) result = caseHwCommunicationResource(gateway);
+ if (result == null) result = caseHwResource(gateway);
+ if (result == null) result = caseGRM_Resource(gateway);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case SensinactPackage.DEVICE: {
+ Device device = (Device)theEObject;
+ T result = caseDevice(device);
+ if (result == null) result = caseConnectedDevice(device);
+ if (result == null) result = caseHwCommunicationResource(device);
+ if (result == null) result = caseHwResource(device);
+ if (result == null) result = caseGRM_Resource(device);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case SensinactPackage.SERVICE: {
+ Service service = (Service)theEObject;
+ T result = caseService(service);
+ if (result == null) result = caseArtefact_Service(service);
+ if (result == null) result = caseDigitalArtefact(service);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case SensinactPackage.RESOURCE: {
+ Resource resource = (Resource)theEObject;
+ T result = caseResource(resource);
+ if (result == null) result = caseOnDeviceResource(resource);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case SensinactPackage.ACCESS_METHOD: {
+ AccessMethod accessMethod = (AccessMethod)theEObject;
+ T result = caseAccessMethod(accessMethod);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case SensinactPackage.PARAMETER: {
+ Parameter parameter = (Parameter)theEObject;
+ T result = caseParameter(parameter);
+ if (result == null) result = caseTypedElement(parameter);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case SensinactPackage.ATTRIBUTE: {
+ Attribute attribute = (Attribute)theEObject;
+ T result = caseAttribute(attribute);
+ if (result == null) result = caseTypedElement(attribute);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case SensinactPackage.METADATA: {
+ Metadata metadata = (Metadata)theEObject;
+ T result = caseMetadata(metadata);
+ if (result == null) result = caseTypedElement(metadata);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case SensinactPackage.PROPERTY: {
+ Property property = (Property)theEObject;
+ T result = caseProperty(property);
+ if (result == null) result = caseResource(property);
+ if (result == null) result = caseOnDeviceResource(property);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case SensinactPackage.SENSOR_DATA: {
+ SensorData sensorData = (SensorData)theEObject;
+ T result = caseSensorData(sensorData);
+ if (result == null) result = caseResource(sensorData);
+ if (result == null) result = caseOnDeviceResource(sensorData);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case SensinactPackage.STATE_VARIABLE: {
+ StateVariable stateVariable = (StateVariable)theEObject;
+ T result = caseStateVariable(stateVariable);
+ if (result == null) result = caseResource(stateVariable);
+ if (result == null) result = caseOnDeviceResource(stateVariable);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case SensinactPackage.ACTION: {
+ Action action = (Action)theEObject;
+ T result = caseAction(action);
+ if (result == null) result = caseResource(action);
+ if (result == null) result = casePropertyAccess(action);
+ if (result == null) result = caseOnDeviceResource(action);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ default: return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Typed Element</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>Typed Element</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseTypedElement(TypedElement object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Studio</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>Studio</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseStudio(Studio object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Gateway</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>Gateway</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseGateway(Gateway object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Device</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>Device</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDevice(Device object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Service</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>Service</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseService(Service object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Resource</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>Resource</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseResource(Resource object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Access Method</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>Access Method</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseAccessMethod(AccessMethod object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Parameter</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>Parameter</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseParameter(Parameter object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Attribute</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>Attribute</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseAttribute(Attribute object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Metadata</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>Metadata</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseMetadata(Metadata object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Property</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>Property</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseProperty(Property object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Sensor Data</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 Data</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseSensorData(SensorData object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>State Variable</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>State Variable</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseStateVariable(StateVariable object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Action</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>Action</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseAction(Action object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Human User</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>Human User</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseHumanUser(HumanUser object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Resource</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>Resource</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseGRM_Resource(org.eclipse.papyrus.MARTE.MARTE_Foundations.GRM.Resource object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Hw Resource</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>Hw Resource</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseHwResource(HwResource object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Processing Resource</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>Processing Resource</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseProcessingResource(ProcessingResource object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Computing Resource</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>Computing Resource</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseComputingResource(ComputingResource object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Resource</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>Resource</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseHwComputingResource(HwComputingResource object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Resource</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>Resource</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseHwCommunicationResource(HwCommunicationResource object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Connected Device</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>Connected Device</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseConnectedDevice(ConnectedDevice object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Io TDevice</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>Io TDevice</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseIoTDevice(IoTDevice object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Gateway</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>Gateway</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseNetwork_Gateway(org.eclipse.papyrus.iotml.hardware.network.Gateway object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Digital Artefact</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>Digital Artefact</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDigitalArtefact(DigitalArtefact object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Service</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>Service</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseArtefact_Service(org.eclipse.papyrus.iotml.software.artefact.Service object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>On Device Resource</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>On Device Resource</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseOnDeviceResource(OnDeviceResource object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Property Access</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>Property Access</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T casePropertyAccess(PropertyAccess 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;
+ }
+
+} //SensinactSwitch
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/software/artefact/impl/ArtefactPackageImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/software/artefact/impl/ArtefactPackageImpl.java
index 87a4f19..6a6d0cc 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/software/artefact/impl/ArtefactPackageImpl.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/software/artefact/impl/ArtefactPackageImpl.java
@@ -40,9 +40,6 @@
import org.eclipse.papyrus.MARTE_Library.TimeLibrary.TimeLibraryPackage;
import org.eclipse.papyrus.MARTE_Library.TimeTypesLibrary.TimeTypesLibraryPackage;
-
-import org.eclipse.papyrus.iotml.IoTMLPackage;
-
import org.eclipse.papyrus.iotml.animate.AnimatePackage;
import org.eclipse.papyrus.iotml.animate.impl.AnimatePackageImpl;
@@ -66,10 +63,6 @@
import org.eclipse.papyrus.iotml.hybrid.HybridPackage;
import org.eclipse.papyrus.iotml.hybrid.impl.HybridPackageImpl;
-
-import org.eclipse.papyrus.iotml.impl.IoTMLPackageImpl;
-
-import org.eclipse.papyrus.iotml.s3pml.S3pmlPackage;
import org.eclipse.papyrus.iotml.s3pml.hardware.HardwarePackage;
import org.eclipse.papyrus.iotml.s3pml.hardware.impl.HardwarePackageImpl;
@@ -77,8 +70,6 @@
import org.eclipse.papyrus.iotml.s3pml.hardware.store.StorePackage;
import org.eclipse.papyrus.iotml.s3pml.hardware.store.impl.StorePackageImpl;
-
-import org.eclipse.papyrus.iotml.s3pml.impl.S3pmlPackageImpl;
import org.eclipse.papyrus.iotml.s3pml.protocol.ProtocolPackage;
import org.eclipse.papyrus.iotml.s3pml.protocol.impl.ProtocolPackageImpl;
@@ -87,6 +78,8 @@
import org.eclipse.papyrus.iotml.s3pml.software.impl.SoftwarePackageImpl;
+import org.eclipse.papyrus.iotml.sensinact.SensinactPackage;
+import org.eclipse.papyrus.iotml.sensinact.impl.SensinactPackageImpl;
import org.eclipse.papyrus.iotml.software.artefact.ArtefactFactory;
import org.eclipse.papyrus.iotml.software.artefact.ArtefactPackage;
import org.eclipse.papyrus.iotml.software.artefact.DigitalArtefact;
@@ -112,6 +105,7 @@
import org.eclipse.uml2.types.TypesPackage;
import org.eclipse.uml2.uml.UMLPackage;
+import org.eclipse.uml2.uml.profile.standard.StandardPackage;
/**
* <!-- begin-user-doc -->
@@ -197,7 +191,7 @@
/**
* 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 ArtefactPackage#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 -->
@@ -211,7 +205,8 @@
if (isInited) return (ArtefactPackage)EPackage.Registry.INSTANCE.getEPackage(ArtefactPackage.eNS_URI);
// Obtain or create and register package
- ArtefactPackageImpl theArtefactPackage = (ArtefactPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof ArtefactPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new ArtefactPackageImpl());
+ Object registeredArtefactPackage = EPackage.Registry.INSTANCE.get(eNS_URI);
+ ArtefactPackageImpl theArtefactPackage = registeredArtefactPackage instanceof ArtefactPackageImpl ? (ArtefactPackageImpl)registeredArtefactPackage : new ArtefactPackageImpl();
isInited = true;
@@ -229,69 +224,71 @@
sysmlPackage.eINSTANCE.eClass();
TypesPackage.eINSTANCE.eClass();
UMLPackage.eINSTANCE.eClass();
+ StandardPackage.eINSTANCE.eClass();
// Obtain or create and register interdependencies
- IoTMLPackageImpl theIoTMLPackage = (IoTMLPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(IoTMLPackage.eNS_URI) instanceof IoTMLPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(IoTMLPackage.eNS_URI) : IoTMLPackage.eINSTANCE);
- AnimatePackageImpl theAnimatePackage = (AnimatePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(AnimatePackage.eNS_URI) instanceof AnimatePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(AnimatePackage.eNS_URI) : AnimatePackage.eINSTANCE);
- org.eclipse.papyrus.iotml.hardware.impl.HardwarePackageImpl theHardwarePackage = (org.eclipse.papyrus.iotml.hardware.impl.HardwarePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.hardware.HardwarePackage.eNS_URI) instanceof org.eclipse.papyrus.iotml.hardware.impl.HardwarePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.hardware.HardwarePackage.eNS_URI) : org.eclipse.papyrus.iotml.hardware.HardwarePackage.eINSTANCE);
- ActuatorPackageImpl theActuatorPackage = (ActuatorPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ActuatorPackage.eNS_URI) instanceof ActuatorPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ActuatorPackage.eNS_URI) : ActuatorPackage.eINSTANCE);
- SensorPackageImpl theSensorPackage = (SensorPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(SensorPackage.eNS_URI) instanceof SensorPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(SensorPackage.eNS_URI) : SensorPackage.eINSTANCE);
- NetworkPackageImpl theNetworkPackage = (NetworkPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(NetworkPackage.eNS_URI) instanceof NetworkPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(NetworkPackage.eNS_URI) : NetworkPackage.eINSTANCE);
- CorePackageImpl theCorePackage = (CorePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(CorePackage.eNS_URI) instanceof CorePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(CorePackage.eNS_URI) : CorePackage.eINSTANCE);
- S3pmlPackageImpl theS3pmlPackage = (S3pmlPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(S3pmlPackage.eNS_URI) instanceof S3pmlPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(S3pmlPackage.eNS_URI) : S3pmlPackage.eINSTANCE);
- SoftwarePackageImpl theSoftwarePackage = (SoftwarePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(SoftwarePackage.eNS_URI) instanceof SoftwarePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(SoftwarePackage.eNS_URI) : SoftwarePackage.eINSTANCE);
- ProtocolPackageImpl theProtocolPackage = (ProtocolPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ProtocolPackage.eNS_URI) instanceof ProtocolPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ProtocolPackage.eNS_URI) : ProtocolPackage.eINSTANCE);
- HardwarePackageImpl theHardwarePackage_1 = (HardwarePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(HardwarePackage.eNS_URI) instanceof HardwarePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(HardwarePackage.eNS_URI) : HardwarePackage.eINSTANCE);
- StorePackageImpl theStorePackage = (StorePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(StorePackage.eNS_URI) instanceof StorePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(StorePackage.eNS_URI) : StorePackage.eINSTANCE);
- org.eclipse.papyrus.iotml.software.impl.SoftwarePackageImpl theSoftwarePackage_1 = (org.eclipse.papyrus.iotml.software.impl.SoftwarePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.software.SoftwarePackage.eNS_URI) instanceof org.eclipse.papyrus.iotml.software.impl.SoftwarePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.software.SoftwarePackage.eNS_URI) : org.eclipse.papyrus.iotml.software.SoftwarePackage.eINSTANCE);
- org.eclipse.papyrus.iotml.software.core.impl.CorePackageImpl theCorePackage_1 = (org.eclipse.papyrus.iotml.software.core.impl.CorePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.software.core.CorePackage.eNS_URI) instanceof org.eclipse.papyrus.iotml.software.core.impl.CorePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.software.core.CorePackage.eNS_URI) : org.eclipse.papyrus.iotml.software.core.CorePackage.eINSTANCE);
- StructurePackageImpl theStructurePackage = (StructurePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(StructurePackage.eNS_URI) instanceof StructurePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(StructurePackage.eNS_URI) : StructurePackage.eINSTANCE);
- ResourcePackageImpl theResourcePackage = (ResourcePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ResourcePackage.eNS_URI) instanceof ResourcePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ResourcePackage.eNS_URI) : ResourcePackage.eINSTANCE);
- HybridPackageImpl theHybridPackage = (HybridPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(HybridPackage.eNS_URI) instanceof HybridPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(HybridPackage.eNS_URI) : HybridPackage.eINSTANCE);
+ Object registeredPackage = EPackage.Registry.INSTANCE.getEPackage(AnimatePackage.eNS_URI);
+ AnimatePackageImpl theAnimatePackage = (AnimatePackageImpl)(registeredPackage instanceof AnimatePackageImpl ? registeredPackage : AnimatePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ActuatorPackage.eNS_URI);
+ ActuatorPackageImpl theActuatorPackage = (ActuatorPackageImpl)(registeredPackage instanceof ActuatorPackageImpl ? registeredPackage : ActuatorPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(SensorPackage.eNS_URI);
+ SensorPackageImpl theSensorPackage = (SensorPackageImpl)(registeredPackage instanceof SensorPackageImpl ? registeredPackage : SensorPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(NetworkPackage.eNS_URI);
+ NetworkPackageImpl theNetworkPackage = (NetworkPackageImpl)(registeredPackage instanceof NetworkPackageImpl ? registeredPackage : NetworkPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(CorePackage.eNS_URI);
+ CorePackageImpl theCorePackage = (CorePackageImpl)(registeredPackage instanceof CorePackageImpl ? registeredPackage : CorePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(SoftwarePackage.eNS_URI);
+ SoftwarePackageImpl theSoftwarePackage = (SoftwarePackageImpl)(registeredPackage instanceof SoftwarePackageImpl ? registeredPackage : SoftwarePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ProtocolPackage.eNS_URI);
+ ProtocolPackageImpl theProtocolPackage = (ProtocolPackageImpl)(registeredPackage instanceof ProtocolPackageImpl ? registeredPackage : ProtocolPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(HardwarePackage.eNS_URI);
+ HardwarePackageImpl theHardwarePackage = (HardwarePackageImpl)(registeredPackage instanceof HardwarePackageImpl ? registeredPackage : HardwarePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(StorePackage.eNS_URI);
+ StorePackageImpl theStorePackage = (StorePackageImpl)(registeredPackage instanceof StorePackageImpl ? registeredPackage : StorePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(StructurePackage.eNS_URI);
+ StructurePackageImpl theStructurePackage = (StructurePackageImpl)(registeredPackage instanceof StructurePackageImpl ? registeredPackage : StructurePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ResourcePackage.eNS_URI);
+ ResourcePackageImpl theResourcePackage = (ResourcePackageImpl)(registeredPackage instanceof ResourcePackageImpl ? registeredPackage : ResourcePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(HybridPackage.eNS_URI);
+ HybridPackageImpl theHybridPackage = (HybridPackageImpl)(registeredPackage instanceof HybridPackageImpl ? registeredPackage : HybridPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(SensinactPackage.eNS_URI);
+ SensinactPackageImpl theSensinactPackage = (SensinactPackageImpl)(registeredPackage instanceof SensinactPackageImpl ? registeredPackage : SensinactPackage.eINSTANCE);
// Create package meta-data objects
theArtefactPackage.createPackageContents();
- theIoTMLPackage.createPackageContents();
theAnimatePackage.createPackageContents();
- theHardwarePackage.createPackageContents();
theActuatorPackage.createPackageContents();
theSensorPackage.createPackageContents();
theNetworkPackage.createPackageContents();
theCorePackage.createPackageContents();
- theS3pmlPackage.createPackageContents();
theSoftwarePackage.createPackageContents();
theProtocolPackage.createPackageContents();
- theHardwarePackage_1.createPackageContents();
+ theHardwarePackage.createPackageContents();
theStorePackage.createPackageContents();
- theSoftwarePackage_1.createPackageContents();
- theCorePackage_1.createPackageContents();
theStructurePackage.createPackageContents();
theResourcePackage.createPackageContents();
theHybridPackage.createPackageContents();
+ theSensinactPackage.createPackageContents();
// Initialize created meta-data
theArtefactPackage.initializePackageContents();
- theIoTMLPackage.initializePackageContents();
theAnimatePackage.initializePackageContents();
- theHardwarePackage.initializePackageContents();
theActuatorPackage.initializePackageContents();
theSensorPackage.initializePackageContents();
theNetworkPackage.initializePackageContents();
theCorePackage.initializePackageContents();
- theS3pmlPackage.initializePackageContents();
theSoftwarePackage.initializePackageContents();
theProtocolPackage.initializePackageContents();
- theHardwarePackage_1.initializePackageContents();
+ theHardwarePackage.initializePackageContents();
theStorePackage.initializePackageContents();
- theSoftwarePackage_1.initializePackageContents();
- theCorePackage_1.initializePackageContents();
theStructurePackage.initializePackageContents();
theResourcePackage.initializePackageContents();
theHybridPackage.initializePackageContents();
+ theSensinactPackage.initializePackageContents();
// Register package validator
EValidator.Registry.INSTANCE.put
- (theArtefactPackage,
+ (theArtefactPackage,
new EValidator.Descriptor() {
public EValidator getEValidator() {
return ArtefactValidator.INSTANCE;
@@ -301,7 +298,6 @@
// Mark meta-data to indicate it can't be changed
theArtefactPackage.freeze();
-
// Update the registry and return the package
EPackage.Registry.INSTANCE.put(ArtefactPackage.eNS_URI, theArtefactPackage);
return theArtefactPackage;
@@ -634,6 +630,9 @@
g1.getETypeArguments().add(g2);
addEParameter(op, g1, "context", 0, 1, IS_UNIQUE, IS_ORDERED);
+ // Create resource
+ createResource(eNS_URI);
+
// Create annotations
// http://www.eclipse.org/uml2/2.0.0/UML
createUMLAnnotations();
@@ -646,12 +645,12 @@
* @generated
*/
protected void createUMLAnnotations() {
- String source = "http://www.eclipse.org/uml2/2.0.0/UML";
+ String source = "http://www.eclipse.org/uml2/2.0.0/UML";
addAnnotation
- (this,
- source,
+ (this,
+ source,
new String[] {
- "originalName", "Artefact"
+ "originalName", "Artefact"
});
}
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/software/core/structure/impl/MetaValueSpecificationImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/software/core/structure/impl/MetaValueSpecificationImpl.java
index edfeb72..5df1e98 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/software/core/structure/impl/MetaValueSpecificationImpl.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/software/core/structure/impl/MetaValueSpecificationImpl.java
@@ -268,7 +268,7 @@
public String toString() {
if (eIsProxy()) return super.toString();
- StringBuffer result = new StringBuffer(super.toString());
+ StringBuilder result = new StringBuilder(super.toString());
result.append(" (description: ");
result.append(description);
result.append(')');
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/software/core/structure/impl/StructurePackageImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/software/core/structure/impl/StructurePackageImpl.java
index 40574c9..f0a0f94 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/software/core/structure/impl/StructurePackageImpl.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/software/core/structure/impl/StructurePackageImpl.java
@@ -38,9 +38,6 @@
import org.eclipse.papyrus.MARTE_Library.TimeLibrary.TimeLibraryPackage;
import org.eclipse.papyrus.MARTE_Library.TimeTypesLibrary.TimeTypesLibraryPackage;
-
-import org.eclipse.papyrus.iotml.IoTMLPackage;
-
import org.eclipse.papyrus.iotml.animate.AnimatePackage;
import org.eclipse.papyrus.iotml.animate.impl.AnimatePackageImpl;
@@ -64,10 +61,6 @@
import org.eclipse.papyrus.iotml.hybrid.HybridPackage;
import org.eclipse.papyrus.iotml.hybrid.impl.HybridPackageImpl;
-
-import org.eclipse.papyrus.iotml.impl.IoTMLPackageImpl;
-
-import org.eclipse.papyrus.iotml.s3pml.S3pmlPackage;
import org.eclipse.papyrus.iotml.s3pml.hardware.HardwarePackage;
import org.eclipse.papyrus.iotml.s3pml.hardware.impl.HardwarePackageImpl;
@@ -75,8 +68,6 @@
import org.eclipse.papyrus.iotml.s3pml.hardware.store.StorePackage;
import org.eclipse.papyrus.iotml.s3pml.hardware.store.impl.StorePackageImpl;
-
-import org.eclipse.papyrus.iotml.s3pml.impl.S3pmlPackageImpl;
import org.eclipse.papyrus.iotml.s3pml.protocol.ProtocolPackage;
import org.eclipse.papyrus.iotml.s3pml.protocol.impl.ProtocolPackageImpl;
@@ -85,6 +76,8 @@
import org.eclipse.papyrus.iotml.s3pml.software.impl.SoftwarePackageImpl;
+import org.eclipse.papyrus.iotml.sensinact.SensinactPackage;
+import org.eclipse.papyrus.iotml.sensinact.impl.SensinactPackageImpl;
import org.eclipse.papyrus.iotml.software.artefact.ArtefactPackage;
import org.eclipse.papyrus.iotml.software.artefact.impl.ArtefactPackageImpl;
@@ -103,6 +96,7 @@
import org.eclipse.uml2.types.TypesPackage;
import org.eclipse.uml2.uml.UMLPackage;
+import org.eclipse.uml2.uml.profile.standard.StandardPackage;
/**
* <!-- begin-user-doc -->
@@ -153,7 +147,7 @@
/**
* 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 StructurePackage#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 -->
@@ -167,7 +161,8 @@
if (isInited) return (StructurePackage)EPackage.Registry.INSTANCE.getEPackage(StructurePackage.eNS_URI);
// Obtain or create and register package
- StructurePackageImpl theStructurePackage = (StructurePackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof StructurePackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new StructurePackageImpl());
+ Object registeredStructurePackage = EPackage.Registry.INSTANCE.get(eNS_URI);
+ StructurePackageImpl theStructurePackage = registeredStructurePackage instanceof StructurePackageImpl ? (StructurePackageImpl)registeredStructurePackage : new StructurePackageImpl();
isInited = true;
@@ -185,70 +180,71 @@
sysmlPackage.eINSTANCE.eClass();
TypesPackage.eINSTANCE.eClass();
UMLPackage.eINSTANCE.eClass();
+ StandardPackage.eINSTANCE.eClass();
// Obtain or create and register interdependencies
- IoTMLPackageImpl theIoTMLPackage = (IoTMLPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(IoTMLPackage.eNS_URI) instanceof IoTMLPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(IoTMLPackage.eNS_URI) : IoTMLPackage.eINSTANCE);
- AnimatePackageImpl theAnimatePackage = (AnimatePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(AnimatePackage.eNS_URI) instanceof AnimatePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(AnimatePackage.eNS_URI) : AnimatePackage.eINSTANCE);
- org.eclipse.papyrus.iotml.hardware.impl.HardwarePackageImpl theHardwarePackage = (org.eclipse.papyrus.iotml.hardware.impl.HardwarePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.hardware.HardwarePackage.eNS_URI) instanceof org.eclipse.papyrus.iotml.hardware.impl.HardwarePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.hardware.HardwarePackage.eNS_URI) : org.eclipse.papyrus.iotml.hardware.HardwarePackage.eINSTANCE);
- ActuatorPackageImpl theActuatorPackage = (ActuatorPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ActuatorPackage.eNS_URI) instanceof ActuatorPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ActuatorPackage.eNS_URI) : ActuatorPackage.eINSTANCE);
- SensorPackageImpl theSensorPackage = (SensorPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(SensorPackage.eNS_URI) instanceof SensorPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(SensorPackage.eNS_URI) : SensorPackage.eINSTANCE);
- NetworkPackageImpl theNetworkPackage = (NetworkPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(NetworkPackage.eNS_URI) instanceof NetworkPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(NetworkPackage.eNS_URI) : NetworkPackage.eINSTANCE);
- CorePackageImpl theCorePackage = (CorePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(CorePackage.eNS_URI) instanceof CorePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(CorePackage.eNS_URI) : CorePackage.eINSTANCE);
- S3pmlPackageImpl theS3pmlPackage = (S3pmlPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(S3pmlPackage.eNS_URI) instanceof S3pmlPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(S3pmlPackage.eNS_URI) : S3pmlPackage.eINSTANCE);
- SoftwarePackageImpl theSoftwarePackage = (SoftwarePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(SoftwarePackage.eNS_URI) instanceof SoftwarePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(SoftwarePackage.eNS_URI) : SoftwarePackage.eINSTANCE);
- ProtocolPackageImpl theProtocolPackage = (ProtocolPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ProtocolPackage.eNS_URI) instanceof ProtocolPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ProtocolPackage.eNS_URI) : ProtocolPackage.eINSTANCE);
- HardwarePackageImpl theHardwarePackage_1 = (HardwarePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(HardwarePackage.eNS_URI) instanceof HardwarePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(HardwarePackage.eNS_URI) : HardwarePackage.eINSTANCE);
- StorePackageImpl theStorePackage = (StorePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(StorePackage.eNS_URI) instanceof StorePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(StorePackage.eNS_URI) : StorePackage.eINSTANCE);
- org.eclipse.papyrus.iotml.software.impl.SoftwarePackageImpl theSoftwarePackage_1 = (org.eclipse.papyrus.iotml.software.impl.SoftwarePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.software.SoftwarePackage.eNS_URI) instanceof org.eclipse.papyrus.iotml.software.impl.SoftwarePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.software.SoftwarePackage.eNS_URI) : org.eclipse.papyrus.iotml.software.SoftwarePackage.eINSTANCE);
- org.eclipse.papyrus.iotml.software.core.impl.CorePackageImpl theCorePackage_1 = (org.eclipse.papyrus.iotml.software.core.impl.CorePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.software.core.CorePackage.eNS_URI) instanceof org.eclipse.papyrus.iotml.software.core.impl.CorePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.software.core.CorePackage.eNS_URI) : org.eclipse.papyrus.iotml.software.core.CorePackage.eINSTANCE);
- ResourcePackageImpl theResourcePackage = (ResourcePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ResourcePackage.eNS_URI) instanceof ResourcePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ResourcePackage.eNS_URI) : ResourcePackage.eINSTANCE);
- ArtefactPackageImpl theArtefactPackage = (ArtefactPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ArtefactPackage.eNS_URI) instanceof ArtefactPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ArtefactPackage.eNS_URI) : ArtefactPackage.eINSTANCE);
- HybridPackageImpl theHybridPackage = (HybridPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(HybridPackage.eNS_URI) instanceof HybridPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(HybridPackage.eNS_URI) : HybridPackage.eINSTANCE);
+ Object registeredPackage = EPackage.Registry.INSTANCE.getEPackage(AnimatePackage.eNS_URI);
+ AnimatePackageImpl theAnimatePackage = (AnimatePackageImpl)(registeredPackage instanceof AnimatePackageImpl ? registeredPackage : AnimatePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ActuatorPackage.eNS_URI);
+ ActuatorPackageImpl theActuatorPackage = (ActuatorPackageImpl)(registeredPackage instanceof ActuatorPackageImpl ? registeredPackage : ActuatorPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(SensorPackage.eNS_URI);
+ SensorPackageImpl theSensorPackage = (SensorPackageImpl)(registeredPackage instanceof SensorPackageImpl ? registeredPackage : SensorPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(NetworkPackage.eNS_URI);
+ NetworkPackageImpl theNetworkPackage = (NetworkPackageImpl)(registeredPackage instanceof NetworkPackageImpl ? registeredPackage : NetworkPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(CorePackage.eNS_URI);
+ CorePackageImpl theCorePackage = (CorePackageImpl)(registeredPackage instanceof CorePackageImpl ? registeredPackage : CorePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(SoftwarePackage.eNS_URI);
+ SoftwarePackageImpl theSoftwarePackage = (SoftwarePackageImpl)(registeredPackage instanceof SoftwarePackageImpl ? registeredPackage : SoftwarePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ProtocolPackage.eNS_URI);
+ ProtocolPackageImpl theProtocolPackage = (ProtocolPackageImpl)(registeredPackage instanceof ProtocolPackageImpl ? registeredPackage : ProtocolPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(HardwarePackage.eNS_URI);
+ HardwarePackageImpl theHardwarePackage = (HardwarePackageImpl)(registeredPackage instanceof HardwarePackageImpl ? registeredPackage : HardwarePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(StorePackage.eNS_URI);
+ StorePackageImpl theStorePackage = (StorePackageImpl)(registeredPackage instanceof StorePackageImpl ? registeredPackage : StorePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ResourcePackage.eNS_URI);
+ ResourcePackageImpl theResourcePackage = (ResourcePackageImpl)(registeredPackage instanceof ResourcePackageImpl ? registeredPackage : ResourcePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ArtefactPackage.eNS_URI);
+ ArtefactPackageImpl theArtefactPackage = (ArtefactPackageImpl)(registeredPackage instanceof ArtefactPackageImpl ? registeredPackage : ArtefactPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(HybridPackage.eNS_URI);
+ HybridPackageImpl theHybridPackage = (HybridPackageImpl)(registeredPackage instanceof HybridPackageImpl ? registeredPackage : HybridPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(SensinactPackage.eNS_URI);
+ SensinactPackageImpl theSensinactPackage = (SensinactPackageImpl)(registeredPackage instanceof SensinactPackageImpl ? registeredPackage : SensinactPackage.eINSTANCE);
// Create package meta-data objects
theStructurePackage.createPackageContents();
- theIoTMLPackage.createPackageContents();
theAnimatePackage.createPackageContents();
- theHardwarePackage.createPackageContents();
theActuatorPackage.createPackageContents();
theSensorPackage.createPackageContents();
theNetworkPackage.createPackageContents();
theCorePackage.createPackageContents();
- theS3pmlPackage.createPackageContents();
theSoftwarePackage.createPackageContents();
theProtocolPackage.createPackageContents();
- theHardwarePackage_1.createPackageContents();
+ theHardwarePackage.createPackageContents();
theStorePackage.createPackageContents();
- theSoftwarePackage_1.createPackageContents();
- theCorePackage_1.createPackageContents();
theResourcePackage.createPackageContents();
theArtefactPackage.createPackageContents();
theHybridPackage.createPackageContents();
+ theSensinactPackage.createPackageContents();
// Initialize created meta-data
theStructurePackage.initializePackageContents();
- theIoTMLPackage.initializePackageContents();
theAnimatePackage.initializePackageContents();
- theHardwarePackage.initializePackageContents();
theActuatorPackage.initializePackageContents();
theSensorPackage.initializePackageContents();
theNetworkPackage.initializePackageContents();
theCorePackage.initializePackageContents();
- theS3pmlPackage.initializePackageContents();
theSoftwarePackage.initializePackageContents();
theProtocolPackage.initializePackageContents();
- theHardwarePackage_1.initializePackageContents();
+ theHardwarePackage.initializePackageContents();
theStorePackage.initializePackageContents();
- theSoftwarePackage_1.initializePackageContents();
- theCorePackage_1.initializePackageContents();
theResourcePackage.initializePackageContents();
theArtefactPackage.initializePackageContents();
theHybridPackage.initializePackageContents();
+ theSensinactPackage.initializePackageContents();
// Mark meta-data to indicate it can't be changed
theStructurePackage.freeze();
-
// Update the registry and return the package
EPackage.Registry.INSTANCE.put(StructurePackage.eNS_URI, theStructurePackage);
return theStructurePackage;
@@ -398,6 +394,9 @@
initEReference(getDetailedValueSpecification_Base_ValueSpecification(), theUMLPackage.getValueSpecification(), null, "base_ValueSpecification", null, 1, 1, DetailedValueSpecification.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
initEReference(getDetailedValueSpecification_MetaSpecification(), this.getMetaValueSpecification(), null, "metaSpecification", null, 0, -1, DetailedValueSpecification.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ // Create resource
+ createResource(eNS_URI);
+
// Create annotations
// http://www.eclipse.org/uml2/2.0.0/UML
createUMLAnnotations();
@@ -410,12 +409,12 @@
* @generated
*/
protected void createUMLAnnotations() {
- String source = "http://www.eclipse.org/uml2/2.0.0/UML";
+ String source = "http://www.eclipse.org/uml2/2.0.0/UML";
addAnnotation
- (this,
- source,
+ (this,
+ source,
new String[] {
- "originalName", "Structure"
+ "originalName", "Structure"
});
}
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/software/resource/impl/ResourcePackageImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/software/resource/impl/ResourcePackageImpl.java
index d6872f3..0a429b7 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/software/resource/impl/ResourcePackageImpl.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/software/resource/impl/ResourcePackageImpl.java
@@ -39,9 +39,6 @@
import org.eclipse.papyrus.MARTE_Library.TimeLibrary.TimeLibraryPackage;
import org.eclipse.papyrus.MARTE_Library.TimeTypesLibrary.TimeTypesLibraryPackage;
-
-import org.eclipse.papyrus.iotml.IoTMLPackage;
-
import org.eclipse.papyrus.iotml.animate.AnimatePackage;
import org.eclipse.papyrus.iotml.animate.impl.AnimatePackageImpl;
@@ -65,10 +62,6 @@
import org.eclipse.papyrus.iotml.hybrid.HybridPackage;
import org.eclipse.papyrus.iotml.hybrid.impl.HybridPackageImpl;
-
-import org.eclipse.papyrus.iotml.impl.IoTMLPackageImpl;
-
-import org.eclipse.papyrus.iotml.s3pml.S3pmlPackage;
import org.eclipse.papyrus.iotml.s3pml.hardware.HardwarePackage;
import org.eclipse.papyrus.iotml.s3pml.hardware.impl.HardwarePackageImpl;
@@ -76,8 +69,6 @@
import org.eclipse.papyrus.iotml.s3pml.hardware.store.StorePackage;
import org.eclipse.papyrus.iotml.s3pml.hardware.store.impl.StorePackageImpl;
-
-import org.eclipse.papyrus.iotml.s3pml.impl.S3pmlPackageImpl;
import org.eclipse.papyrus.iotml.s3pml.protocol.ProtocolPackage;
import org.eclipse.papyrus.iotml.s3pml.protocol.impl.ProtocolPackageImpl;
@@ -86,6 +77,8 @@
import org.eclipse.papyrus.iotml.s3pml.software.impl.SoftwarePackageImpl;
+import org.eclipse.papyrus.iotml.sensinact.SensinactPackage;
+import org.eclipse.papyrus.iotml.sensinact.impl.SensinactPackageImpl;
import org.eclipse.papyrus.iotml.software.artefact.ArtefactPackage;
import org.eclipse.papyrus.iotml.software.artefact.impl.ArtefactPackageImpl;
@@ -104,6 +97,7 @@
import org.eclipse.uml2.types.TypesPackage;
import org.eclipse.uml2.uml.UMLPackage;
+import org.eclipse.uml2.uml.profile.standard.StandardPackage;
/**
* <!-- begin-user-doc -->
@@ -154,7 +148,7 @@
/**
* 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 ResourcePackage#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 -->
@@ -168,7 +162,8 @@
if (isInited) return (ResourcePackage)EPackage.Registry.INSTANCE.getEPackage(ResourcePackage.eNS_URI);
// Obtain or create and register package
- ResourcePackageImpl theResourcePackage = (ResourcePackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof ResourcePackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new ResourcePackageImpl());
+ Object registeredResourcePackage = EPackage.Registry.INSTANCE.get(eNS_URI);
+ ResourcePackageImpl theResourcePackage = registeredResourcePackage instanceof ResourcePackageImpl ? (ResourcePackageImpl)registeredResourcePackage : new ResourcePackageImpl();
isInited = true;
@@ -186,70 +181,71 @@
sysmlPackage.eINSTANCE.eClass();
TypesPackage.eINSTANCE.eClass();
UMLPackage.eINSTANCE.eClass();
+ StandardPackage.eINSTANCE.eClass();
// Obtain or create and register interdependencies
- IoTMLPackageImpl theIoTMLPackage = (IoTMLPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(IoTMLPackage.eNS_URI) instanceof IoTMLPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(IoTMLPackage.eNS_URI) : IoTMLPackage.eINSTANCE);
- AnimatePackageImpl theAnimatePackage = (AnimatePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(AnimatePackage.eNS_URI) instanceof AnimatePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(AnimatePackage.eNS_URI) : AnimatePackage.eINSTANCE);
- org.eclipse.papyrus.iotml.hardware.impl.HardwarePackageImpl theHardwarePackage = (org.eclipse.papyrus.iotml.hardware.impl.HardwarePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.hardware.HardwarePackage.eNS_URI) instanceof org.eclipse.papyrus.iotml.hardware.impl.HardwarePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.hardware.HardwarePackage.eNS_URI) : org.eclipse.papyrus.iotml.hardware.HardwarePackage.eINSTANCE);
- ActuatorPackageImpl theActuatorPackage = (ActuatorPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ActuatorPackage.eNS_URI) instanceof ActuatorPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ActuatorPackage.eNS_URI) : ActuatorPackage.eINSTANCE);
- SensorPackageImpl theSensorPackage = (SensorPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(SensorPackage.eNS_URI) instanceof SensorPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(SensorPackage.eNS_URI) : SensorPackage.eINSTANCE);
- NetworkPackageImpl theNetworkPackage = (NetworkPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(NetworkPackage.eNS_URI) instanceof NetworkPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(NetworkPackage.eNS_URI) : NetworkPackage.eINSTANCE);
- CorePackageImpl theCorePackage = (CorePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(CorePackage.eNS_URI) instanceof CorePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(CorePackage.eNS_URI) : CorePackage.eINSTANCE);
- S3pmlPackageImpl theS3pmlPackage = (S3pmlPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(S3pmlPackage.eNS_URI) instanceof S3pmlPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(S3pmlPackage.eNS_URI) : S3pmlPackage.eINSTANCE);
- SoftwarePackageImpl theSoftwarePackage = (SoftwarePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(SoftwarePackage.eNS_URI) instanceof SoftwarePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(SoftwarePackage.eNS_URI) : SoftwarePackage.eINSTANCE);
- ProtocolPackageImpl theProtocolPackage = (ProtocolPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ProtocolPackage.eNS_URI) instanceof ProtocolPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ProtocolPackage.eNS_URI) : ProtocolPackage.eINSTANCE);
- HardwarePackageImpl theHardwarePackage_1 = (HardwarePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(HardwarePackage.eNS_URI) instanceof HardwarePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(HardwarePackage.eNS_URI) : HardwarePackage.eINSTANCE);
- StorePackageImpl theStorePackage = (StorePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(StorePackage.eNS_URI) instanceof StorePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(StorePackage.eNS_URI) : StorePackage.eINSTANCE);
- org.eclipse.papyrus.iotml.software.impl.SoftwarePackageImpl theSoftwarePackage_1 = (org.eclipse.papyrus.iotml.software.impl.SoftwarePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.software.SoftwarePackage.eNS_URI) instanceof org.eclipse.papyrus.iotml.software.impl.SoftwarePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.software.SoftwarePackage.eNS_URI) : org.eclipse.papyrus.iotml.software.SoftwarePackage.eINSTANCE);
- org.eclipse.papyrus.iotml.software.core.impl.CorePackageImpl theCorePackage_1 = (org.eclipse.papyrus.iotml.software.core.impl.CorePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.software.core.CorePackage.eNS_URI) instanceof org.eclipse.papyrus.iotml.software.core.impl.CorePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(org.eclipse.papyrus.iotml.software.core.CorePackage.eNS_URI) : org.eclipse.papyrus.iotml.software.core.CorePackage.eINSTANCE);
- StructurePackageImpl theStructurePackage = (StructurePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(StructurePackage.eNS_URI) instanceof StructurePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(StructurePackage.eNS_URI) : StructurePackage.eINSTANCE);
- ArtefactPackageImpl theArtefactPackage = (ArtefactPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ArtefactPackage.eNS_URI) instanceof ArtefactPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ArtefactPackage.eNS_URI) : ArtefactPackage.eINSTANCE);
- HybridPackageImpl theHybridPackage = (HybridPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(HybridPackage.eNS_URI) instanceof HybridPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(HybridPackage.eNS_URI) : HybridPackage.eINSTANCE);
+ Object registeredPackage = EPackage.Registry.INSTANCE.getEPackage(AnimatePackage.eNS_URI);
+ AnimatePackageImpl theAnimatePackage = (AnimatePackageImpl)(registeredPackage instanceof AnimatePackageImpl ? registeredPackage : AnimatePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ActuatorPackage.eNS_URI);
+ ActuatorPackageImpl theActuatorPackage = (ActuatorPackageImpl)(registeredPackage instanceof ActuatorPackageImpl ? registeredPackage : ActuatorPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(SensorPackage.eNS_URI);
+ SensorPackageImpl theSensorPackage = (SensorPackageImpl)(registeredPackage instanceof SensorPackageImpl ? registeredPackage : SensorPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(NetworkPackage.eNS_URI);
+ NetworkPackageImpl theNetworkPackage = (NetworkPackageImpl)(registeredPackage instanceof NetworkPackageImpl ? registeredPackage : NetworkPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(CorePackage.eNS_URI);
+ CorePackageImpl theCorePackage = (CorePackageImpl)(registeredPackage instanceof CorePackageImpl ? registeredPackage : CorePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(SoftwarePackage.eNS_URI);
+ SoftwarePackageImpl theSoftwarePackage = (SoftwarePackageImpl)(registeredPackage instanceof SoftwarePackageImpl ? registeredPackage : SoftwarePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ProtocolPackage.eNS_URI);
+ ProtocolPackageImpl theProtocolPackage = (ProtocolPackageImpl)(registeredPackage instanceof ProtocolPackageImpl ? registeredPackage : ProtocolPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(HardwarePackage.eNS_URI);
+ HardwarePackageImpl theHardwarePackage = (HardwarePackageImpl)(registeredPackage instanceof HardwarePackageImpl ? registeredPackage : HardwarePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(StorePackage.eNS_URI);
+ StorePackageImpl theStorePackage = (StorePackageImpl)(registeredPackage instanceof StorePackageImpl ? registeredPackage : StorePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(StructurePackage.eNS_URI);
+ StructurePackageImpl theStructurePackage = (StructurePackageImpl)(registeredPackage instanceof StructurePackageImpl ? registeredPackage : StructurePackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ArtefactPackage.eNS_URI);
+ ArtefactPackageImpl theArtefactPackage = (ArtefactPackageImpl)(registeredPackage instanceof ArtefactPackageImpl ? registeredPackage : ArtefactPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(HybridPackage.eNS_URI);
+ HybridPackageImpl theHybridPackage = (HybridPackageImpl)(registeredPackage instanceof HybridPackageImpl ? registeredPackage : HybridPackage.eINSTANCE);
+ registeredPackage = EPackage.Registry.INSTANCE.getEPackage(SensinactPackage.eNS_URI);
+ SensinactPackageImpl theSensinactPackage = (SensinactPackageImpl)(registeredPackage instanceof SensinactPackageImpl ? registeredPackage : SensinactPackage.eINSTANCE);
// Create package meta-data objects
theResourcePackage.createPackageContents();
- theIoTMLPackage.createPackageContents();
theAnimatePackage.createPackageContents();
- theHardwarePackage.createPackageContents();
theActuatorPackage.createPackageContents();
theSensorPackage.createPackageContents();
theNetworkPackage.createPackageContents();
theCorePackage.createPackageContents();
- theS3pmlPackage.createPackageContents();
theSoftwarePackage.createPackageContents();
theProtocolPackage.createPackageContents();
- theHardwarePackage_1.createPackageContents();
+ theHardwarePackage.createPackageContents();
theStorePackage.createPackageContents();
- theSoftwarePackage_1.createPackageContents();
- theCorePackage_1.createPackageContents();
theStructurePackage.createPackageContents();
theArtefactPackage.createPackageContents();
theHybridPackage.createPackageContents();
+ theSensinactPackage.createPackageContents();
// Initialize created meta-data
theResourcePackage.initializePackageContents();
- theIoTMLPackage.initializePackageContents();
theAnimatePackage.initializePackageContents();
- theHardwarePackage.initializePackageContents();
theActuatorPackage.initializePackageContents();
theSensorPackage.initializePackageContents();
theNetworkPackage.initializePackageContents();
theCorePackage.initializePackageContents();
- theS3pmlPackage.initializePackageContents();
theSoftwarePackage.initializePackageContents();
theProtocolPackage.initializePackageContents();
- theHardwarePackage_1.initializePackageContents();
+ theHardwarePackage.initializePackageContents();
theStorePackage.initializePackageContents();
- theSoftwarePackage_1.initializePackageContents();
- theCorePackage_1.initializePackageContents();
theStructurePackage.initializePackageContents();
theArtefactPackage.initializePackageContents();
theHybridPackage.initializePackageContents();
+ theSensinactPackage.initializePackageContents();
// Mark meta-data to indicate it can't be changed
theResourcePackage.freeze();
-
// Update the registry and return the package
EPackage.Registry.INSTANCE.put(ResourcePackage.eNS_URI, theResourcePackage);
return theResourcePackage;
@@ -388,6 +384,9 @@
initEReference(getOnDeviceResource_DeviceBroker(), theSW_BrokeringPackage.getDeviceBroker(), null, "deviceBroker", null, 0, 1, OnDeviceResource.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
initEReference(getOnDeviceResource_MemoryBroker(), theSW_BrokeringPackage.getMemoryBroker(), null, "memoryBroker", null, 0, 1, OnDeviceResource.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ // Create resource
+ createResource(eNS_URI);
+
// Create annotations
// http://www.eclipse.org/uml2/2.0.0/UML
createUMLAnnotations();
@@ -400,12 +399,12 @@
* @generated
*/
protected void createUMLAnnotations() {
- String source = "http://www.eclipse.org/uml2/2.0.0/UML";
+ String source = "http://www.eclipse.org/uml2/2.0.0/UML";
addAnnotation
- (this,
- source,
+ (this,
+ source,
new String[] {
- "originalName", "Resource"
+ "originalName", "Resource"
});
}